Jump to page: 1 2
Thread overview
D ile bağlı USB'leri nasıl kontrol edebilirim?
Jun 20, 2014
agora
Jun 20, 2014
agora
Jun 20, 2014
agora
Jun 21, 2014
agora
Jun 21, 2014
agora
Jun 22, 2014
agora
Jun 22, 2014
agora
Jun 22, 2014
agora
June 20, 2014

Selam. Sınavlar bitti ben de çok sık konu açmaya başladım baya sıkıcı olduğumu hissetmeye başladım :/ Neyse sadede geleyim :D

Linux ve Windows her 2 sistemde de bağlı USB'leri D ile nasıl kontrol edebilirim?

Sanırım linux için /dev/usb/ içerisine bakmak gerekiyordu.

Ama windowsta bunun için tam bir muamma. Bilemiyorum. Biraz baktım google'dan ama tam anlayamadım.

Bağlı USB'nin boyutunu, içerisindeki dosyaları almam gerekiyor. Aslında sorun da burada başladı. Burada hangi API'ler kullanilir ve D'nin bunun icin kendine has API'ları var mı?

Arama yaptım şu başlığa ulaştım

http://forum.dlang.org/thread/bt3qtk$2dod$1@digitaldaemon.com

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 20, 2014

Takili USB aygitlari ve sonradan takilan USB aygitlari.

Flash Bellek dedigimiz aygitlar sonradan takiliyorlar ve bunu es zamanli olarak gormek mumkun mu? Dersaneye baktim orada es zamanli programlama var. Oraya daha gelmedim ama tam zamanli olarak flash bellegi algilatabilir miyim?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 20, 2014

Hocam denemedim ama bir sey sorucam tabletteyim su an kusura bakmayin :/

simdiki zamani alip 2 saniye sonrasini da alsam her 2 saniyede bir surekli ornegin logicaldisk ile gelen diskleri kontrol ettirsem?

bu sistemi yorar mi?

while(saniye<3)
{
if(saniye <= 3) { diskleriKontrolEt() }
}

gibi bir mantik calisir mi sizce?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 20, 2014

USB derken bütün USB aygıtlarını mı düşünüyorsun yoksa yalnızca diskleri mi? Eğer yalnızca diskse usb disk, windows, win32 gibi arama sözcükleri kullanılabilir. libusb diye bir kütüphane var ama ben hiç kullanmadım.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 20, 2014

Ne yazık ki bana çok yabancı konular. :-/

Ama eş zamanlı programlama dediğimiz konu ile doğrudan ilgili değil çünkü eş zamanlı programlamayı concurrency'nin karşıtı olarak seçmiştik.

Tabii, std.concurrency'yi kullanarak bir iş parçacığı başlatabilirsin ve o işçi belirli aralıklarla USB aygıtlarını gözden geçirebilir ama bu konu doğrudan ilgili değil.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

Yani bu şekilde de bir timer görevi görebiliriz sanirim hocam?

Bu yol yani bahsettiğiniz sanırım yük olmaktan çıkar?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

Hocam o zaman while bir iş parçacığı tetikliyor? Bir bakıma ihtiyaç duyulduğunda iş parçacığının kendisi oluyor sanırım?

Thread.sleep içinde bulunduğu iş parçacığını 3 saniyeliğine sonlandırıyor?

Peki Thread.sleep hala while'ın içindeyse o zaman iş parçacığı hala while için çalışıyor mu demeliyiz? Bu durumda çünkü while'dan henüz çıkılmamış?

Biraz o kafamı karıştırdı da :) Teşekkür ederim.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

O while(saniye < 3) denetimi sürekli işleyeceği için çekirdeklerden birisi %100 çalışır. Arada bir süre bekletmen gerekir. (Örneğin, Thread.sleep ile).

import std.stdio;
import core.thread;

void diskleriKontrolEt()
{
   writeln("Kontrol ediyorum");
}

void main()
{
   while (true) {
       diskleriKontrolEt();
       Thread.sleep(3.seconds);
   }
}

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

Evet, yük olmaktan çıkar çünkü Thread.sleep, bu iş parçacığının bir süre işi olmadığını bildirir. İşletim sistemi de başka bir iş parçacığını bizim çekirdekte işletmeye geçer.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

Hayır, while iş parçacığı tetiklemiyor. O while, şu anda işlemekte olan iş parçacığının işi olarak devam ediyor. Program başladığında main()'i işletmekte olan tek iş parçacığı vardır. Dolayısıyla, Thread.sleep bizim programı bekletmiş oluyor.

Eğer bir iş parçacığı bir yandan iş yaparken başka birisinin arada bir diskleriKontrolEt() yapmasını istiyorsan en az iki iş parçacığının olması gerekir. Bakınız: :)

http://ddili.org/ders/d/es_zamanli.html

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

« First   ‹ Prev
1 2