itholoinfo.com.com

Cum se face un sistem de operare calculat

Sistemele de operare permit interacțiunea între oameni și hardware-ul computerului și se realizează cu mii și mii de linii de cod. Acestea sunt de obicei create cu următoarele limbi de programare:

C, C ++ și asamblare.

pași

Imagine intitulată Creați un sistem de operare pentru computer Pasul 1
1
Aflați cum să programați înainte de a începe. Limba de asamblare este fundamentală, în timp ce un alt limbaj suplimentar și de nivel inferior de mare importanță, cum ar fi C, este foarte recomandat.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 2
    2
    Decideți pe ce suport doriți să încărcați sistemul de operare. Poate fi o dischetă, un CD, un DVD, un pendrive, un hard disk sau chiar un alt PC.
  • Imagine intitulată Creați un sistem de operare pentru computer Pasul 3
    3
    Decideți ce doriți să faceți sistemul dvs. de operare. Dacă un sistem de operare completă, cu o interfață grafică cu utilizatorul (GUI) sau ceva un pic mai minimalist, trebuie să știți ce direcție vă luați înainte de a începe.
  • Imagine intitulată Creați un sistem de operare pentru computer Pasul 4
    4
    Decideți ce platformă de procesor va suporta sistemul de operare. Dacă nu sunteți sigur cu privire la acest lucru, cel mai bine este să se concentreze pe platforma procesor X86 (32 de biți), deoarece cele mai multe calculatoare folosesc procesoare platforma X86.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 5
    5
    Decide dacă doriți să-l dezvolte complet pe cont propriu sau în cazul în care există un nucleu disponibil de la care doriți să dezvolte sistemul de operare. Linux From Scratch este un proiect pentru cei care doresc să-și creeze propria distribuție Linux, de exemplu. Consultați sfaturile pentru accesarea unei legături externe.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 6
    6
    Decideți dacă veți utiliza propriul manager de boot sau unul existent, cum ar fi GRUB (Grand Unified Bootloader). Deoarece programarea propriului bootloader vă va oferi o mulțime de cunoștințe despre hardware și BIOS, acest lucru poate duce la ideea de programare a nucleului în sine. Verificați sfaturile.
  • Imagine cu titlul Creați un sistem de operare pentru computer Pasul 7
    7
    Decideți ce limbă de programare să utilizați. Deși este posibil să creați un sistem de operare cu limbi precum Pascal sau Basic, este mai bine să folosiți o limbă precum C sau Assembly. Adunarea este absolut necesară, deoarece unele părți vitale ale unui sistem de operare o vor avea nevoie. C ++, pe de altă parte, conține câteva cuvinte cheie care necesită un sistem de operare complet dezvoltat pentru ca acesta să ruleze.
    • Pentru a compila un sistem de operare din codul C sau C ++, veți folosi în mod evident un compilator sau altul. Ar trebui să citiți manualele de utilizare / documentația pentru compilatorul C / C ++ ales, indiferent dacă este comprimat cu software-ul sau disponibil pe site-ul distribuitorului. Veți avea nevoie să cunoașteți multe detalii complexe despre compilatorul dvs. și, pentru dezvoltarea C ++, ar trebui să știți despre schema de interpretare greșită a compilatorului și ABI-ul său. Este de așteptat să înțelegeți diferitele formate executabile (ELF, PE, COFF, plain binar etc.), precum și să înțelegeți că formatul proprietate al Windows PE (.exe) este protejat prin drepturi de autor.
  • Imagine intitulată Creați un sistem de operare pentru computer Pasul 8
    8
    Decideți ce va fi interfața de programare a aplicațiilor (API). Un bun API pe care îl alegeți este POSIX, care este bine documentat. Toate sistemele UNIX au cel puțin parțial suport POSIX, deci ar fi trivial pentru aplicațiile port UNIX în sistemul dvs. de operare.
  • Imaginea cu titlul Creați un sistem de operare pentru computer Pasul 9


    9
    Decideți cum arată designul dvs. Există kerneluri monolitice și nuclee micro. Nucleele monolitice implementează toate serviciile din kernel, în timp ce micro kernel-urile au un kernel mic combinat cu daemonii utilizatori care implementează servicii. În general, kernelurile monolitice sunt mai rapide, dar nucleul mic are o izolare mai bună a defectelor și o fiabilitate mai mare.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 10
    10
    Luați în considerare efectuarea lucrărilor de dezvoltare împreună cu o echipă. În acest fel, va fi consumat mai puțin timp pentru a rezolva o cantitate mai mare de probleme, rezultând un sistem de operare mai bun.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 11
    11
    Nu vă curățați complet hard disk-ul. Amintiți-vă că prin curățarea discului complet veți șterge toate datele și acest lucru este ireversibil! Utilizați Grub sau alt manager de boot pentru a utiliza sistemul de boot dual pentru a porni sistemul, precum și un alt sistem până când sistemul este complet complet și funcțional.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 12
    12
    Începeți dedesubt. Începeți cu lucruri mici, cum ar fi afișarea textului și întreruperea înainte de a vă deplasa cu aspecte mai complexe, cum ar fi gestionarea memoriei și funcțiile de multitasking.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 13
    13
    Păstrați o copie de rezervă a ultimului cod sursă funcțional. În cazul în care ceva nu merge în neregulă cu versiunea curentă sau dacă computerul de dezvoltare are probleme și nu poate boot sau boot, este o idee minunată să aveți oa doua copie pentru a putea continua să lucrați sau să depanați.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 14
    14
    Luați în considerare testarea noului sistem de operare pe o mașină virtuală. În loc să reporniți computerul de fiecare dată când efectuați modificări sau trebuie să transferați fișierele de pe calculatorul dvs. de dezvoltare pe mașina dvs. de testare, puteți utiliza software-ul de virtualizare pentru a instala sistemul de operare pe o mașină virtuală și pentru a rula chiar dacă sistemul dvs. actual de operare continuă să se rostogolească. Aplicațiile de virtualizare includ VMWare (care are, de asemenea, o versiune gratuită pentru servere), Bochs alternativă open source, Microsoft Virtual PC (incompatibil cu Linux) și xVM VirtualBox. Consultați sfaturile pentru mai multe informații.
  • Imagine intitulată Creați un sistem de operare pentru computer Pasul 15
    15
    Eliberați o versiune "candidată" (cunoscută și ca un candidat de lansare sau pur și simplu RC). Acest lucru va permite utilizatorilor să vă avertizeze asupra posibilelor probleme legate de sistemul dvs. de operare.
  • Imaginea intitulată Creați un sistem de operare pentru computer Pasul 16
    16
    Un sistem de operare poate fi, de asemenea, ușor de utilizat din punctul de vedere al utilizatorului.
  • sfaturi

    • Nu începeți un proiect de dezvoltare a sistemului de operare în același timp în care începeți să învățați programarea. Nu, deloc. Dacă nu mai cunoașteți în totalitate C, C ++, Pascal sau altă limbă adecvată, inclusiv manipularea pointerului, manipularea bitului la nivel scăzut, perierea bitului, detaliile limbajului de asamblare etc., nu veți fi gata să dezvoltați sistem de operare.
    • Dacă doriți un mod simplu, luați în considerare distribuțiile Linux, cum ar fi Fedora Revisor, Custom Nimble X, Puppy Remaster, PCLinuxOS mklivecd sau SUSE Studio și SUSE KIWI. Cu toate acestea, sistemul de operare pe care îl creați aparține companiei care a inițiat serviciul inițial (deși aveți dreptul să îl distribuiți liber, să-l modificați și să-l executați așa cum doriți după licența GPL).
    • După ce toate dezvoltările au fost finalizate, decideți dacă doriți să lansați codul sursă ca aplicație open source sau să-l faceți proprietar.
    • Utilizați site-uri precum OSDev și OSDever ca o modalitate de a vă ajuta în dezvoltarea propriului sistem de operare. Cu toate acestea, vă rugăm să înțelegeți că comunitatea OSDev.org ar prefera să utilizați wiki-ul proiectului, să nu vă alăturați forumului. Dacă doriți să vă înscrieți în forum, există anumite cerințe care trebuie respectate. Este necesar să cunoașteți limbile de programare C sau C ++ și x86 Assembly cu atenție. De asemenea, trebuie să înțelegeți concepte generale și complexe de programare, cum ar fi liste cu filete, rânduri etc. Comunitatea OSDev, în regulile sale, afirmă în mod explicit că comunitatea nu este acolo pentru a servi ca dădacă sau mentor pentru programatori începători. Dacă încercați să dezvoltați un sistem de operare, este necesar să vă spun că sunteți așteptat să fiți un fel de "zeu" de programare. De asemenea, este necesar să citiți manualele procesorului pentru a înțelege arhitectura procesorului pe care l-ați ales - fie x86 (Intel), ARM, MIPS, PPC etc. Manualele pentru o anumită arhitectură a procesorului pot fi găsite cu ușurință utilizând motorul de căutare Google ("Manuale Intel", "Manuale ARM", etc.). Nu vă alăturați forumurilor comunității OSDev.org și începeți să adresați întrebări evidente. Acest lucru va rezulta doar în răspunsurile de tip "Citiți medicamentul manualului". Ar trebui să încercați să citiți Wikipedia și manualele diferitelor instrumente pe care doriți să le utilizați.
    • Poate fi o alegere bună pentru a crea o partiție complet nouă pentru dezvoltarea sistemului de operare.
    • Verificați posibile blocări și alte erori sau erori. Bug-uri, blocări și alte probleme vă vor afecta proiectul pentru sistemele operaționale.
    • Pentru mai multe informații, consultați aceste surse:

    avertismente

    • Nu veți avea un sistem complet în două săptămâni. Începeți cu un sistem de operare care poate porni, apoi treceți la lucrurile interesante.
    • Dacă faceți ceva cu adevărat stupid, cum ar fi scrierea octeților aleatorii la porturile I / O aleatoare, veți "sparge" sistemul dvs. de operare și ar putea (teoretic) să vă deterioreze hardware-ul. Pentru o demonstrație, rulați "cat / dev / port" sub Linux ca utilizator root. Computerul dvs. se va prăbuși.
    • Asigurați-vă că implementați caracteristicile de securitate ca prioritate de vârf, dacă doriți să utilizați sistemul dvs. de operare pentru orice.
    • Având sistemul de operare scrise fără griji pe hard disk-ul tău te-ar putea corupe complet. Fii atent.
    • Nu vă așteptați ca dezvoltarea unui sistem de operare adecvat să fie o sarcină ușoară. Există deseori interdependențe complexe. De exemplu, pentru a face un sistem de operare este capabil să se ocupe de mai multe procesoare, managementul de memorie trebuie să aibă mecanisme de „blocare“ pentru a preveni mai multe procesoare a avea acces la aceeași resursă în același timp. Cele „blochează“ (ecluze) utilizate pentru acest lucru va necesita prezenta unui organizator de program sau pentru a se asigura că doar un singur procesor accesează o resursă critică la fiecare moment și că toți ceilalți rămână în așteptare. Acest programator depinde de prezența unui Manager de memorie. Acesta este un caz de dependență de blocare. Nu există nici o modalitate standard de a rezolva probleme de acest gen, fiecare sistem de operare programator ar trebui să aibă aptitudinile necesare pentru a crea propriile lor moduri de a face cu acest lucru.

    Materiale necesare

    • Un calculator bun
    • Un procesor de arhitectură pentru care doriți să vă dezvoltați
    • RAM suficient pentru o mașină virtuală
    • Un sistem de operare „gazdă“ (folosit pentru a dezvolta codul sursă de asamblare (și altele), precum și compilați și pachet la fel cum este în stadiile sale iniciais-, eventual, propriul sistem de operare poate fi propriul gazdă)
    • Un editor de cod cu sintaxă de culoare (utilizați dacă nu aveți un IDE)
    • Un compilator
    • O unitate de dischetă (nu este necesară)
    Distribuiți pe rețelele sociale:

    înrudit
    Cum se șterge un hard disk pentru computerCum se șterge un hard disk pentru computer
    Cum se verifică dacă Windows are 32 biți sau 64 bițiCum se verifică dacă Windows are 32 biți sau 64 biți
    Cum se formatează un notebookCum se formatează un notebook
    Cum se instalează sistemul de operare DebianCum se instalează sistemul de operare Debian
    Cum se instalează Ubuntu 8.10Cum se instalează Ubuntu 8.10
    Cum se instalează Windows 7 pe Windows 8Cum se instalează Windows 7 pe Windows 8
    Cum se elimină Windows 8.1Cum se elimină Windows 8.1
    Cum să știți dacă sistemul dvs. de operare este de 64 de bițiCum să știți dacă sistemul dvs. de operare este de 64 de biți
    Cum să vă adaptați la un computer nou sau la un sistem de operareCum să vă adaptați la un computer nou sau la un sistem de operare
    Cum se utilizează un Pendrive ca un hard diskCum se utilizează un Pendrive ca un hard disk
    » » Cum se face un sistem de operare calculat
    © 2021 itholoinfo.com.com