Krav på PC för att Programera OS i C++ express 2010???

Permalänk
Medlem

Krav på PC för att Programera OS i C++ express 2010???

Hej!
Jag hade tänkt och prova mina erfarenhet av programmering ett experiment eget Operativsystem i Visual Basic c++ Express 2010.
Vad ska man ha för typ av dator och hårdvara i lådan? kanske en bärbar? för att programera egna operativsystem med VB c++ Express 2010?

tack på förhand

Permalänk
Medlem

Läs detta: http://www.joelgompert.com/OS/TableOfContents.htm

Och du kommer inte använda C++ till en början, du måste bekanta dig med ASM. Det bästa är kanske att börja på en enklare arkitektur som t.ex. MIPS ( Sitter i Playstation 1 t.ex. ).

Permalänk

VB c++ Express 2010? Det är två olika språk, visual basic kör väl med bytekod, men visst går det göra ett virtuellt operativsystem inuti windows. (beroende på hur man nu definitioner ett operativsystem)
Angående c++ så är går det med de vanliga systemkraven,
http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvcs/th...
(rekommenderas minst)
1.6 GHz or faster processor
1024 MB RAM (1.5 GB if running on a virtual machine)
3 GB of available hard-disk space

Angående koda operativsystem, så är mitt tips att börja med att slänga ihop en schemaläggare på en mikrodator t.ex. Atmel Avr, där du kan starta olika trådar och styra dem. Koppla till någon form av input och utport, så man kan styra vilka program som ska göras. Det går även slänga ihop något filsystem.

Det finns även färdiga kraftigare mikrodatorer att köpa t.ex. EvoPrimer http://www.stm32circle.com/hom/index.php
(jag har föregående versioner) där det finns ett färdigt os som du kan leka med om du vill. Vilket är betydligt enklare än att ge sig på och koda ett os till en persondator som man troligtvis inte kommer ha någon användning till.

Visa signatur

[Core i7-3930K med 32GB ram, 2*256GB SSD] & [Core i7 3770K med 16 GB RAM, 256GB SSD] som tillsammans har ett [HD 5850 1GB] och 3st 24".

Permalänk
Medlem

Om du absolut vill programmerare mot X86 är ett annat tips att inte göra ett helt os. Kör t.ex. på linux kerneln och bara göra ett shell eller bara en bootloader.

Visa signatur

citera!

Permalänk
Medlem

Faktablad / böcker?

Tack för alla råd!
Men jag undrar vilka böcker behöver jag köpa, så som fakta blad ger mig erfarenhet att bygga eget OS from Grund?
Kan ni namn ge några böcker om grund och mellan kurs och advance kurs?
P/S Jag tänkte bygga en grafisk OS, som har menyer och fönster, klocka. exakt som dagens OS men bara eget brand för egen Use liksom
Jag har någon typ av kernel som jag har laddat ner some heter Tinkernut

Permalänk
Medlem

I så fall kan du väl lika gärna köra på linux from scratch och göra en egen skrivbordsmiljö.

Visa signatur

citera!

Permalänk
Medlem

Lägg ner projektet, det är en jäkla massa jobb som kräver höga till mycket höga kunskaper - långt ifrån var du är idag. Börja göra ett eget program, sen kan du börja modda nån skrivbordsmiljö till linux tex. openbox.

Permalänk
Medlem

Har inga egenskaper om det? hur och vart börjar jag med det?

Permalänk
Medlem

Endel av beståndsdelarna i ett simpelt OS:
BOOTLOADERN:
----------------------------------------------------------------------
STEG 1:
Hitta steg2 och läs in dess sektorer in i RAM i CHS format från något lagringsmedium(floppy,dvd,cdrom etc).
----------------------------------------------------------------------
STEG 2:

Aktivera GDT som beskriver minnesåtkomst.
Aktivera a20 så att man kan accessa allt minne.
Aktivera "Multiboot information structure" så att man kan skicka information från bootloadern till kerneln.
Aktivera protected-mode så att processorn hamnar i 32-bitars läge.

Ladda kerneln.
----------------------------------------------------------------------
KERNELN:

Aktivera IDT & remappa PIC'en, så att IRQ från olika enheter fungerar.
Aktivera GDT ännu en gång med korrekta deskriptorer.
Installera Timern(PIT, systemklockan!) så att avbrottshanteraren fungerar.
Aktivera Paging som är en form av "blockmässig" minneshantering för virtuellt minne.
installera Heap'en så att man kan dynamiskt allokera minne med malloc, väldigt användbart.
Aktivera Multitasking så att man kan switcha mellan olika "task" som ochså beror på schedulern.
Installera drivrutiner för externa enheter såsom mus & tangentbord.
Switcha till VM86-task som ska hitta BIOS funktioner för VBE/VESA. http://wiki.osdev.org/Virtual_8086_Mode
Specifiera attribut för VESA, vilken upplösning ska användas?
Aktivera Doubelbuffer support med malloc, som tar bart flimmer osv.http://wiki.osdev.org/Double_Buffering
Switcha till videoläget.
Rensa skärmen.
Rita en cirkel från en pixelfunktion utifrån Modeinfoblock strukturen, som använder sig av FPU, dvs flyttalsberäkningar.

----------------------------------------------------------------------
Lättare sagt än gjort