arşiv

yazılar buna göre etiketlendi; ‘Windows Embedded CE 6.0’

Güncelleme – Ekim 2009

Çarşamba, 28 Eki 2009

Son yazımdan bu yana fena geçmiyor günlerim. İş tarafında tekrardan yeni bir projeye başlamış olmam, özel hayatta da Selin’in Münih’e gelmesi sayesinde kendisiyle sık sık görüşüyor olmamız günlerimin güzel geçmesinin en büyük sebepleri. Biraz ayrıntıya gireyim, aklıma gelenleri yazayım:

Dün gece bu yazıyı yazmaya başlamadan hemen önce barındırma hizmetimi yeniledim. 3 yıl önce satın aldığım paket yaklaşık 20 gün sonra bitiyordu. O yüzden artık daha da geç kalmadan ya başka bir şirkete geçmeli, ya da hostmonster‘dan aldığım hizmeti yenilemeliydim. Biraz düşündüm, 3 yıl boyunca aldığım hizmetin şu ana kadar yüzümü kara çıkarmadığını fark ettim. Daha önceki bir yazımda da yazmıştım, barındırma şirketlerinden epeyce çektim zamanında. O nedenle aslında bu hizmeti veren en iyi 10 şirket arasında gösterilen şirketlerden aynı hizmeti şu an ödediğim rakamın yarısına verenler olsa da gelecekteki olası baş ağrılarımı düşünüp var olan paketimi uzatmaya karar verdim.

Selin ile sık sık görüşüyoruz. Daha pek alışamadım zaten burada olmasına. E kolay değil tabii uzun zaman Skype arkadaşlığı yaptığın insanın bir kol boyu mesafede olması 🙂 . Halen zaman zaman acayip geliyor içinde bulunduğumuz durum. Bana geldiği zamanlarda ev hanımlığı rolünü doğrudan üstlendiği için kendi temizlemediğim evde, kendi yıkayıp ütülemediğim kıyafetleri giyip, kendi yapmadığım yemekleri yiyor olmam şaşırtıyor arada beni.

mac-os-x-snow-leopardKullandığım Mac Mini’deki işletim sistemini Snow Leopard ile değiştirdim. Şimdilik çok fazla gözle görülür bir fark bulamadım açıkçası. Birkaç yeni arka plan resmi gelmiş, bir de alttaki ikonların sağ tık menülerinde biraz değişiklik olmuş. Ama zaten işletim sisteminin yeniliklerini daha önce okuyup arayüzde çok da bir değişiklik olmayacağını fark ettiğim için bu durum sürpriz olmadı. Tek sinir bozucu yenilik ise uzaktan kumandanın çalışmasında değişikliğe gidilmiş olması. Artık tuşlar o anda hangi programın aktif olarak çalıştığından bağımsız bir şekilde varsayılan işlerini yapıyorlar. Yani örneğin VLC’de bir film seyrederken filmi durdurmak istediğimde film duruyor ama iTunes da arkada yeni şarkıyı çalıyor (ya da zaten çalıyorsa duruyor). Ses açıp kapatırken VLC’nin ve sistemin kendi sesi birlikte açılıp kapanıyor. Gerçi söylediklerimden ilkini iTunes’ı önceden açıp iTunes Store’a girerek çözdüm ama ikincisinin herhangi bir çözümü yok galiba şimdilik.

Yeni bir projeye başladım. Birkaç aydır üzerinde çalıştığımız Windows Embedded CE driver projesi önem sıralamasında geriye düştü. O nedenle şu an yoluna tek geliştirici ile devam ediyor. Ben de Profinet üzerine başka bir projede çalışmaya başladım. Tamamen başka bir takımda, hatta farklı bir ofiste çalışıyorum artık. Gerçek zamanlı iletişimdeki paketlerin planlanması üzerinde çalışmaya başladım. Oluşturulan bir otomasyon projesinin derlenmesi ve benzeri zamanlarda cihazlara gönderilecek olan paket planlama verisinin oluşturulması, planlama algoritmalarının düzgün çalışması gibi konularda çalışıyorum. Burada bir yandan var olan kodun bakımı, diğer yandan da Profinet IRT’deki iyileştirmeleri yazılım tarafında teorikten pratiğe geçirme görevlerim mevcut. Konu epeyce ilgi çekici, ben de yavaştan ısınmaya başladım. Ayrıca başka bir takımda çalışmak, oradaki insanların da tecrübelerinden faydalanmak ve işin her şekilde kendine daha fazla katkıda bulunması demek. Diğer bir yandan projenin tamamen Siemens tarafından yürütülüyor olması Siemens’in yazılım geliştirme sürecini daha yakından tanımamı sağlıyor. Bu nedenlerden dolayı şu an bu projede çalıştığım için mutluyum. Umarım iyi bir şekilde devamı gelir.

Şu yazımda Windows Embedded CE 6.0 ile ilgili tecrübelerimi paylaşacağımı yazmıştım. Biliyorum, o günden bu yana epeyce vakit geçti ama açıkçası bu sefer üşengeçliğimden değil, projenin durumunun ne olacağını görmek için beklemiştim. Çok yakında birkaç farklı yazı olarak postalayacağım. Yazılar İngilizce olacağı için ana sayfaya koymayı düşünmüyorum ancak ana sayfada başka bir girdide onların linkini bulabileceksiniz.

Resistance 2‘ye sardım birkaç gündResistance_2ür. Normal seviyede oyunu 2 – 3 günde bitirdikten sonra çoklu oyuncu olayına giriştim. Birkaç kişinin birleşerek birlikte yapay zekaya karşı görev yapması (Collaborative mode) iyi olmuş, zira saatlerini oyun başında geçiren psikopatlarla karşı karşıya oynamak (Competitive mode) çok zevkli olmayacaktı. Gördüğüm kadarıyla benzer deneyimdeki oyuncuları birlikte ya da karşı karşıya oynatma özelliğinin olmaması bir eksi olsa da Collaborative Mode’da bu çok sıkıntı olmuyor.

Bilgisayar, Ivır zıvır, Site , , , , , , , ,

Yeni Projem

Pazar, 05 Tem 2009

S7-PCT’nin geliştirilmesini Türkiye’ye aktardığımızdan beri biz de takım olarak yeni projelere giriştik. Evosoft’un planı bizi başından beri PROFINET alanında yetiştirip Siemens’in bu taraftan gelecek projelerini üstlenebilmekti. Yeni projelerimiz bu plan doğrultusunda PROFINET üzerine oldu. Takım arkadaşlarımızdan biri doğrudan PROFINET geliştirme ofisinde çalışıyor. Diğer arkadaşlarla birlikte ben de başka bir proje için ofisimizden çalışmaya devam ediyoruz.

Proje aslında ilk aşamasında oldukça belirsizdi. Bir PROFINET sürücüsünü bir platformdan başka bir platforma aktaracaktık. Önceleri hedef platform Vista ya da Win7 olarak konuşuldu ama daha sonradan Windows Embedded CE 6.0 olmasına karar verildi. Şimdilik ilk adımları atıyoruz. Benim başından beridir görevim çalışma ortamını ayarlamak. Bu nedenle birkaç aydır kurulumlar ve ayarlarla boğuşuyorum diyebilirim. İlk önce Windows Vista ve 7’nin “checked” versiyonlarını indirip kurdum. Bu checked versiyon denilen şey Microsoft terminolojisinde hata ayıklama (debug) sembollerine sahip olan versiyon anlamında kullanılıyor. Bunları kurduktan sonra doğrudan işletim sistemi çekirdeğinden gelen mesajları görme imkanına sahip oluyorsunuz, ki bu da sürücü geliştirmesinde faydalı olabiliyor(muş). Debug penceresinden örnek bir görüntüyü aşağıya yapıştırdım (Windows 7 RC):

Win7Debug-1

Denemelerimin tamamını Vmware altında yaptığım için tahminen normalde çıkmayan bazı hatalarla karşılaştığım zamanlar da oldu. Örneğin Vista, normal çalıştırıldığında daimi mavi ekran veriyordu. Kernel debug modunda çalıştırıldığında sebebi anlaşılıyordu: Hata yakalanmış (debug assertion), devam et demeden ileri gitmiyor sistem. Aşağıda bunun da ekran görüntüsü var.

VistaDebug-2

Neyse, hedef sistem olarak Windows Embedded CE 6.0 (WinCE diyeceğim bundan sonra) seçilince yukarıda yaptıklarım biraz anlamlarını yitirdiler tabi. Bu sefer WinCE’yi Vmware üzerine kurmak ile uğraşmaya başladım.

Bir süre sonra farkına vardım ki WinCE konusunda internetteki bilgi yok denecek kadar az. Bir dizi Çinli internet sitesi çıkıyor google aramalarında devamlı. Durum o kadar vahim ki bu Çince siteleri Google translate ile okumak durumunda kaldım. Bu arada burada yeri gelmişken bir parantez açmak istiyorum. WinCE’nin hedef işletim sistemi olarak seçilmesinde bizim etkimiz sıfır. Hatta bana kalsa bu işe başlamazdım. Gerçek zamanlı ve/veya gömülü sistemler için çalışan daha özgür ve daha iyi birçok alternatif varken WinCE’yi bir platform olarak seçmek çok akıl karı bir iş değil bence. Bir de normalde Microsoft’un en büyük avantajlarından biri olan yaygınlık ve destek bu sistem için mevcut değilken yapılan iş biraz saçma kaçıyor. Ama tabii ki her zaman için geliştiriciler ile pazarlamacılar aynı fikirde olmayabiliyor. Para da pazarlamacıların elinde olduğu için bu tarz seçimler yapılabiliyor.

Neyse, bir süre uğraştırdı ama şu anda Vmware altında çalışan bir WinCE’miz mevcut. Yalnız bu sistem ethernetten debug edilme ihtiyacını karşılayamadığı için bir başka alternatif olan Virtual PC’ye yöneldim. Birkaç gün sonra ethernet debug desteği ile birlikte o da hazır hale geldi.

wince_vmware

Özellikle bu sanallaştırma yazılımları altında WinCE çalıştırma konusunda edindiğim bilginin diğer birçok geliştiriciye de yardımcı olabileceğini düşünüyorum. Bu işleri yaparken bir yandan da unutmamak için yaptıklarımı doküman haline getirdim. Proje liderimden de izin çıktı, onları da şöyle güzel bir makale haline getirip bir yerlerde yayınlayacağım. Normalde buraya İngilizce yazı yazmıyorum ama bu seferlik bir istisna yapabilirim.

Bu şekilde başlamış olduk projeye. Çalışma ortamı birkaç küçük testin ardından geliştirmeye hazır hale gelecek. Umarım sonu da başlangıcı gibi iyi olur.

Bilgisayar , , , , , ,