Creați un sistem de operare
Sistemele de operare permit oamenilor să comunice cu hardware-ul unui computer - sunt compuse din sute de mii de linii de cod. De obicei, ele sunt realizate cu limbi de programare C #, C, C ++ și asamblare. Sistemele de operare vă permit să navigați pe un computer, să activați stocarea datelor și să executați comenzi. Nu credeți că este ușor să creați un sistem de operare. Este nevoie de o mulțime de cunoștințe.
conținut
pași
1
Aflați cum să programați înainte de a începe. Adunarea este esențială, iar un alt limbaj de programare suplimentar, cum ar fi C, este foarte recomandat.
2
Determinați pe ce suport să încărcați sistemul de operare. Aceasta poate fi o unitate CD, unitate DVD, unitate flash, unitate hard disk, floppy disk sau alt calculator.
3
Decideți ce idee centrală se referă la sistemul de operare. În Windows, de exemplu, o interfață grafică ușor de folosit și o securitate puternică reprezintă ideea centrală.
4
Determinați ce platformă de procesor va suporta sistemul dvs. de operare. IA-32, ARM și x86_64 sunt cele mai comune arhitecturi pentru computerele personale, deci sunt cel mai bun pariu.
5
Decideți dacă doriți să construiți totul de la zero sau dacă există un kernel existent pe care doriți să continuați să faceți brodarea. Linux From Scratch este un exemplu de proiect pentru cei care doresc să-și construiască propriul distribuitor Linux.
6
Decideți dacă intenționați să utilizați propriul bootloader sau unul existent, cum ar fi Grand Unified Bootloader (GRUB). Deoarece criptarea propriului încărcător de încărcare necesită cunoștințe hardware și BIOS extinse, acest lucru poate întârzia planificarea actualului kernel.
7
Decideți ce limbă de programare veți folosi. Deși este posibil să creați un sistem de operare într-o limbă precum Pascal sau BASIC, sunteți mai bine cu C sau Assembly. Asamblarea este absolut necesară deoarece este necesară pentru anumite părți vitale ale unui sistem de operare. C ++, pe de altă parte, conține elemente de limbă care necesită un alt sistem complet de operare, pentru a putea executa.
8
Decideți ce interfață de programare a aplicațiilor (API) veți folosi. Un bun API pe care îl alegeți este POSIX, deoarece este bine documentat. Toate sistemele Unix au cel puțin suport parțial pentru POSIX, deci ar fi trivial pentru programele portului Unix în sistemul dvs. de operare.
9
Decide asupra designului. Există kerneluri monolitice și microkerneluri. Nucleele monolitice execută toate serviciile în kernel, în timp ce microkernele combină un nucleu mic cu o combinație cu daemonii care implementează serviciile. În general, kernelurile monolitice sunt mai rapide, dar microkernele au o izolare și o fiabilitate mai bună a defectelor.
10
Luați în considerare dezvoltarea și lucrul într-o echipă. În acest fel, este nevoie de mai puțin timp pentru a rezolva mai multe probleme, care pot produce mai repede un OS mai bun.
11
Nu ștergeți complet hard disk-ul. Nu uitați că ștergerea unității dvs. va șterge irevocabil toate datele! Utilizați GRUB sau alt manager de boot pentru a configura un boot dual cu un sistem de operare diferit, până când propriul sistem este complet funcțional.
12
Începeți puțin. Începeți cu mici lucruri cum ar fi afișarea textului și întreruperea înainte de a continua cu sarcini mai mari, cum ar fi gestionarea memoriei și multitasking. De asemenea, asigurați-vă că faceți o versiune pe 32 de biți și pe 64 de biți.
13
Păstrați o copie de rezervă a celui mai recent cod sursă de lucru. Acest lucru oferă un grad de protecție în cazul în care se întâmplă ceva rău cu actuala versiune a sistemului de operare sau cu dezvoltarea acestuia. În cazul în care computerul se blochează și nu mai este capabil să se încarce, este o idee excelentă să aveți oa doua copie la care să lucrați, astfel încât să puteți detecta erorile.
14
Luați în considerare testarea noului sistem de operare cu o mașină virtuală. În loc de computerul de fiecare dată când efectuați modificări pentru a reporni, sau fișiere trebuie să transfere calculatorul de dezvoltare a mașinii de testare, puteți utiliza o mașină virtuală pentru a rula sistemul de operare sub sistemul de operare curent. Unele software-VM sunt VMware (de asemenea, disponibil gratuit de server), open-source alternativă Bochs, Microsoft Virtual PC (nu este compatibil cu Linux) și Oracle VirtualBox.
15
Eliberați un candidat de eliberare. Acest lucru va permite utilizatorilor să indice potențiale probleme cu sistemul dvs. de operare.
16
Un sistem de operare poate fi, de asemenea, prietenos pentru utilizatori, deci asigurați-vă că adăugați funcții ușor de utilizat, făcându-le parte integrantă din designul dvs.
sfaturi
- Verificați posibile blocări și alte erori. În proiectul dvs. de sistem de operare vor apărea erori, blocări și alte probleme.
- Asigurați-vă că puneți în aplicare funcțiile de securitate ca prioritate de vârf, dacă doriți vreodată ca sistemul dvs. să fie viabil.
- Cu site-uri precum OSDev și OSDever puteți dezvolta propriul sistem de operare. Vă rugăm să rețineți: În majoritatea scopurilor, comunitatea OSDev.org ar prefera să consultați cu wiki-ul întrebările și să nu participați la forum. Dacă decideți să vă înscrieți în forum, există cerințe: vi se cere să aveți cunoștințe temeinice despre asamblorul C sau C ++ și x86. Trebuie să înțeleagă, de asemenea, concepte comune și complexe de programare, cum ar fi liste legate, cozile, etc. Statele OSDev comunitare în normele sale în mod explicit că Comunitatea nu este destinată dădaca pentru noi programatori.
- `Nu deveniți membru al acesteia forumurile OSDev.org să pună imediat întrebări evidente. Acest lucru va duce pur și simplu la răspunsuri precum ""citiți manualul / citiți manualul". Citiți Wikipedia și manualele pentru diferitele instrumente pe care doriți să le utilizați.
- Dacă încercați să dezvoltați un sistem de operare, atunci este de la sine înțeles că sunteți așteptat să fiți un zeu de programare.
- De asemenea, trebuie să citiți manualele procesorului pentru arhitectura procesorului pe care ați ales-o, fie x86 (Intel), ARM, MIPS, PPC etc. Puteți găsi cu ușurință manualele pentru arhitectura unui procesor cu o căutare Google ("Manuale Intel". "Manuale ARM" etc).
- După ce toate dezvoltările au fost finalizate, puteți decide dacă doriți să eliberați codul ca sursă deschisă sau deținut.
- Nu începe cu un proiect de sistem de operare pentru a învăța programarea. Dacă nu aveți încă de C, o înțelegere aprofundată, C ++, Pascal sau orice altă limbă adecvată, inclusiv manipulare pointer, biți manipulare nivel scăzut, puțin schimbare, inline limbaj de asamblare, etc, atunci sunteți într-adevăr nu este pregătită pentru dezvoltarea propriului sistem de operare.
- Poate fi înțelept să creați o partiție complet nouă pentru "dezvoltarea" sistemului de operare.
Sistemul de operare pe care le face să fie apoi clar pentru compania care serviciul deja a început (deși aveți dreptul la libera distribuție și modificare după cum este necesar și de a efectua aceasta sub GPL).
avertismente
- Nu veți crea un sistem de operare complet în două săptămâni. Începeți cu un sistem de operare care poate porni și apoi continuați cu lucrurile distractive.
- Dacă faci ceva nepotrivit cum ar fi scrierea octeților aleatorii la porturile aleatoare I / O, sistemul tău de operare se va prăbuși și tu (teoretic) poți afecta hardware-ul.
- Nu va asteptati ca este usor sa construiti un sistem de operare bun. Există tot felul de interdependențe complicate. De exemplu, pentru a face o afacere de sistem de operare cu mai multe procesoare vor „mecanisme de blocare“ pentru a utiliza memoria pentru a preveni mai multe procesoare una și aceeași sursă / resursă în același timp. "încuietori" utilizate în acest scop, necesită prezența unui planificator / programator pentru a se asigura că numai un procesor la un moment dat are acces la o resursă critică, cu toate celelalte așteptate. Dar planificatorul este din nou dependent de prezența unui Manager de memorie. Acesta este un caz de dependență blocată (blocată). Nu există un mod standard pentru a rezolva astfel de probleme - fiecare programator al unui sistem de operare este de așteptat să fie suficient de competent pentru a-și găsi propriul mod de a face față acestei situații.
- Nerespectarea scrisului sistemului dvs. de operare pe unitatea hard poate duce la deteriorarea completă a acestuia. Fii atent.
Distribuiți pe rețelele sociale:
înrudit
- Ștergeți un hard disk Mac
- Verificați dacă este instalată o versiune de 32 de biți sau pe 64 de biți
- Creați o partiție
- Salvați fișierele pe un stick USB
- Verificați specificațiile computerului
- Ștergeți și formatați un DVD RW
- Formatați o unitate hard disk externă
- Formatați un hard disk
- Ștergeți un hard disk
- Reinstalați un laptop
- Instalați un nou sistem de operare pe computer
- Formatați FAT32
- Pornirea computerului de pe un stick USB
- Construiți propriul PC
- Formatați hard diskul
- Eliminați Ubuntu
- Eliminați Windows 7 de pe computer
- Instalarea Windows de pe un stick USB
- Instalați o imprimantă fără un disc de instalare
- Salvarea datelor de pe hard diskul unui computer defect
- Instalați VirtualBox