ARM tabanlı kartlar için yazdığım Linux Aygıt Sürücüleri için statik bir analiz aracına ihtiyacım var.Linux çekirdek modülleri ve aygıt sürücüleri için Statik Analiz aracı
- Sparse Linux çekirdeği mümkün kodlama hataları bulmak için tasarlanmış Linux üzerinde zaten mevcut bir bilgisayar yazılım aracı, geçerli: aşağıda belirtildiği gibi ben kaç aracın düşünüyorum.
Yüklenebilir çekirdek modüllerinin kalitesini iyileştirmeyi amaçlayan iki etkin proje var: Linux Verification Center.
Linux Driver Verification
(LDV) - Linux aygıt sürücüleri statik kaynak kod doğrulama için kapsamlı bir araç seti. Çekirdek modüllerinin dinamik analizi ve doğrulanması için genişletilebilir bir çerçeve.- Devam eden bir başka proje de, Linux dosya sistemi uygulamalarının doğrulanması için özel bir araç seti geliştirmeyi amaçlayan
Linux File System Verification
.
GCC
üzerine
-Werror
,
-Wextra
ve
-Wall
etkinleştirin ve
Valgrind
ile çalıştırın.
Son kez Sparse ile oynadım Çıktıların kafa karıştırıcı olduğunu buldum ve çıktıyı yorumlamak için iyi bir belge bulamadım. Sparse aracı üzerinde iyi bir dokümantasyon var mı? Linux sürücü doğrulama için kullanabileceğim diğer Free statik analiz araçları nelerdir? LINT aracını biliyorum ama lisanslı.
Ateli deneyin. Ücretsiz. Başka bir öneri -Wall ve -Wextra ile derlemek olurdu. – Kenneth
atel normal C kodu içindir. Linux çekirdek kodunu kontrol edebilecek bir araca ihtiyacım var. Yaygın bir örnek, atomik bağlamda, yani kesinti işleyicilerinde, spin kilitleri ve benzerleri tarafından korunan kritik bölümlerde uyuyabilen (veya genel olarak yeniden programlamaya neden olabilecek) bir işlev kullanmaktır. –
Çok farklı kavramları burada karıştırıyor gibi geliyor. Linux çekirdeği C ile yazılmıştır, bu nedenle splint geçerli bir _static_ analiz aracıdır. – Kenneth