Så här skapar du ett operativsystem
Operativsystem tillåter användare att interagera med datorhårdvara, och består av hundratusentals kodrader. De skrivs vanligen med följande programmeringsspråk: C, C ++ och Assembly.
steg
1
Lär dig att programmera innan du börjar. Sammansättningsspråk är grundläggande, och det rekommenderas starkt att känna till ett annat lågnivå språk som C.
2
Bestäm vad du vill ladda ner operativsystemet. Det kan vara en diskett, en CD, en DVD, ett flashminne, en hårddisk eller en annan dator.
3
Bestäm vad ditt operativsystem behöver göra. Du måste veta ditt mål från början, oavsett om det är ett operativsystem som är komplett med GUI (grafiskt användargränssnitt) eller ett mer väsentligt system.
4
Välj de plattformar som kan köra ditt operativsystem. Om du är osäker, välj X86-plattformarna (32bit), eftersom de flesta datorer använder X86-processorer.
5
Bestäm om du vill skapa ditt eget system från början eller luta dig på en befintlig kärna. Linux från grunden till exempel är det ett projekt för dem som vill bygga sin egen version av Linux. Läs tipsen för att hitta länken till projektet.
6
Bestäm om du ska använda din Bootloader eller en befintlig som Grand Unified Bootloader (GRUB). Även om du själv skriver upp din egen bootloader kommer du att ge dig mycket information om BIOS och hårdvaran, det kan sakta ner dig i kärnprogrammeringen. Läs avsnittet " tips".
7
Bestäm vilket programspråk som ska användas. Även om det är möjligt att skriva ett operativsystem i BASIC eller Pascal, rekommenderas att du använder C eller Montering. Montering är nödvändig, eftersom vissa väsentliga delar av operativsystemet kräver det. C ++ i stället innehåller sökord som behöver ett komplett operativsystem att köra.
8
Bestäm vilken API (applikationsprogrammeringsgränssnitt eller applikationsprogrammeringsgränssnitt) som ska användas. Ett bra API är POSIX, vilket är väl dokumenterat. Alla Unix-system stöder åtminstone delvis POSIX, så det blir väldigt enkelt att importera Unix-program till ditt operativsystem.
9
Bestäm din design. Det finns monolitiska kärnor och mikrokärnor. De monolitiska kärnorna implementerar alla tjänster i kärnan, medan mikroen har en liten i kombination med demonen (bakgrundsprocesser) hos användaren som genomför tjänsterna. Generellt är monolitiska kärnor snabbare, men mikrokärnor är mer tillförlitliga och fel är bättre isolerade.
10
Utvärdera om du ska utveckla operativsystemet som arbetar i en grupp. På detta sätt kommer processen att bli snabbare och du kommer att minska fel.
11
Ta inte bort hårddisken helt. Kom ihåg, formatera din disk, radera all data och det är en irreversibel process! Använd GRUB eller annan starthanterare för att starta datorn med det dubbla operativsystemet, åtminstone tills datorn är fullt fungerande.
12
Börja från botten. Börja med små saker, som att visa text och raster innan du hanterar aspekter som minnehantering och multitasking.
13
Gör en säkerhetskopia av den senaste arbetskällkoden. Om du gör ett hemskt misstag eller om datorn där du utvecklade systemet misslyckas, är det en bra idé att alltid ha en säkerhetskopia.
14
Testa ditt nya operativsystem med en virtuell maskin. Istället för att kontinuerligt starta om datorn varje gång du vill göra en ändring eller överföra filer från din utvecklingsdator till din testdator kan du använda en virtuell maskin för att köra operativsystemet direkt på din dator. Några exempel på virtuella maskiner: VMWare (som erbjuder en gratis server), Open Source-alternativet Bochs, Microsoft Virtual PC (inte kompatibel med Linux) och xVM VirtualBox. Läs jag "tips" för mer information.
15
Släpp en "provversion". Detta gör det möjligt för användare att berätta problemen med ditt operativsystem.
16
Kom ihåg att ett operativsystem ska vara enkelt att använda för alla användare.
tips
- Börja inte ett operativsystem för att lära sig hur man programmerar. Om du inte redan vet C, C ++, Pascal eller ett annat perfekt programmeringsspråk, inklusive pekermanipulation, liten bitmanipulation, bitskiftning, montering etc., är du inte redo att skapa ett operativsystem.
- Om du vill förenkla saker, överväga att använda Linux-modeller som Fedora Revisor, Custom Nimble X, Puppy Remaster, PCLinuxOS mklivecd eller SUSE Studio och SUSE KIWI. Operativsystemet kommer emellertid att ägas av det företag som erbjöd tjänsten (även om du har rätt att distribuera den, ändra den och köra den under GPL).
- När du är klar med utvecklingen, bestämma om ditt system kommer att vara öppen källkod eller ägda av dig.
- Använd webbplatser som OSDev och OSDever för att hjälpa dig att utveckla. Observera att OSDev.org-samhället för det mesta föredrar att du begränsar dig till att använda sin wiki och inte ställa frågor på forum. Om du bestämmer dig för att gå med i forumet finns det förutsättningar: Du måste känna till C eller C ++ och Assembly x86. Du måste också förstå de allmänna och komplexa koncepten för programmering, till exempel länkade listor, kod etc. OSDev-samhället, i sina regler, förklarar uttryckligen att det inte kommer att vara en barnsitter för oerfarna programmörer. Om du försöker skapa ditt eget operativsystem bör du vara en riktig programmeringsexpert. Du måste också läsa processorns bruksanvisning för att lära dig om processorarkitekturen som är värd för ditt system, t.ex. x86 (Intel), ARM, MIPS, PPC, etc. Du kan enkelt hitta dem på Google. Registrera inte på forumet för OSDev.org att fråga triviala frågor. Du kommer att få oförskämda svar och ingen kommer att hjälpa dig.
- Det kan vara en bra idé att skapa en ny partition för utveckla operativsystemet.
- Försök att identifiera problem och fel.
- För mer information, besök dessa källor.
- manualer: Linux från grunden
- bootloader: GRUB
- Virtuella maskiner: bochs, VM Ware, XM Virtual Box.
- Processorhandböcker: Handböcker från Intel
- Webbplatser på utvecklingen av operativsystem: OSDev, OSDever
varningar
- Du kommer inte att kunna skapa ett komplett och fungerande system inom två veckor. Försök att skapa ett system som startar först, sedan går vidare till mer avancerade aspekter.
- Om du gör något dumt, som att skriva slumpmässiga byte på slumpmässiga I O-portar, kommer du att krascha ditt operativsystem, och du kan (i teorin) förstöra din hårdvara. För en demonstration, kör "cat / dev / port" på Linux som root. Din dator kommer att krascha.
- Var noga med att genomföra säkerhetsåtgärder om du vill använda ditt operativsystem.
- Att köra ett dåligt skrivet operativsystem kan korrumpera din hårddisk helt och hållet. Var uppmärksam.
- Tro inte på att det är enkelt att programmera ett operativsystem. Det finns ofta invecklade ömsesidiga beroende. Till exempel, för att skapa ett operativsystem som kan hantera flera processorer, måste ditt minneshanteringsprogram lyckas blocket resurserna som används av en processor så att de inte kan komma åt två processorer samtidigt. För att skapa dessa block Du behöver en schemaläggare för att hantera processorns aktivitet. Schemaläggaren beror i sin tur på närvaron av ett minneshanteringsprogram. Detta är ett fall av missbruk. Det finns inget standardförfarande för att lösa problem som detta - varje operativsystemprogrammerare måste kunna hitta en personlig lösning för denna typ av problem.
Saker du behöver
- En bra dator.
- En CPU för arkitekturen du kommer att utveckla.
- Tillräcklig RAM för att köra en virtuell maskin.
- Ett "värd" operativsystem för att utveckla de första stegen i ditt nya operativsystem.
- En kodredigerare med färger för olika syntaxer.
- En kompilator
- En diskettstation (tillval)
Dela på sociala nätverk:
Relaterade
- Så här ändrar du lösenordet för din användarprofil i Linux
- Hur man gör första stegen i programmering
- Så här konfigurerar du en skrivarserver
- Så här kontrollerar du operativsystemet på en dator
- Så här skapar du en konfigurationsfil för Crontab i Linux
- Hur man skapar ett program i C
- Så här avinstallerar du Windows 8.1
- Så här kör du Linux på Mac
- Så här installerar du två operativsystem på samma dator
- Så här installerar du Gimpshop
- Så här installerar du Ubuntu
- Så här installerar du Ubuntu 8.10
- Så här installerar du Windows 7 på ett system med Windows 8
- Så här installerar du Linux-operativsystemet på en flash-enhet och installerar de bärbara…
- Så här installerar du ett nytt operativsystem på din dator
- Så här installerar du ett operativsystem på en ny dator
- Hur man väljer mellan Apple Bootcamp och Parallels
- Hur man väljer ett operativsystem
- Så här använder du Linux
- Så här använder du ett operativsystem från en USB-flash-enhet
- Hur man använder en USB-minne som en hårddisk