Cum să învățați în mod corect codul sursă al kernelului de suprapunere a stivei linux în limba rusă

Nu cu mult timp în urmă, am devenit interesat de o problemă la nivel scăzut de operare a sistemului de operare, dar nu am reușit să o rezolv imediat. Am fost sfătuit (în principiu, și logic) pentru a verifica sursa kernel-ului să se clarifice așa cum este cazul în realitate. Descărcați codul sursă pentru nucleul Ubuntu nu a fost o problemă, dar înțeleg că a fost destul de dificil pentru mine, ceea ce nu este surprinzător. Există atât de multe fișiere, și este complet neclar unde să săpăm = (

Pe scurt, am nevoie de sfaturi sau chiar tehnica, modul de abordare a studiului sursei kernel-ului, și de altcineva codul sursă, la toate (deși mă îndoiesc că există o anumită metodă, în general, poate fi), care nu sunt legate în mod specific la problema mea (eu sunt în mod deliberat aici Nu spun exact ce vreau să știu), dar în general, în principiu. Aș dori să încep cel puțin a determina structura de directoare, pentru a înțelege ce fișiere care sunt responsabile pentru învățarea despre orice posibile fișiere de surse majore.

Setați Feb 17 '12 la 21:58

Descărcați codul sursă pentru nucleul Ubuntu nu a fost o problemă, dar înțeleg că a fost destul de dificil pentru mine, ceea ce nu este surprinzător. Există atât de multe fișiere, și este complet neclar unde să săpăm = (

Pentru mine, așa cum este posibil pentru majoritatea oamenilor,
Acesta a fost cel mai simplu mod de a învăța nucleul,
Săpând în toate caracteristicile și setările,
Trebuia să-l colectez de la zero. Campiglio.

Ie colecta, colectează, colectează, colectează
Încă o dată pentru a colecta, apoi să-l pentru a fi încărcate,
Nu este un boutique din nou, este un dezastru, din nou pentru a merge și a compila.
Uită-te la dmesg, glumă, delve,
Toate aruncați și din nou 30-50 de minute pentru a sta și compila.

În timpul iernii vă puteți încălzi palmele atât de calde,
Când pescajul și frigul se îndreaptă prin perdelele draperiilor,
După ce trecut deja geamurile duble cu geamuri duble, prin pereți.
Pe laptopul pe care îl tastați face CONFIG.

De ce să luați ubuntushnoe,
Luați implicit, chiar pe www.kernel.org,
Există documentație, aici: www.kernel.org/doc

La început. În zori,
a fost nucleul
doar o bază funcțională,
Și a fost adăugată în mod constant de către înțelepții Torvalds.

Toate s-au ocupat de nucleu în cursul îndeplinirii unor sarcini mici.
De exemplu, pentru a rula un demon bun
A fost necesar să se patcheze miezul.
S-a luat codul sursă, s-a făcut un patch și s-a asamblat un kernel personalizat.

Acum, majoritatea lucrurilor necesare,
Cum ar fi sistemul de fișiere cu straturi,
Și module de ascultare a interfețelor de rețea,
Toate acestea se află deja în kernel în mod implicit,
Pornit și oprit numai cu o singură linie
În fișierul de configurare a kernelului.

Dar poți repeta totul
Găsiți-vă interesant un astfel de proiect ca grsecurity.net

Cu ajutorul acestui patch puteți crea un bufet fără gloanțe
Cu un milion de urmărire, elemente de logare.
Interzice tot ceea ce poate fi interzis.
Apropo, este destul de non-banal
Sarcina este de a porni serverul X
Cu "maxim" posibil "inclus" grsecurity-patch.

În procesul de asamblare a unui nucleu personalizat cu bullet-non-străpuns
Și încearcă să se învârtă din ea,
Veți avea o idee despre ierarhia tuturor steagurilor.
Puteți înțelege că 90% din kernel nu este nimic mai mult decât module
Conținut special de carduri hardware, de rețea și audio
Și tot felul de bine.

Și restul de 10% - acesta este Core însuși,
Core de Kernel, dacă aș putea spune asta.
Rețelele, subsistemele de disc,
Sheduler - Scheduler de sarcini,
Toate caracteristicile, cârligele, hack-urile, bug-urile.

Pe scurt, am nevoie de sfaturi sau chiar de o tehnică, cum să abordăm studiul codului sursă al kernelului,

Căutați un interesant patch,
Fă-o.
Și compilați, de sute de ori.
După 2 mii de proceduri
Pe tine coboară inspirația.
Așa a fost cu toți.
Și va fi așa întotdeauna.

Faber est suae quisque fortunae