Si të bëni një sistem operativ kompjuterik: 13 hapa (me fotografi)

Përmbajtje:

Si të bëni një sistem operativ kompjuterik: 13 hapa (me fotografi)
Si të bëni një sistem operativ kompjuterik: 13 hapa (me fotografi)

Video: Si të bëni një sistem operativ kompjuterik: 13 hapa (me fotografi)

Video: Si të bëni një sistem operativ kompjuterik: 13 hapa (me fotografi)
Video: Si të ndryshoni një Printer nga Offline në Online 2024, Prill
Anonim

Ky wikiHow ju mëson se si të planifikoni dhe zhvilloni një sistem operativ nëse nuk dini si të kodoni në C, ose C ++. Sistemet operative menaxhojnë harduerin kompjuterik dhe sigurojnë burimet që u nevojiten aplikacioneve. Shkrimi i një sistemi operativ nga e para kërkon një zotërim të fortë të shkencës kompjuterike, një gjuhë programimi si C ose C ++, montim dhe praktika të menaxhimit të kodit.

Hapa

Pjesa 1 nga 2: Mësoni Bazat

Krijoni një sistem operativ kompjuterik Hapi 1
Krijoni një sistem operativ kompjuterik Hapi 1

Hapi 1. Merrni disa kurse bazë të Shkencave Kompjuterike

Ndryshe nga zhvillimi për uebin, krijimi i një sistemi operativ kërkon një kuptim të fortë të algoritmeve, strukturave të të dhënave, pajisjeve kompjuterike dhe menaxhimit të burimeve. Njerëzit marrin diplomë në këto gjëra, kështu që mos prisni të shkruani një sistem të tërë operativ pasi të keni lexuar një mësim online! Kursi i Harvardit për Hyrje në Shkencat Kompjuterike është në dispozicion në internet përmes EDX pa asnjë kosto.

Krijoni një sistem operativ kompjuterik Hapi 2
Krijoni një sistem operativ kompjuterik Hapi 2

Hapi 2. Mësoni një gjuhë programimi të nivelit të lartë si Python

Pasi të keni marrë një kuptim të fortë themelor të shkencës kompjuterike, hapi tjetër është të zotëroni C dhe/ose C ++. Ashtu si të mësosh për shkencat kompjuterike, zotërimi i një gjuhe nuk është opsionale-nuk do të jeni në gjendje të kodoni një sistem operativ nëse nuk mund të shkruani aplikacione të forta.

Nëse jeni i ri në C, shikoni kursin e Programimit C të Dartmouth: Fillimi, i cili është falas përmes EDX. Pasi të keni përfunduar atë kurs, mund të merrni kursin tjetër në serinë: C Programimi: Fondacionet e gjuhës. Pastaj, kaloni në kurset pasuese si Programimi Modular dhe Menaxhimi i Kujtesës dhe Treguesit dhe Menaxhimi i Kujtesës

Krijoni një sistem operativ kompjuterik Hapi 4
Krijoni një sistem operativ kompjuterik Hapi 4

Hapi 3. Mësoni një gjuhë asambleje

Gjuhët e asamblesë janë gjuhë të nivelit të ulët të krijuar për të komunikuar me përpunues të ndryshëm. Meqenëse montimi është i ndryshëm për llojet e ndryshme të procesorëve (p.sh., Gjuha e montimit x86 për Intel, AMD, VIA dhe përpunues të tjerë), do t'ju duhet të mësoni versionin për llojin e procesorit për të cilin po kodoni.

  • Ky libër me burim të hapur, nëse lexohet në tërësi, mund t'ju japë një kuptim mjaft të fortë për ndërtimin e një sistemi operativ.
  • Arti i Gjuhës së Kuvendit është një libër shumë i rekomanduar për asamblenë, i disponueshëm si jashtë linje ashtu edhe jashtë linje.
  • Ju gjithashtu duhet të bëni shumë kërkime mbi llojin e procesorit (ve) në të cilin duhet të funksionojë sistemi juaj operativ. Manualet për arkitekturën e procesorit mund të gjenden lehtësisht duke përdorur një kërkim në Google ("Manualet e Intel", "Manualet ARM", etj.).
Krijoni një sistem operativ kompjuterik Hapi 5
Krijoni një sistem operativ kompjuterik Hapi 5

Hapi 4. Përfundoni një tutorial të sistemit operativ

Mësimet e OS do t'ju përcjellin gjatë procesit të krijimit të një sistemi bazë operativ. Kjo ju mëson me procesin dhe ju ndihmon të kuptoni nëse ka ndonjë pjesë që ju mungon. Pasi të keni përfunduar një ose dy mësime, do të jeni në rrugën tuaj për të krijuar sistemin tuaj operativ.

  • Bare Bones është një mësim që ju ndihmon të shkruani kernelin tuaj të parë të thjeshtë 32-bit. Pas përfundimit të mësimit, hapi tjetër është të përdorni skeletin e mishit për të strukturuar sistemin tuaj operativ.
  • Linux from Scratch është një libër online që ju përcjell duke krijuar sistemin tuaj operativ Linux.
  • Sistemet operative nga 0 në 1 janë një libër falas për krijimin e sistemeve të ndryshme operative nga fillimi në fund.
Krijoni një sistem operativ kompjuterik Hapi 3
Krijoni një sistem operativ kompjuterik Hapi 3

Hapi 5. Përcaktoni qëllimet e sistemit tuaj operativ

Çfarë doni që të bëjë sistemi juaj operativ? Si duhet të duket? A keni vërtet nevojë të shkruani një sistem operativ të tërë apo thjesht po kërkoni të krijoni një pamje të caktuar për desktopin tuaj? Këto janë të gjitha gjërat që duhen marrë parasysh para fillimit të kodimit.

  • Konsideroni zhvillimin me një ekip programuesish të tjerë. Duke pasur një ekip zhvilluesish që punojnë në projekt do të shkurtojë ndjeshëm kohën e zhvillimit.
  • Shtoni qëllimet, planet dhe pyetjet e projektit tuaj në depon tuaj publike në mënyrë që të jetë e lehtë për të tjerët t'ju ndihmojnë.

Pjesa 2 nga 2: Ndërtimi i sistemit tuaj operativ

Kënaquni me kompjuterin Hapi 16
Kënaquni me kompjuterin Hapi 16

Hapi 1. Zgjidhni një mjedis zhvillimi

Kjo është platforma që do të përdorni për të koduar sistemin tuaj të ri operativ. Ashtë një çështje e preferencave personale, por shumica e njerëzve ose përdorin Windows ose një aromë të UNIX. Nëse përdorni Windows, është ide e mirë të instaloni një mjedis UNIX si Cygwin ose MinGW. Në përgjithësi do të dëshironi të siguroheni që çfarëdo mjedisi që përdorni përfshin sa vijon:

  • GCC (përpiluesi Gnu). Nëse jeni duke përdorur Windows, mund ta instaloni në Cygwin ose MinGW.
  • Binutils është një koleksion mjetesh të përdorura për manipulimin e skedarëve të objekteve. Përsëri, nëse përdorni Windows, mund ta instaloni në Cygwin.
  • Një redaktues i mirë teksti. Vim dhe emacs zakonisht përdoren në mjediset UNIX. Përdoruesit e Windows mund të përdorin Notepad ose të shikojnë Notepad ++ për një azhurnim me shumë skeda.
  • Perl dhe/ose Python. Njëra ose të dyja rekomandohen për manipulim me tela.
Krijoni një sistem operativ kompjuterik Hapi 13
Krijoni një sistem operativ kompjuterik Hapi 13

Hapi 2. Vendosni sistemin tuaj të kontrollit të versionit

Shkrimi i një sistemi operativ do të thotë që ka të ngjarë të krijoni qindra (ose mijëra!) Rreshta kodesh. Kur jeni duke punuar në rishikime, kjo mund të bëhet konfuze. Disa opsione për të kontrolluar janë CVS, Mercurial dhe Subversion.

Krijoni një sistem operativ kompjuterik Hapi 6
Krijoni një sistem operativ kompjuterik Hapi 6

Hapi 3. Vendosni për një bootloader

Nëse nuk doni të krijoni tuajin, mund të përdorni një ekzistues si Grand Unified Bootloader (GRUB). Nëse ndiheni mjaft të guximshëm për të koduar një bootloader, shikoni Rolling Your Own Bootloader në OSDev.org.

Krijoni një sistem operativ kompjuterik Hapi 9
Krijoni një sistem operativ kompjuterik Hapi 9

Hapi 4. Zgjidhni një dizajn kernel

Kerneli është thelbi i sistemit tuaj operativ, duke siguruar një ndërfaqe midis përdoruesit dhe pajisjeve kompjuterike. Ka kernel monolit dhe mikro kernel. Kernelët monolit zbatojnë të gjitha shërbimet në kernel, ndërsa mikrokernelët kanë një kernel të vogël të kombinuar me shërbimet zbatuese të demonëve të përdoruesit. Në përgjithësi, bërthamat monolite janë më të shpejta, por mikrokernelët kanë izolim dhe besueshmëri më të mirë të defekteve.

Krijoni një sistem operativ kompjuterik Hapi 12
Krijoni një sistem operativ kompjuterik Hapi 12

Hapi 5. Filloni të vogla

Filloni me gjëra të vogla të tilla si shfaqja e tekstit dhe ndërprerjet para se të kaloni në gjëra të tilla si menaxhimi i kujtesës dhe kryerja e shumë detyrave. Ju gjithashtu mund të provoni të bëni një Sistem Operativ të thjeshtë 16-bit, në vend që të bëni një hap të madh.

Nuk do të keni një sistem të plotë brenda dy javësh. Filloni me një sistem operativ që fillon, pastaj kaloni te gjërat e lezetshme

Bëni një sistem operativ kompjuterik Hapi 14
Bëni një sistem operativ kompjuterik Hapi 14

Hapi 6. Testoni sistemin tuaj të ri operativ me një makinë virtuale

Në vend që të rindizni kompjuterin tuaj sa herë që bëni ndryshime ose të keni nevojë të transferoni skedarët nga kompjuteri juaj i zhvillimit në makinën tuaj të testimit, përdorni një aplikacion të makinës virtuale. VMWare është një opsion i zakonshëm që punon si me Windows ashtu edhe me Linux, dhe po kështu edhe Bochs. Kontrolloni për bllokime të mundshme dhe defekte të tjera dhe rregulloni ato sipas nevojës.

Krijoni një sistem operativ kompjuterik Hapi 15
Krijoni një sistem operativ kompjuterik Hapi 15

Hapi 7. Lëshoni një "kandidat për lirimin"

Ju mund ta bëni këtë duke ngarkuar kodin tuaj të testuar në depon tuaj publike. Kjo do t'i lejojë njerëzit të testojnë sistemin tuaj operativ dhe të raportojnë përsëri për çdo problem me të cilin hasin.

Argëtohuni me kompjuterin Hapi 28
Argëtohuni me kompjuterin Hapi 28

Hapi 8. Rrjetëzoni me zhvilluesit e tjerë të sistemit operativ

Ekziston një bashkësi e tërë e zhvilluesve të sistemit operativ që grumbullohen në forume të ndryshme, duke përfshirë /r /osdev në Reddit dhe Shkëmbimin e pirgjeve të inxhinierisë softuerike. Një që keni kuptuar në zhvillimin e një sistemi bazë operativ, lexoni postimet ekzistuese për të parë se çfarë lloj gjërash dalin gjatë procesit të zhvillimit.

Video - Duke përdorur këtë shërbim, disa informacione mund të ndahen me YouTube

Këshilla

  • Sigurohuni që të zbatoni veçoritë e sigurisë si përparësia juaj kryesore nëse dëshironi që sistemi juaj të jetë i zbatueshëm.
  • Pasi të jetë bërë i gjithë zhvillimi, vendosni nëse doni ta lëshoni kodin si burim të hapur, ose të pronarit.
  • Për ta bërë një sistem operativ të aftë të trajtojë procesorë të shumtë, Menaxheri juaj i kujtesës duhet të ketë mekanizma "bllokues" në vend për të parandaluar që procesorë të shumtë të kenë qasje në të njëjtin burim në të njëjtën kohë. "Kyçet" e përdorura për këtë do të kërkojnë praninë e një programuesi për të siguruar që vetëm një procesor të ketë qasje në një burim kritik në çdo kohë të caktuar dhe të gjithë të tjerët janë të detyruar të presin. Megjithatë, programuesi varet nga prania e një Menaxheri të kujtesës. Ky është një rast i një varësie të bllokuar. Nuk ka asnjë mënyrë standarde për të zgjidhur probleme si kjo; si programues, pritet që të jeni mjaft të aftë për të kuptuar mënyrën e tij të trajtimit të tij.
  • Një sistem operativ mund të jetë gjithashtu miqësor për përdoruesit. Sigurohuni që të shtoni veçori miqësore për përdoruesit, duke i bërë këto një pjesë integrale të dizajnit tuaj.
  • Mos u bashkoni forumet OSDev.org dhe filloni të bëni pyetje të dukshme. Thjesht do të rezultojë në "Lexoni manualin" përgjigjet. Ju duhet të provoni të lexoni Wikipedia dhe manualet për mjetet e ndryshme që dëshironi të përdorni.
  • Mos fillo një projekt i sistemit operativ për të filluar mësimin e programimit. Nëse nuk i njihni tashmë C, C ++, Pascal, ose ndonjë gjuhë tjetër të përshtatshme nga brenda, përfshirë manipulimin e treguesit, manipulimin e nivelit të ulët të bitit, zhvendosjen e bitit, gjuhën e montimit inline, etj., Nuk jeni gati për zhvillimin e sistemit operativ Me
  • Nëse bëni diçka të padëshiruar, si të shkruani byte të rastësishme në portet e rastësishme I/O, ju do të rrëzoni sistemin tuaj operativ dhe mund (në teori) të skuqni pajisjen tuaj.

Recommended: