[]
Timer olayı?
bu timer bazlı çalışan kodlarda, timer işini aşşağıdakilerden hangisi hallediyor?
a) donanım
b) işletim sistemi
c) programlama dili
d) kendimiz
e) başkası
yani herhalde çalıştırılan her timer global bir yere register oluyordur da, oradan vakti gelince notify ediliyorlardır diye düşünüyorum ama tam bilemedim.
a) donanım
b) işletim sistemi
c) programlama dili
d) kendimiz
e) başkası
yani herhalde çalıştırılan her timer global bir yere register oluyordur da, oradan vakti gelince notify ediliyorlardır diye düşünüyorum ama tam bilemedim.
Programlama dilinin standart librarylerinde timer fonksiyonu olabilir. Bu da herhalde isletim sisteminin zamanla ilgili sundugu fonksiyonlari cagiriyordur. Isletim sistemi de donanimi kullaniyor tabi ki. Bu duruma nasil baktigina gore kimin hallettigi degisir.
- wpi (08.01.08 09:04:08)
Web sitelerinde -genellikle- sayfanın en başında timer fonksiyonu değişkene atanıp başlatılıyor, sayfa sonunda da(yani sayfa yüklendiğinde) değer alınıyor.
Yani cevap,
c) Programlama dili
Yani cevap,
c) Programlama dili
- wehrmacht (08.01.08 09:24:25)
aslında tam bilmek istediğim, bir programlama dilinde timer fonksiyonu çağırdığımızda programlama dili bunu kendi rutinleriyle mi hallediyor,yani yazılan her program kazma gibi sayıyor, yoksa programlama dilleri OS nin sağladığı bir arayüzle mi bunu programa sunuyorlar?
- jkulakwalker (08.01.08 09:24:32)
mikrocontroller'lardan örnek vereyim. sistem hızını siz belirlersiniz, kristal denen eleman sayesinde işlemcinin 1 komutu ne kadar sürede yapacağını siz belirlersiniz.
kullandığım dandirik 8 bitlik microcontrollerlarda 1 cycle süren bir komut 1 mikro saniyede tamamlanıyor. yani 1sn lik gecikme yapmak için toplamda 1.000.000 luk bir döngü kurmanız gerektiğini kendiniz hesaplıyorsunuz. tabi bu assembly için böyle
üst seviye programlama dillerinde ise bildiğim kadarıyla sistem clock frekansını timer fonksiyonu kendisi buluyor ve bu frekansa uygun olarak gerekli gecikmeleri hesaplamak onun işi.
özetle timer fonksiyonu donanımdan sistem clock frekansını bir kere alıyor ve gerisini kendisi bu frekansa göre hesaplıyor diye tahmin ediyorum. yani programlama dili donanım bilgisini kullanarak kendisi hesaplıyor.
kullandığım dandirik 8 bitlik microcontrollerlarda 1 cycle süren bir komut 1 mikro saniyede tamamlanıyor. yani 1sn lik gecikme yapmak için toplamda 1.000.000 luk bir döngü kurmanız gerektiğini kendiniz hesaplıyorsunuz. tabi bu assembly için böyle
üst seviye programlama dillerinde ise bildiğim kadarıyla sistem clock frekansını timer fonksiyonu kendisi buluyor ve bu frekansa uygun olarak gerekli gecikmeleri hesaplamak onun işi.
özetle timer fonksiyonu donanımdan sistem clock frekansını bir kere alıyor ve gerisini kendisi bu frekansa göre hesaplıyor diye tahmin ediyorum. yani programlama dili donanım bilgisini kullanarak kendisi hesaplıyor.
- kimlanbu (08.01.08 14:10:17)
a ve b seklinde oldugu kanisindayim. Windows'ta timer expire oldugunda WM_TIMER diye bir mesaj gelir sistemden cunku. Muhtemelen Windows API bazinda registerli timerleri tutuyor expire olanlarada mesaj yolluyodur. d) Kendinizde ayri bir thread'de loop cevirip ayni isi yapabiliriz aslinda. Ne kadar duzgun calismasini gerektiginide sleep kodu ile halledebiliriz threadi her iterasyonda bekletip.
Ha hayattimda cok delikanli insanlar gordum 3 saniye kod surda beklesin diye loop ceviren. Hatta flash programcilarinin cogunun boyle yaptigi kanisindayim zira o reklam bannerlarinin cogunda benim bilgisayar tikaniyor.
Ha hayattimda cok delikanli insanlar gordum 3 saniye kod surda beklesin diye loop ceviren. Hatta flash programcilarinin cogunun boyle yaptigi kanisindayim zira o reklam bannerlarinin cogunda benim bilgisayar tikaniyor.
- badseed (08.01.08 16:13:59)
1