Jag skulle vilja skapa ett eget os.
Ja jag vet att det är super komplicerat men jag vill ändå försöka. Så snälla skriv inte om hur omöjligt det är!
Är det möjligt??
Hur?? :l
Guider?? :D
Eget os?
22 svar · 1 560 visningar · startad av orson
Bara genom att du skriver:
HUR?
GUIDER?
Så fattar du väl själv att du aldrig kommer lyckas skapa ett fungerande OS...
ta en linux-kärna och bygg på något trevligt
Det finns redan ett OS för dig. It's called the Special Olympics.
Ja, det är möjligt, men det är mycket jobb med det. Först och främst behöver du en bra emulator som t.ex. bochs. Sen är det bara att dra igång och försöka skriva "hello world" eller liknande till att börja med.
En detaljerad analys av Linux-kärnans interna funktion:
http://www.faqs.org/docs/Linux-HOWTO/KernelAnalysis-HOWTO.html
Kolla in version 1 och 2 av Minix, som är skrivna i utbildningssyfte.
http://minix1.woodhull.com/
Tro det eller ej, men det är inte första gången frågan varit uppe. Och även om det kan låta som en "dum" fråga finns det mycket att lära här. Tanken är nog inte att skriva ett OS för allmänt bruk att ersätta windows/linux/whatever med, men det ger nog en väldigt bra inblick i hur en dator är uppbyggd. Kan tänka mig att det finns ett gäng examensprojekt i ämnet.
Jag skulle vilja skapa ett eget os.
Ja jag vet att det är super komplicerat men jag vill ändå försöka. Så snälla skriv inte om hur omöjligt det är!
Är det möjligt??
Hur?? :l
Guider?? :D
Det är nog en ganska stor process. Om vi skall prata guider, så rör det sig nog mer om att först:
1 ) Införskaffa sig en god kunskap teoretisk matematisk kunskap inom ex:
Algoritmteori, Beräkningsteori, Komplexitetsteori, Kompilatorteori och Lexikal analys
2 ) Införskaffa sig en god kunskap inom något av dagens programmeringsspråk som kan vara dugliga för ändamålet, ex C++.
För att sedan hugga in i den "roliga" biten!
Den mer praktiska biten kan vara att utgå ifrån ex. Linux-kärna, dvs inte bygga sitt eget OS med sin egen kärna, utan bygga på ett skall på en redan befintlig kärna, ex. Linux-kärnan.. Med andra ord skapa sin egen linux-dist. :)
Beror helt och hållet på hur pass djupt man vill gå.
1 ) Egen kärna (tidsam, arbetsam och mycket mycket krävande väg)
2 ) Bygga på en redan befintlig kärna. (tidsam, arbetsam, men en enklare väg)
Tro det eller ej, men det är inte första gången frågan varit uppe. Och även om det kan låta som en "dum" fråga finns det mycket att lära här. Tanken är nog inte att skriva ett OS för allmänt bruk att ersätta windows/linux/whatever med, men det ger nog en väldigt bra inblick i hur en dator är uppbyggd. Kan tänka mig att det finns ett gäng examensprojekt i ämnet.
Håller helt med.
Jag kommer ihåg att när jag pluggade så gjorde jag ett gäng labbar i den riktningen.
En gick ut på att "simulera" ett filsystem.
Dvs i ett högnivåspråk skriva kod som hanterade "filer". Som ju då i verkligenhetn hanterades av Solaris OS, men det spelade ju ingen roll, man fick själv trixa med Filallokering, katalogstrukturer osv.
Och en annan labb gick utt på att i assembler skriva kod för filhantering åt en motorola HC11 8bits processor på en 3,5 diskett.
I verkligenheten "gav det ju inget" Inget av det funkar ju att använda "på riktigt" men var nog väldigt nyttigt.
Så visst kan man börja leka med att skriva OS på ett eller annat sätt. Sen håller jag ju givetvis med stora flertalet aom akrivit här att antalet timmar som skulle gå åt för att skriva ihop ett helt färdigt och komplett OS för mer eller mindre allmäntbruk skulle vara så många att det inte skulle vara någon idé . Men å andra sidan vad är det som säger att Linus skulle vara den ende i världen....
Hans första releaser var faktiskt inget vidare, men det gick ju ok för det projektet så småningom ändå.
/pebi
Det finns faktiskt en riktigt gammal bok som jag tror heter "En dators födelse" tracy kidder något.
Jag läste den med glödande ögon i min begynnelse inom datavärlden.
Intressant för att få det hela klart för sig om starten av ett Os.
Här kan man läsa lite om en annan start som jag var med om! Fast då hade jag redan byggt en LYS-16
http://www.hultsfred.org/luxor.htm
Var kan jag hitta en linux-kärna?
Jadu orson, detta med datorer och Os kan nog bli svårt om man skall börja med att lära sig läsa, eller paddla som det heter numera ;-))
http://www.kernel.org/
Tack så mycket
Spännande, verkligen imponerande att pyssla med sånt här, önskar man kunde komma med något tips, men hursom, hoppas du senare kanske kan skriva en artikel i ämnet? Jag har själv ett mystiskt uppbyggt OS som en kille gjort, och som jag fortfarande lär mig av, han har hållit på med det sedan slutet av 90 talet iofs, är lite av en försöks(OS)person där, hehe.. Lycka till orson! (:
Tack!
orson - den här: http://www.os-book.com/ är inte heller så dum ;)
Du orson, skulle du vilja skriva några rader om vad du har gjort tidigare i datavärlden och varför du skriva ett Os. Kan bli intressant för oss och lättare att tipsa dig på din väg.
Boken om Linus Thorvald är ganska intressant att läsa. Det är en bra väg.
Jag vet inte riktigt om jag ska börja med ett os än.
Jag håller nämligen på med ett litet programmerings språk så jag börjar nog med det och sen börjar jag med mitt os.k
Jag vill göra ett os för att jag vill lära mig mer om hhur ett os är uppbyggt.
Men när jag börjar med mitt os så ska jag göra mitt bästa föt att hålla er uppdaterade =D
Det är ett nyttigt projekt att göra ett OS. På många universitet gör man det i OS-kursen. Vi i Uppsala gjorde ett litet OS i tvåan.
Jag tror att den här kan vara bra, som sagt: http://bochs.sourceforge.net/