Onko oman käyttöjärjestelmän tekeminen vaikeaa? Mitä taitoa se vaatii?
Siis millaista osaamista, millaista ajattelukykyä, millaista persoonallisuutta?
Kommentit (51)
Poika on ilmiselvästi fiksu, ja tuntee jo alan terminologiaa jonkin verran ja tietää suunnilleen miten hommat toimii. Ei huonosti 18-vuotiaalta, tulevaisuus näyttää aika valoisalta. Linuxin asentaminen, kiintolevyn osiointi ja kyky käskyttää konetta komentoriviltä ovat taitoja, jotka ovat poikkeuksetta hyödyllisiä taitoja jos aikoo uran (riippumatta tarkasta työnkuvasta) rakentaa IT-alalla.
Mikäli varsinainen käyttöjärjestelmän rakentaminen/tuunaaminen (= yksi vaikeimmista ja siksi kysytyimmistä taidoista) kiinnostaa, niin intohimo on täysin ehdoton edellytys. Toinen ehdoton edellytys on kyky "hakata päätään seinään" kunnes joko pää tai seinä antaa periksi. Käyttöjärjestelmäkehitys on sellainen taiteenlaji, että äitiä tulee nopeasti ikävä.
Rehellisesti, ellei pojalla ole rautainen visio seuraavien parin vuosikymmenen ajalle, niin ensi alkuun kannattaa tyytyä kehittämään natiivisovelluksia jo olemassaolevan käyttöjärjestelmän pohjalle. Klassinen haastava projekti aloittelijalle (1-3 vuoden kokemus) on kehittää kääntäjä jollekin ohjelmointikielelle, tai miksei vaikka keksiä uusi ohjelmointikieli ja kehittää kääntäjä sille.
Käyttöjärjestelmän ehtii kehittämään vaikka sitten 30-vuotiaanakin.
Yhtäkaikki, suosittelen jatko-opintoihin kirjaa https://www.amazon.com/Linux-Kernel-Development-Robert-Love/dp/06723294… . Hyödyllinen, englanninkielinen opas ymmärtämään, miten pinnan alla Linuxin kaltaisen käyttiksen ydin (nk. kernel) toimii yhteistyössä laitteiston (hardware).
Tässä myös hyvä linkki hyvin yksinkertaisen käyttöjärjestelmän rakentamiseen: https://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf
Jos kyse on jostain pienestä harrastus ja opiskeluprojektista tietylle alustalle niin ei se hirvittävän vaikeaa ole.
mitä sä ulilaudan peelo trollaat? Ei ole eka ketju aiheesta
Vaatii konekielen ja tietokoneen toiminnan täydelllistä osaamista.
Onko ydinvoimalan rakentaminen vaikeaa?
Otaniemessä taisi olla joku pieni ydinreaktori, ja sitäkään tuskin oli yksi ihminen tehnyt.
Vierailija kirjoitti:
Ootko koskaan kirjoittanut lataajaa mihinkään arkkitehtuuriin? Siis esim. että ladataa rammiin binääri, esim kun debugataan ohjelmaa mikrokontrollerilla? Kaikki käyttöjärjestelmät alkaa lataajasta, siihen sitten ympätään lisää toiminnallisuutta, esim. että voidaan ladata useita ohjelmia peräkkäin, linkittää ne yhteen joko relokoimalla tai virtuaalimuistilla. Sitten vähän palveluja, tiedostorajapinta, laiteohjainrajapinta tms.
Haikalan kirja "Käyttöjärjestelmät" on hyvä intro aiheeseen tosi yleisellä tasolla.
A-haa? Tämähän on kuin kastikkeen teko, eli kyllä se itse itsensä oikoo...
joos on osaamista, niin voi varmaan jonkinlaisen kyhäelmän tehtä. joskus kivikautella muutama henkilö teki muutamassa vuoodessa jonkinlaisen unixin kaltaisen viritelmän jnkinlaiseen antiikkiseen tietokoneesen.
Vierailija kirjoitti:
Kysyn, koska 18 v lukiolaispoikani latasin linuxin koulukoneelle ja alkoi tekemään sellaista. Kiljui riemusta, kun sai ensimmäisen version toimimaan.
Itse en oikein edes ymmärrä, mikä on käyttöjärjestelmä... siksi kysyn: mitä se kertoo pojastani, että hän kykenee siihen? Siksi kysyn, onko se vaikeaa?
Haluaisin löytää hänestä kehumisen aihetta, koska hänellä on ollut vaikeaa.
Kuulostaa siltä että se on asentanut käyttöjärjestelmän eikä tehnyt sitä. Vähän sama ero kuin kysyisi osaatko tehdä kengät vs osaatko laittaa kengät jalkaan?
Käyttöjärjestelmät on peruskauraa sulautetuissa järjestelmissä. Staattisesti linkattuine taskeineen perusperiaate on aika yksinkertainen, mutta sulava toiminta vaatii hyvää ymmärrystä CPUn, oheislaitteiden ja keskeytysten toiminnasta. Näistä on hyvä aloittaa
Joku tällainen projekti ilmeisesti työn alla?
http://www.linuxfromscratch.org/
"Linux From Scratch is a way to install a working Linux system by building all components of it manually."
Joku Gentoo vastaava perusdistroista.
Sen se teki ensin, jotta pääsi suunnittelemaan grafiikkaa. Jokin musta ruutu ja pyramidi oli esillä.