22 Nisan 2013 Pazartesi

Matematiksel Hesaplamalarda Dikkat Edilecek Noktalar

Overflow
Java
Java derleyicileri matematiksel taşmalarda exception atmazlar. Örneğin Why no overflow when byte exceeds size? sorusunda değişken değeri taşma yapacak şekilde artırılırsa sayının eksi değer aldığı ancak exception atılmadığı görülebilir.
Overflow'dan Kaçınarak Ortalamayı Bulma
Buradaki örnekte taşma riski olmadan iki sayının ortalamasının bulunması gösteriliyor. Bu yöntemim Samsung tarafından patentli olmasına dikkat.
Bir başka yöntem ise

Sıfıra Bölme
Java
Java ilginç bir şekilde sıfıra bölme hatasını sadece integer veri tipi için gönderiyor. float veri tipi için göndermiyor. Örnek

DGy201 , NTP ve sistem mühendisliği

NTP
NTP bilgisayarların saatlerini eşzamanlamak için kullanılır.

DGy 201
RGB Spectrum firmasının DGy 201 Dijital Video Kaydedici (DVK) cihazı RS-232 ve Ethernet bağlantısı kabiliyetine sahip bir cihaz.

 Ethernet bağlantısının kullanıldığı durumda cihaz "Network Time Protocol" (NTP) protokolü ile sistem saatini harici bir zaman sunucusu ile düzeltme kabiliyetine de sahip. Bu kullanım şeklinde DVK ve onu kontrol eden bilgisayar aynı zaman sunucusu ile senkronize oldukları için alınan video kayıtları ile cihazı kontrol eden bilgisayar arasında zaman uyumsuzluğu olmuyor.

Ancak sadece DVK'ye sadece RS-232 bağlantısı kullanılırsa zaman için cihazın saati ile onu kontrol eden bilgisayar arasında saat farkı oluşabiliyor. Bu durumda DVK'nın aldığı kayıtlar tam olarak gerçek saati yansıtmayabiliyor.

Sistem mühendisliği açısından bakılınca bir ağ üzerinde NTP kabiliyetine sahip ne kadar cihaz varsa, o cihaz RS-232 bağlantısı sağlasa bile sırf NTP yeteneği kaybolmasın diye ethernet ile bağlanmak en iyi seçenek olarak karşımıza çıkıyor.

3 Nisan 2013 Çarşamba

Performance Counter

Uygulamanın performansını ölçmek için kullanılan yöntemlerler ilgili notlarım aşağıda.

C#
CPU kullanımını ölçmek için PerformanceCounter kullanılmış.