Toplam 1 adet sonuctan sayfa basi 1 ile 1 arasi kadar sonuc gösteriliyor
Konu: Sparse Nasıl Kullanılır?
-
13.Nisan.2015, 22:16 #1
Sparse Nasıl Kullanılır?
Sparse Nasıl Kullanılır?
Sparse, Linux çekirdeğine katkı verirken kullanılabilen araçlardan biri. Linus Torvalds tarafından yazılmış statik kod denetleyicisi ve bir süredir de bakımını Josh Tripplett yapıyordu.
Normalde çekirdek derlemesi yaparken almadığımız hataları/uyarıları Sparse'ı etkinleştirerek alabiliriz. Peki Sparse bize ne tür hatalar döndürüyor? Makro kullanımlarındaki yanlışlıklar, tip dönüşüm hataları, static & extern gibi anahtar kelimelerin kullanımlarında yanlışlık varsa ya da bir fonksiyon üretildiği ve hiç kullanılmadığı durumlarda uyarı veriyor.
Kurulum için sparse paketini kurmak yeterli ya da depodan çekerek de kurabiliriz. Temel kullanımı ise şu şekilde: make C=2 drivers/staging/wlan-ng/
Sparse'ı kullanabilmek için çekirdek hakkındaki en temel veri tiplerini, makrolarını bilmek gerekiyor. Eğer static, extern ifadelerindeki kullanımları düzeltmek gerekiyorsa o fonksiyonların nerelerde çağrıldığına, hangi başlık dosyasında tanımlandığına bakıp düzeltme yapmak gerekiyor. Ben sparse'ı ilk kullanmaya başladığımda bu yazıyı okumuştum, zaten okumamla birlikte oldu o zaman, beni evden beklerler demem bir olmuştu . Sparse ile katkı vermeye başladığımda da artık beni evden beklemiyorlar demeyi unutmadım tabi ^_^.
Sparse kullanırken veri gösterimlerindeki hataları da alabiliriz. Eğer driver Makefile dosyasında endian kontrolleri etkinleştirilmediyse, sparse kullanırken make C=2 CF="-D__CHECK_ENDIAN__" drivers/staging/wlan-ng/ şeklinde bayrağı aktif etmeliyiz.
Verileri big endianya da little endian şeklinde göstermek tasarımcıya göre değişen bir şey. Veri biçminde anlaşabilmek için işlemcinin kullandığı yerel biçimden driverın kullandığı biçime dönüş yapmak gerekebiliyor. Bunun için cpu_to_le16(), ya da le16_to_cpu() fonksiyonları var. Bu fonksiyonlar little endian 16 bit olan veriler için. Veri gösterimiyle ilgili fonksiyonlara buradan ulaşabilirsiniz. Birde burada örnek var, gayet yararlı olduğunu düşünüyorum . Burada temel problem fonksiyonların aldığı değişkenler ya da atama işlemlerinde meydana gelen tip uyumsuzlukları. Bu gibi durumlarda değişkenin tipini değiştirmek ya da dönüştürme işlemini kaldırmak gerekiyor. Ya da driverın özelliklerinden ve kodu inceleyerek, veri aktarımı olurken hangi biçime dönüştürülmesi gerektiğini anlayabiliriz. Ağlarla ilgili olan driverlarda big endian gösteriminin kullanılması gibi.
Makale: Ebru Akagündüz
Konu Bilgileri
Bu Konuya Gözatan Kullanıcılar
Şu anda 1 kullanıcı bu konuyu görüntülüyor. (0 kayıtlı ve 1 misafir)
Benzer Konular
-
Ebru Akagündüz: Sparse Nasıl Kullanılır?
Konu Sahibi erkolay Forum Linux GünlükleriCevap: 0Son Mesaj : 06.Haziran.2015, 21:09 -
PHP E-Mail Nasıl Kullanılır?
Konu Sahibi optimusprime Forum PHPCevap: 0Son Mesaj : 01.Aralık.2014, 21:49 -
Arama Motorları Nasıl Kullanılır?
Konu Sahibi donjuanhose81 Forum Diğer - Yeni Arama MotorlarıCevap: 0Son Mesaj : 20.Kasım.2014, 07:37 -
Paypal nasıl kullanılır
Konu Sahibi osman75 Forum Site EkleCevap: 0Son Mesaj : 27.Ekim.2014, 20:18 -
RSS Nedir? Nasıl Kullanılır?
Konu Sahibi WeBMasteR Forum Webmaster DünyasıCevap: 0Son Mesaj : 03.Ağustos.2014, 11:13
ForeverAutoHits Ücretsiz, Sınırsız...
Bugün, 13:32 in Hit Kaynakları