fizban Mesaj tarihi: Ocak 16, 2010 Paylaş Mesaj tarihi: Ocak 16, 2010 neyi yanlış yapıyorum bilemiyorum, ama teoride herşeyi doğru yapıyorum diyerek giriş yapiyim bi. bir ders projesi için kernel'i editlemek gerekli, ben de bunu yapıyorum, fakat ilk adım olarak eklediğim satırları falan test etmek için bir printk koyiyim sağa sola ki anliyim neler olduğunu diyorum. hatta istediğim fonksiyonun return komutundan önce şöyle diyorum printk("selam dayi nabern"); oldu diyor, sonracığıma kernel'i compile ediyorum, warning/error almıyorum; install ediyorum, boot edeyim derken hooop loadscreende gözgöze kalıyoruz öyle. sonra ctrl + alt + del ve tekrar aynı adımlar falan filan. neyi atlıyor olabilirim ? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
sharky Mesaj tarihi: Ocak 17, 2010 Paylaş Mesaj tarihi: Ocak 17, 2010 oo yazdim diorsun yani scheduler i ? ubuntu hic sevmem, geleneksel yontemle kernel derleyemiyorsun galiba. Emin degilim. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
fizban Mesaj tarihi: Ocak 17, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 17, 2010 yazdim sanirim, bitirince paylasirim hatta da, compile etmeden deneyemiorum =P compile da nerede takildigini falan da buldum, bakalim baska makinede denicem simdi. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
sharky Mesaj tarihi: Ocak 17, 2010 Paylaş Mesaj tarihi: Ocak 17, 2010 Konunun cok gereksiz, fakat pratigini super gelistirecegini dusunuyorum :) Paylas tabii, en azindan bakar yontem ogreniriz. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Berk Mesaj tarihi: Ocak 17, 2010 Paylaş Mesaj tarihi: Ocak 17, 2010 selam fizban, Şimdi linux kerneliyle elleşmek baya sıkıntılı bir konu; ben bitirme projemde ethernet layer network driver yazmıştım. Kernel hacking diyince kernel'e module yazıyorsun olarak algılıyorum. Ubuntunun diğer distrolara göre bir farkı yok. compile edip insmod yapınca güzel güzel oluyor. Tam detaylarını hatırlamıyorum (projenin üzerinden çok zaman geçti) ama ben yazarken linkini aşağıda verdiğim kitaptan çok yararlanmıştım. Linux Device Drivers 2nd ed. Bunun dışında printk aslında sakat bir fonksiyon çünkü kernel leveldan user levela geçiyor basmak için, hem de baya performans bottleneck'i. Bunun yerine linuxda /proc/ filesystem diye birşey var. Buraya yeni bir file yaratınca ekrana bastırmak yerine buraya yönlendiriyorsun outputlarını, driver çalışırken on the fly bu file'a yazıyor. (aslında tam file da değil, detaylarını okuyunca görürsün). Yolladığım linkte /proc/ nasıl kullanılır var. Umarım bir başlangıç noktası olmuştur. Not: Bu arada kernelle elleşeceksen ve benim gibi ilk seferinse native ubuntu kurmak yerine VM üzerine kurmanı öneririm. Keza modülde ufak bir hata yaptığında program terminate etmek yerine tüm sistem aşağı iniyor. Ubuntu restart zamanı saç baş yolduruyor(workspace de tekrar fileları açmak vs cabası). Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Ocak 17, 2010 Paylaş Mesaj tarihi: Ocak 17, 2010 omg Berk sighting. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Berk Mesaj tarihi: Ocak 17, 2010 Paylaş Mesaj tarihi: Ocak 17, 2010 düşün paper yazmaktan o derece sıkıldım pati okudum aqualia. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
fizban Mesaj tarihi: Ocak 18, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 18, 2010 selam berk, uzun zaman olmustur senin psotunu gormeyeli ehu. proje "ubuntuda olacak" demese ugrasmam bile. hatta yaptigim seylerin bir kismi o kadar sacma ve scriptle yapsam o kadar kolay olacak tarzda ki, akliniz durur. ama ugrasiyorum simdilik, sikintimin sebebi de USB HID core driver blabla diyip aglamasiydi eski surum kernelin cok saygideger bilgisayarim karsisinda. baska bilgisayara gectim cozdum o meseleyi =P Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
fizban Mesaj tarihi: Ocak 19, 2010 Konuyu açan Paylaş Mesaj tarihi: Ocak 19, 2010 selamlar, acil bir son dakiak sorusu timer yazmam lazim. normalde timerlar anladigim kadariyla su sekilde calisiyor; x'ten geriye say, 0 olunca sunu yap. ama ben boyle calissin istemiyorum, backgroundda surekli dongu halinde calissin istiyorum. fakat bu userlevel olmamali. istedigim sey aslinda tam olarak soyle: kernel'de bir fonksiyonum var, bu fonksiyon birseyler yapip birsey donduruyor.. bu fonksiyon timer'i baslatacak, ama timer nonblocking oldugundan isine devam edecek.. timer surekli calisacak da calisacak.. fikir var midir ? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Ocak 19, 2010 Paylaş Mesaj tarihi: Ocak 19, 2010 abi sen neler yapiyosun ya, kimyaci degil misin sen? ben boyle islerle ugrasmadim. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
di Mesaj tarihi: Ocak 19, 2010 Paylaş Mesaj tarihi: Ocak 19, 2010 sen hic biseyle ugrasmiyosun ki sukru =) bu tip konularin hepsinde saskinlik icerisinde izliyorum seni =P Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
sharky Mesaj tarihi: Ocak 19, 2010 Paylaş Mesaj tarihi: Ocak 19, 2010 Sen galiba io bandwith limitation u hesaplamak icin o timer 'i istiyorsun. If so; timer yazacagina, direk hw timer i kullansan ? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
ucunbiri Mesaj tarihi: Ocak 20, 2010 Paylaş Mesaj tarihi: Ocak 20, 2010 fizban said: selamlar, acil bir son dakiak sorusu timer yazmam lazim. normalde timerlar anladigim kadariyla su sekilde calisiyor; x'ten geriye say, 0 olunca sunu yap. ama ben boyle calissin istemiyorum, backgroundda surekli dongu halinde calissin istiyorum. fakat bu userlevel olmamali. istedigim sey aslinda tam olarak soyle: kernel'de bir fonksiyonum var, bu fonksiyon birseyler yapip birsey donduruyor.. bu fonksiyon timer'i baslatacak, ama timer nonblocking oldugundan isine devam edecek.. timer surekli calisacak da calisacak.. fikir var midir ? geçen dönem operating systems dersi için scheduler yazmıştık biz de kernele. timerlar aslında interruptlar üzerinden çalışıyor kernelde, jiffies diye bi olay var interruptları sayan bir değer ve sürekli olarak aktif, yani sen istediğin zamanlarda bu jiffies değerini kontrol edip istediğin şeyi yaparsın buna göre, kernel bütün zamanlamayı jiffiese göre tutuyor. 2 farklı zamanda aldığın jiffies değerlerinin farkını bişeyle çarpınca milisaniye cinsinden geçen zamanı veriyordu ama o değeri hatırlamıyorum hehe jiffiese bir bak olmadı sor daha detaylı yazarım çıkmam gerek lakin. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Öne çıkan mesajlar