Hvernig á að forrita mjög eigið stýrikerfi (OS)

Birting: Stuðningur þinn hjálpar til við að halda vefnum í gangi! Við þénum tilvísunargjald fyrir sumar þjónusturnar sem við mælum með á þessari síðu.


Það eru í raun ekki nein þróunarsvið krefjandi en þróun stýrikerfis (OS). Það er „mikill hápunktur forritunar.“

Fáir forritarar reyna alltaf að byggja upp stýrikerfi og margir þeirra sem gera tilraunina framleiða aldrei starfhæft kerfi.

Hins vegar, ef þú nærð þér alla leið að marki og framleiðir starfhæft stýrikerfi, muntu hafa bæst í elítan hóp toppflug forritara.

Hvað er stýrikerfi?

Elstu tölvur voru ekki með stýrikerfi.

Sérhver forrit sem keyrði á þessum fyrstu kerfum þurfti að innihalda allan þann kóða sem nauðsynlegur er til að keyra tölvuna, eiga samskipti við tengdan vélbúnað og framkvæma útreikninginn sem forritinu var í raun ætlað að framkvæma. Þetta ástand þýddi að jafnvel einföld forrit voru flókin.

Eftir því sem tölvukerfi voru fjölbreytt og urðu flóknari og öflugri varð það æ óhagkvæmara að skrifa forrit sem virkuðu bæði sem stýrikerfi og gagnlegt forrit.

Til að bregðast við fóru einstakir aðalrammatölvueigendur að þróa kerfishugbúnað sem auðveldaði að skrifa og keyra forrit og stýrikerfi fæddust.

Stýrikerfi (OS) er hugbúnaður sem heldur utan um tölvuvélbúnað og kerfisauðlindir og veitir tækin sem forrit þurfa að nota. Fæðing stýrikerfanna þýddi að ekki þurfti lengur að skrifa forrit til að stjórna öllu umfangi tölvuaðgerðar.

Í staðinn væri hægt að skrifa tölvuforrit til að vera rekin af stýrikerfinu á meðan stýrikerfið hafði áhyggjur af tölvuauðlindum og tengdum jaðartækjum svo sem prentara og kýluðum pappírskortslesurum.

Stutt saga um stýrikerfi

Fyrsta stýrikerfið var búið til af General Motors árið 1956 til að keyra eina IBM mainframe tölvu. Aðrir IBM aðalrammaeigendur fylgdu í kjölfarið og stofnuðu sín eigin stýrikerfi.

Eins og þú getur ímyndað þér voru elstu stýrikerfin mjög breytileg frá einni tölvu til annarrar, og þó þau gerðu það auðveldara að skrifa forrit leyfðu þau ekki að nota forrit á fleiri en eina aðalrammann án fullkomins umritunar.

Á sjöunda áratugnum var IBM fyrsti tölvuframleiðandinn til að taka að sér verkefnið við þróun stýrikerfisins og hóf dreifingu á stýrikerfum með tölvum sínum.

Hins vegar var IBM ekki eini framleiðandinn sem bjó til stýrikerfi á þessum tíma. Control Data Corporation, Computer Sciences Corporation, Burroughs Corporation, GE, Digital Equipment Corporation og Xerox gáfu öll út stýrikerfi aðalframa á sjöunda áratugnum.

Seint á sjöunda áratugnum var fyrsta útgáfan af Unix stýrikerfinu þróuð. Unix var skrifað í C og fáanlegt á fyrstu árum þess og var auðveldlega flutt í ný kerfi og náði fljótt víðtækri samþykki.

Mörg nútíma stýrikerfi, þar á meðal Apple OS X og öll Linux bragðtegundir, rekja rætur sínar til Unix.

Microsoft Windows var þróað sem svar við fyrirspurn frá IBM um stýrikerfi til að keyra svið einkatölva.

Fyrsta stýrikerfið sem smíðað var af Microsoft hét ekki Windows, það var kallað MS-DOS og var smíðað árið 1981 með því að kaupa 86-DOS stýrikerfið frá Seattle tölvuvöru og breyta því til að uppfylla kröfur IBM.

Nafnið Windows var fyrst notað árið 1985 þegar myndrænt notendaviðmót var búið til og parað við MS-DOS.

Apple OS X, Microsoft Windows, og hinar ýmsu tegundir Linux (þ.m.t. Android) skipa nú langflestum nútíma stýrikerfismarkaði.

Hlutar stýrikerfisins

Stýrikerfi eru byggð úr tveimur meginhlutum:

  • Kjarninn;
  • Kerfisforrit.

The kjarna er hjarta stýrikerfisins. Það er fyrsta forritið sem hlaðið er þegar tölvan ræsir, hún heldur utan um tölvuauðlindirnar og hún meðhöndlar beiðnir frá kerfisforritum og forritum.

Kerfisforrit keyrðu ofan á kjarna. Þeir eru ekki notaðir til að vinna gagnlega vinnu, heldur eru þau forrit sem nauðsynleg eru til að tengja kjarnann við notendaforrit og jaðartæki. Tækjabílstjóri, skráarkerfi, netforrit og kerfisveitur eins og disfragmeters fyrir diska eru öll dæmi um kerfisforrit.

Umsóknarforrit eru ekki hluti af stýrikerfinu og eru forritin sem notuð eru til að framkvæma gagnlegar vinnu. Ritvinnsluforrit, vafrar og fjölspilari eru algengar tegundir forrita. Forritunarforritum er stjórnað og gert kleift af kjarnanum og nota kerfisforrit til að fá aðgang að tölvu jaðarbúnaði og vélbúnaði.

Það sem þú þarft að vita

Listinn yfir hluti sem þú þarft að vita áður en þú reynir að taka upp stýrikerfi er mjög langur. Þrír mikilvægustu hlutirnir sem þú þarft að ná tökum á áður en þú hoppar í þróun OS eru:

  • Grunnþekking tölvunarfræði;
  • Tölvuforritunarkenning og bestu venjur;
  • Lágt stig og forritunarmál á háu stigi.

Lærðu tölvunarfræði

OS þróun er ekki eins og þróun á vefnum. Það er ekki eitthvað sem þú getur hoppað inn í og ​​lært eins og þú ferð. Þú verður að þróa traustan grunn í tölvunarfræði áður en þú ferð yfir í önnur efni.

Hér eru nokkur úrræði til að koma þér af stað:

Coursera: tölvunarfræði 101 er námskeiðið sem þú ættir að taka fyrst ef þú ert glæný á sviði forritunar og tölvunarfræði.

Ef þú hefur smá þekkingu og reynslu undir belti skaltu sleppa þessu námskeiði í þágu Udacity edX valkosta. Hins vegar, ef þú ert glæný á þessu sviði, tekur þetta námskeið ekki áður reynslu til að kynna tölvunarfræði og forritunarefni.

Dyggð: Inngangur að tölvunarfræði tekur þróun á vefnum við kennslu tölvunarfræði. Þó það eigi ekki beint við um möguleika á að byggja upp stýrikerfi er þetta traust námskeið sem skilar gagnlegum upplýsingum og gefur góða yfirsýn yfir grunnatriði tölvuforritunar.

edX: Kynning á tölvunarfræði er fullkomnasta og ítarlegasta námskeið tölvunarfræðinnar á þessum lista. Þetta ókeypis, sjálfsbjarga námskeið var hannað af Harvard háskóla og speglar innihaldið sem kynnt er á námskeiðinu með sama nafni og boðið er upp á háskólasvæðið í Harvard háskóla.

Á þessu víðtæku námskeiði lærir þú um reiknirit, gagnaskipulag, auðlindastjórnun, hugbúnaðarverkfræði og skoðar forritunarmál eins og C, PHP og JavaScript.

Lærðu tölvuforritun

Með traustum tökum á tölvunarfræði undir belti og nokkur takmörkuð reynsla af forritunarmálum er næsta skref að læra að takast á við stórfelld forritunarverkefni.

Udacity: þróunarferli hugbúnaðar er frábært námskeið sem allir ættu að taka ef þeir hafa aldrei ráðist í stórar og ögrandi forritunarverkefni áður. Á þessu námskeiði lærir þú verkflæði og stjórnunartæki og tækni eins og Git og hvernig á að setja upp samþætt þróunarumhverfi.

Lærðu forritunarmál

Til að þróa stýrikerfi þarftu að læra að minnsta kosti tvö forritunarmál:

  • Tungumál samkomumála;
  • Háttsett forritunarmál.

Tungumál samsetningar eru notuð til að hafa samskipti beint við CPU. Hver tegund af CPU talar vélin tungumál og það er bara eitt samsvarandi samsetningar tungumál fyrir hverja tegund af CPU. Algengasta tölvuarkitektúrinn er x86, hann var upphaflega þróaður af Intel og er nú notaður af ýmsum framleiðendum tölvuflokka þar á meðal AMD, VIA og mörgum öðrum. Í þessari handbók munum við benda þér í þá átt að læra x86 samkomutungumál.

Háttsett forritunarmál vinna með mörgum tölvuarkitektúrum. C er það forritunarmál sem oftast er notað og mælt með til að skrifa stýrikerfi. Af þessum sökum ætlum við að mæla með því að læra og nota C til OS þróun. Hins vegar er einnig hægt að nota önnur tungumál eins og C ++ og Python.

x86 Þingmál

The x86 þingvísi er frábær staður til að byrja að læra samkomutungumál. Þetta stutta skjal veitir stutta yfirlit yfir x86 samsetningar tungumál og mun setja sviðið fyrir fullkomnari úrræði sem þú munt flytja til næsta.

Forritun frá grunni eftir Jonathan Bartlett er ein af bókum sem skilgreina landslag samsetningarinnar. Þessi bók notar samsetningarmál sem grunn til að læra tölvunarfræði og forritun. Þessi úrræði er einnig fáanleg á internetinu.

Listin yfir þingmálið eftir Randy Hyde er annar helgimyndaður texti í heimi tungumálanámsins. Textinn, sem upphaflega var skrifaður fyrir forritunarnámskeið Hyde í Cal Poly og UC Riverside, var gefinn út sem HTML rafbók um miðjan tíunda áratug síðustu aldar og er viðurkenndur sem skilgreinandi verk á þessu sviði. Textinn er einnig hýst sem röð PDF skráa af Yale FLINT Group.

Ef þú vilt nota hefðbundna kennslubók til að læra um x86 samkomutungumál eru tveir oftast notuðu og mjög mælt með textunum:

  • Þingmál þings fyrir skref: Forritun með Linux eftir Jeff Duntemann;
  • Modern X86 Assembly Language Programming by Daniel Kusswurm.

C

Það eru mörg forritunarmál á háu stigi sem þú gætir lært og mörg mismunandi úrræði sem þú gætir notað til að læra þau. Tilmæli okkar og þau tilmæli sem OS þróunarsamfélagið hefur oftast endurspeglað er að læra C og við höfum fundið nokkur frábær úrræði sem munu gera þig að bærum C forritara.

Fáðu skjótt yfirlit yfir forritunarmál C með því að klára þetta C kennsla. Þessi úrræði mun ekki gera þig að sérfræðingi, en það mun veita þér góðan grunnskilning á tungumálinu og búa þig undir að takast á við krefjandi efni og úrræði.

Lærðu C the Hard Way er ókeypis HTML bók sem inniheldur margar æfingar. Þessi texti stígur þig alla leið í C forritunarmálinu, og ef þú leggur þig í verkið, tekur þér tíma og lýkur öllum æfingum, þá verðurðu á góðri leið með að vera bær C forritari þegar þú kláraðu þessa kennslu.

Ef hefðbundin kennslubók er eitthvað sem þú ert líklegri til að vinna þig í gegnum, eru þessir tveir textar sumir vinsælastir til að ná tökum á C forritunarmálinu.

  • C forritunarmálið eftir Kernighan og Ritchie;
  • C Forritun algeran byrjendahandbók eftir Perry og Miller.

Tutorials OS þróun

Þegar þú hefur náð tökum á grundvallarhugmyndum tölvunarfræði og forritunar og hefur náð góðum tökum á samsetningarmálinu og C, er næsta skref að ljúka einni eða tveimur OS námskeiðum varðandi þróun sem ganga í gegnum allt ferlið við að þróa einfalt stýrikerfi frá grunni. Við fundum þrjú frábær úrræði sem gera einmitt það.

Linux frá grunni mun leiða þig í gegnum ferlið við að byggja upp fullkomið Linux stýrikerfi. Alveg þessi kennsla mun ekki framleiða fullgilt stýrikerfi, en það mun gefa þér traustan kóða sem þú getur byggt upp fullkomið stýrikerfi. Takast á við háþróað námskeið eins og Beyond Linux frá Scratch, Sjálfvirk Linux frá Scratch, Cross Linux frá Scratch eða Hardened Linux frá Scratch til að byggja grunnkerfið þitt í gagnlegt stykki af hugbúnaði.

Litla bókin um þróun OS eftir Erik Helin og Adam Renberg var þróaður sem hluti af háþróaðri tölvunarfræðibraut sem höfundarnir luku meðan nemendur voru Konunglega tæknistofnunin í Stokkhólmi. Þetta námskeið gengur í gegnum allt ferlið við að þróa x86 stýrikerfi með því að byrja með að setja upp forritunarumhverfi, ná hámarki í forritun fyrir fjölverkavinnsla og slá á efni eins og að stjórna minni kerfisins og þróa skráarkerfi á leiðinni.

Stýrikerfi þróun röð frá Broken Thorn Entertainment er röð 25 námskeiða sem leiða þig í gegnum ferlið við að búa til stýrikerfi frá grunni. Byrjendur varast: þessi röð gerir ráð fyrir að þú veist nú þegar um IDE og ert bær C og samsetningarfræðingur forritari.

Það eru margir textar sem þú getur notað til að læra um aga þróun OS. Þrjú af þeim sem oftast er mælt með eru:

  • Nútíma stýrikerfi eftir Tanenbaum og Bos;
  • Hönnun UNIX stýrikerfisins eftir Maurice Bach;
  • Stýrikerfi hugtök af Silberschatz, Galvin og Gagne.

Þróunarfélög OS

Þegar þú byrjar að ferðast um að gerast OS verktaki eru nokkrir staðir þar sem þú getur fundið aðra forritara til að læra af og vinna með:

  • OSDev.org er wiki með miklar upplýsingar um OS þróun og vettvang þar sem þú getur mætt og fengið álit frá öðrum eins hugarfar forriturum.
  • OS Development Channel á reddit er frábært samfélag þar sem þú getur lært um þróun OS og notið augnabliks af álagningu þegar verkefni OS þróun verður svolítið erfitt..
  • Tölvunarfræði, forritarar og StackOverflow frá StackExchange eru staðir sem þú getur stillt öðrum forriturum tæknilegar spurningar þegar þú lendir í vandræðum sem þú getur ekki séð út úr þér.

Yfirlit

Að læra þróun OS er eitt af mest krefjandi forritunarverkefnum sem þú getur ráðist í. Samt sem áður, ef þú tekst að vinna að því að byggja upp starfandi stýrikerfi mun það merkja þig sem hæfan forritara og sá sem skilur djúpt hvernig örgjörvar, vélbúnaður og tölvuforrit vinna saman að því að skapa það sem umheimurinn tekur sem sjálfsögðum hlut sem starfandi tölva.

Næstu skref – Ertu að leita að vefþjón? Sjá handbók okkar um hýsingu á vefnum & gestgjafar okkar sem mælt er með.

Sjá einnig aðrar handbækur okkar um forritunarmál.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map