Książki o pisaniu sterowników pod Windows

0

Spotkał się ktoś kiedyś z taką książką? Może jakąś polecić?

W szerszej perspektywie moim celem nie jest tylko napisanie sterownika, który wiąże się z moim aktualnym pomysłem (w uproszczeniu sterownik wirtualnego urządzenia audio), ale zgłębienie też tego, co dzieje się w Windows pod maską. Interesują mnie raczej współczesne systemy, model WDF i skupiając się już raczej na Windows 7 niż starszych.
Podczas dotychczasowych poszukiwań trafiłem na dwie książki, Windows Internals oraz Developing Drivers with the Windows Driver Foundation. Ktoś czytał, może je polecić?

Próbowałem na początku uczyć się z dokumentacji DDK, ale po pierwsze brak mi podstaw, a po drugie odrzuciło mnie trochę 200kb kodu przykładowego, najprostszego sterownika audio, który.. nic nie robi.

0

Windows Internals - nie czytałem, ale czytałem kilka w miarę pochlebnych opinii.

Założyłem kiedyś w miarę podobny temat (chociaż nie wiedziałem tak dokładnie jak ty o co mi chodzi) - ostatecznie kupiłem The Rootkit Arsenal: Escape and Evasion in the Dark Corners of the System (bo gdyby nazwali krócej to brzmiałoby mniej epicko) - http://www.amazon.com/Rootkit-Arsenal-Escape-Evasion-Corners/dp/1598220616
Ogólnie polecam, merytorycznie jest IMO naprawdę dobra, napisana przystępnym językiem (angielskim... Tłumacenia nie ma.), zawiera sporo upakowanej wiedzy. Kody źródłowe są dość proste i w większości dołączone do książki + możliwość ściągnięcia z internetu. Podoba mi się też ogólny sposób na przekazanie wiedzy (konkretny pomysł postawiony w rozdziale + pisanie i objaśnianie kolejnych partii kodu. Mi takie coś bardzo odpowiada).

Z wad, żeby nie było za różowo - mowi tylko o Viście (wyszła przed 7-ką), Architekturę 64 bit tylko ogólnie omawia (koncentruje się na 32 bit) i autor ma chwilami jakby awersję do Microsoftu (że źli są bo obfuskują i w plikach nagłówkowych dają PVOID *reserved zamiast KERNEL_TRASH_OBJECT *obj).

Sorry za lekką chaotyczność...

0

Nie spotkałem się z książką traktującą wyłącznie lub w znacznym stopniu o sterownikach audio. Z tego co widzę to na stronach msdn ([url=http://msdn.microsoft.com/en-us/library/ff536400(v=vs.85).aspx]Getting Started with WDM Audio Drivers[/url]) można znaleźć dosyć obszerny opis. W nowszych książkach, które można znaleźć na Amazon'ie też nie widzę niczego nowego - a to dla tego, że ogólny schemat tworzenia sterowników WDM nie uległ zmianie.

  • [url=http://www.amazon.com/Windows-Device-Addison-Wesley-Microsoft-Technology/dp/0321670213/ref=pd_sim_b_4]Windows 7 Device Driver (Addison-Wesley Microsoft Technology Series)[/url]
  • [url=http://www.microsoft.com/learning/en/us/book.aspx?ID=10512&locale=en-us#tab4]Developing Drivers with the Windows® Driver Foundation[/url]

Reasumując, w przypadku sterowników audio pozostaje Ci to co jest dostępne na MSDN, DDK, oraz może fragmenty kodu, który wyciekł lata temu (NT4, 2k). Jeśli natomiast chcesz poznać architekturę systemu, budowę "zwykłych" sterowników to polecam zacząć od [url=http://www.amazon.com/Windows%C2%AE-Internals-Including-Windows-PRO-Developer/dp/0735625301/ref=pd_sim_b_3]Windows® Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition (PRO-Developer)[/url] - może gdzieś jeszcze uda Ci się nabyć tłumaczenie trzeciej edycji wydane przez Helion... Do tego DDK, serię artykułów Toby Opferman'a - [url=http://www.codeproject.com/script/Articles/MemberArticles.aspx?amid=961412]Driver Development[/url], [url=http://www.codeproject.com/KB/system/WDM_Driver_development.aspx]A simple demo for WDM Driver development[/url], jak i prenumeratę magazynu [url=http://www.osronline.com/section.cfm?section=17]The NT Insider[/url]. Na początek nie polecałbym jednak książek o rootkit'ach ponieważ ich autorzy podchodzą z dystansem do kwesti bezpiecznego pisania sterowników. Większość kodu, który w tego typu książkach przedstawiają autorzy jest jak sami twierdzą PoC'ami. Dlatego zamiast bezmyślnie przepisywać kod np. funkcji filtrującej SDT warto rzucić okiem jak system sprzwdza i odwołuje się do przekazywanych parametrów...

1 użytkowników online, w tym zalogowanych: 0, gości: 1