Hoe en in welke taal programmer je een Os

Pagina: 1
Acties:
  • 116 views sinds 30-01-2008
  • Reageer

  • ocke
  • Registratie: Juni 2000
  • Laatst online: 15-09-2024
Hoe en in welke taal prg je een os? Hoe meot je aan zoiets beginnen. Ik dacht daar laatst opeens aan, en had eigenlijk geen flauw idee.

Ik kan wat pascal en delphi programern, maar hoe zou je daar bijvoorbeeld een os in kunnen maken ... Gaat dat uberhaubt wel???

Verwijderd

Ik ben toch echt bang dat je een assembly language als absolute basis moet hebben, anders wordt het nooit een stand-alone os.

Ik probeer je niet te ontmoedigen, maar verwacht er maar niet teveel van.

Verwijderd

Je moet eerst een assembly-basissysteem hebben. daar maak je dan een C-compiler voor, en daarin schrijf je de rest van de programas. Delphi ed. zullen niet werken om een degelijk basissyteem op poten te zetten.

  • DiSiLLUSiON
  • Registratie: September 2000
  • Laatst online: 02-10 09:07
ASM voor de bootloader en dergelijke.. maar verder zal C ook wel voldoende zijn denk ik? voor de wat minder diepe dingen?

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

paar hondered regels assembler en verder wat je wilt. C in *nix, windows verdenk ik van C++ :)

  • ocke
  • Registratie: Juni 2000
  • Laatst online: 15-09-2024
ik ben het niet van plan ofzo (alhoewel me het toch wel stiekum tof lijkt)... maar het was zo maar ff een vraagje.

krijgen we dadelijk: ockesoft :-)

Verwijderd

Cobol :o

Nee even serieus, zoals al genoemd moet je in ieder geval assembly beheersen en daarnaast ook C. (Zie linux)
De kernel is meestal een mix van assembly en C.

Daarnaast kun je in een later fase applicaties schrijven met bijvoorbeeld een OO-programmeertaal.

  • ocke
  • Registratie: Juni 2000
  • Laatst online: 15-09-2024
Toch nog best lastig lijkt me zo.... Met assembler gaan romellen..

Maar ik zou zo graag eens willen proberen of je je systeem niet eens "slim" zou kunnen gebruiken. Neem nou het kopieeren van een diskette ofzo.. Niet dat de pc eerste die mietige 1.4 mb in je geheugen zet... nee.. hij doet dat steeds met 20 kb ofzo (weet neit hoeveel.. maar niet al te veel). Met als gevolg dat het maar duurt en duurt...

En ook defragmanteren... zet ie dat steeds ergens op je hdd.. neit dat ie mijn 256 mb daar voor gebruikt.. nee hoor...

Verwijderd

Tanenbaum, 'Operating systems: design and implementation'

Verwijderd

ik zat te denken aan JAVA

Verwijderd

Op vrijdag 12 oktober 2001 22:05 schreef BrainDamage het volgende:
ik zat te denken aan JAVA
Hihi :)

  • Varienaja
  • Registratie: Februari 2001
  • Laatst online: 14-06 16:43

Varienaja

Wie dit leest is gek.

Op vrijdag 12 oktober 2001 21:17 schreef ocke het volgende:
En ook defragmanteren... zet ie dat steeds ergens op je hdd.. neit dat ie mijn 256 mb daar voor gebruikt.. nee hoor...
Dat kan haast niet anders, want je zou data kunnen verliezen als je opeens je pc uit zet (al dan niet vrijwillig).

Siditamentis astuentis pactum.


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 02:31

Gerco

Professional Newbie

Op vrijdag 12 oktober 2001 22:05 schreef BrainDamage het volgende:
ik zat te denken aan JAVA
Het klinkt maf, maar dat is een vrij aardig idee. Het enige wat je dan 'even' moet doen is een JVM in assembly proggen. Aardig is het idee wel, maar uitvoerbaar?

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Op vrijdag 12 oktober 2001 22:19 schreef Varienaja het volgende:

[..]

Dat kan haast niet anders, want je zou data kunnen verliezen als je opeens je pc uit zet (al dan niet vrijwillig).
\

als de PC nou inf van HD in geugen zet kopieerd naar goede plek en vervolgens delete ??

Verwijderd

Kwam je "toevallig" op het idee toen je TriangleOS zag :)

  • Exirion
  • Registratie: Februari 2000
  • Nu online

Exirion

Gadgetfetisjist

Op vrijdag 12 oktober 2001 22:03 schreef joska het volgende:
Tanenbaum, 'Operating systems: design and implementation'
Dan wel 2nd Edition ;)

"Logica brengt je van A naar B, verbeelding brengt je overal." - Albert Einstein


  • stylee
  • Registratie: December 2000
  • Laatst online: 04-09-2021

stylee

blah zeg ik je

Ik heb deze vraag weleens eerder gesteld maar nooit echt antwoord op gehad.

Ik ben op zoek naar een goed boek/online werk over assembly programming.. nou zie je niet gek veel assembler boeken in de boekenhandel dus die wil ik (als het kan) ook graag online bestellen.

Nu heb ik hier wel wat interessants gevonden maar ik vraag me af in hoeverre dit toepasbaar is in de praktijk (maw: kan iemand met verstand van assembly er even naar kijken :))

thx

Verwijderd

Op vrijdag 12 oktober 2001 22:33 schreef Exirion het volgende:

[..]

Dan wel 2nd Edition ;)
Eventueel. De hele source van minix staat in het boek. Lekker matteriaal. :)

Verwijderd

Als je de basis wil leren kennen van een besturingssyteem moet je hier maar eens kijken : http://www.linuxgrill.com/anonymous/kernel/historic/

Je vind er een hoop oude linux sources, zodat je je een beetje een idee kan vormen hoe je eraan kan beginnen (mocht je daar nog zin in hebben na het lezen van alles wat daar staat ;) )

Verwijderd

Op vrijdag 12 oktober 2001 23:45 schreef grand.lord.of.chaos het volgende:
Als je de basis wil leren kennen van een besturingssyteem moet je hier maar eens kijken : http://www.linuxgrill.com/anonymous/kernel/historic/

Je vind er een hoop oude linux sources, zodat je je een beetje een idee kan vormen hoe je eraan kan beginnen (mocht je daar nog zin in hebben na het lezen van alles wat daar staat ;) )
wel even c leren! :)

Verwijderd

Op vrijdag 12 oktober 2001 22:05 schreef BrainDamage het volgende:
ik zat te denken aan JAVA
Een paar jaar terug waren er nog plannen voor een processor die native Java VM zou snappen. Nooit meer iets van gehoord...

Verwijderd

Op zaterdag 13 oktober 2001 00:00 schreef Afterlife het volgende:

[..]

Een paar jaar terug waren er nog plannen voor een processor die native Java VM zou snappen. Nooit meer iets van gehoord...
Java is nou eenmaal te langzaam

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Op zaterdag 13 oktober 2001 00:05 schreef joska het volgende:

[..]

Java is nou eenmaal te langzaam
-1 niet onderbouwde flame

[mijn nekharen blijven overeind schieten bij dit soort opmerkingen, had ik niet van jouw verwacht joska!]

  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 22-12 17:43

Altaphista

1. check manual, 2. ask

Op school zijn we verplicht bezig met een o zo schitterende (NOT) os : XINU (ook geschreven mbv assembler)

Ik denk dat je sowieso in die richting een basis moet schrijven voordat je echt bezig kunt.

en JAVA is niet langzaam!

Je gaat het pas zien als je het doorhebt.


Verwijderd

Op zaterdag 13 oktober 2001 00:11 schreef wasigh het volgende:

[..]

-1 niet onderbouwde flame

[mijn nekharen blijven overeind schieten bij dit soort opmerkingen, had ik niet van jouw verwacht joska!]
wasigh, is het niet waar dan?

Verwijderd

Op zaterdag 13 oktober 2001 00:12 schreef Altaphista het volgende:
Op school zijn we verplicht bezig met een o zo schitterende (NOT) os : XINU (ook geschreven mbv assembler)

Ik denk dat je sowieso in die richting een basis moet schrijven voordat je echt bezig kunt.

en JAVA is niet langszaam!
stoute spelling!

  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 22-12 17:43

Altaphista

1. check manual, 2. ask

Op zaterdag 13 oktober 2001 00:15 schreef joska het volgende:

[..]

stoute spelling!
Hmmm, had ik niet van mij verw8. :)

Je gaat het pas zien als je het doorhebt.


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Op zaterdag 13 oktober 2001 00:14 schreef joska het volgende:

[..]

wasigh, is het niet waar dan?
Joska, is het wel waar dan?

Iets is niet traag of snel. maar het is traag of snel in vergelijking met iets...

(weetje, ik heb nu totaal geen zin in deze discussie)

Verwijderd

Op zaterdag 13 oktober 2001 00:17 schreef Altaphista het volgende:

[..]

Hmmm, had ik niet van mij verw8. :)
ach ja, life sucks! :)

  • TheGhostInc
  • Registratie: November 2000
  • Niet online
JAVA is wel langzaam ;)

En ik kan het weten want ik ben......
hmmm ok, JAVA is alleen langzaam zodra de processor het niet ondersteund, op dit moment is dat dus eigenlijk elke processor. Als het meezit wordt je JAVA code 3x vertaald voordat hij eindelijk bij je processor terecht komt.
Hierdoor is JAVA wat traag, maar als ze de OS-en ed. wat beter afstemmen op JAVA, en de Runtime bla bla verder optimaliseren kan het best nog wat worden ;)

* TheGhostInc denkt dat JAVA best wel wat toekomst zou hebben, maar dat een normale taal gewoon tijd nodig heeft om te groeien, geen enkele taal is 'ineens' geworden wat hij is. Kijk bv. maar eens naar C -> C++, maar ook de complete BASIC serie geeft aan dat een taal gewoon wat tijd nodig heeft. JAVA is wel heel snel de grond uit gestampt.

Verwijderd

Op zaterdag 13 oktober 2001 00:05 schreef joska het volgende:
Java is nou eenmaal te langzaam
Niet wanneer zo'n computer rechtstreeks Java VM zou babbelen, zonder verdere vertaalslag.
Java langzaam? De Java UI implementaties zijn helaas tergend langzaam, maar ik heb op m'n werk een Java proxy draaien (SOHOConnection, http://www.servlet.com), en dat draait als een zonnetje.
En 't is nog gratis ook! :)

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

[b]Op zaterdag 13 oktober 2001 00:12 schreef en JAVA is niet langzaam!
Tuurlijk is Java langzaam...het wordt interpretted, dan kan het nooit snel zijn. Ik zie het al voor me, een interrupthandler in Java, system performance wordt meteen gehalveerd ;)

Hmmm en als de processor dus rechtstreeks java praat ;), dan zie ik weining verschil meer met gewoon assembler :)

Verwijderd

joska: Java is nou eenmaal te langzaam
Machinetaal is ook te langzaam ... *

:Z

*als je machinetaal van een chip emuleert op een andere

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11 01:34
Java is nou eenmaal te langzaam
wasigh, is het niet waar dan?

Tuurlijk is Java langzaam...het wordt interpretted, dan kan het nooit snel zijn. Ik zie het al voor me, een interrupthandler in Java, system performance wordt meteen gehalveerd ;)
-3 trollen. Java wordt allereerst in vrijwel alle VMs niet geinterpreteerd uitgevoerd. Verder is de opmerking 'Java is traag' nogal onorigineel en getuigt vooral van een gebrek aan inzicht in het Java Platform.

Had gedacht dat de meeste vaste GoT bezoekers op dit punt ondertussen iets beter op de hoogte waren en beter in staat zouden moeten zijn om te relativeren :Z .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11 01:34
Overigens is het ook nog een zeer belangrijk feit dat je het in het kader van performance discussies nooit over talen moet praten, maar over de run-time omgeving. Uitspraken doen over de taal Java is zinloos (zeker nu het ook in .NET draait ;) ). Denk ook eens aan de manier waarop Java bytecode wordt uitgevoerd in een VM (mixed-mode dus) en aan de mogelijkheden van run-time optimalisaties die je mist bij native code.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11 01:34
Afterlife: Een paar jaar terug waren er nog plannen voor een processor die native Java VM zou snappen. Nooit meer iets van gehoord...
Die zijn er wel degelijk (en zelfs behoorlijk wat verschillende). Ze worden vooral gebruikt in kleine devices die Java toepassen.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 15:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op vrijdag 12 oktober 2001 22:21 schreef Gerco het volgende:

[..]

Het klinkt maf, maar dat is een vrij aardig idee. Het enige wat je dan 'even' moet doen is een JVM in assembly proggen. Aardig is het idee wel, maar uitvoerbaar?
met alleen een vm ben je er niet, je moet ook alle native klassen implementeren (in C++ bijvoorbeeld) om te communiceren met de hardware, dus NOG meer werk :)

.edit: maar toch blijf ik erbij dat het in qbasic moet :D

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • intoxicated
  • Registratie: Januari 2001
  • Niet online

intoxicated

Haaaai :w | ALT-S

Op vrijdag 12 oktober 2001 22:24 schreef BrainDamage het volgende:
als de PC nou inf van HD in geugen zet kopieerd naar goede plek en vervolgens delete ??
Ga jij de definitie van 'defragmenteren' eens snel opzoeken! :P

"Anyone who does not agree with me is mentally sick, and should be shot I'm afraid to say."
- Pastor Richards @ VCPR


Verwijderd

An Open, Portable, and Extensible Java Object Operating System

http://www.jos.org

Verwijderd

Op zaterdag 13 oktober 2001 22:28 schreef Deeper het volgende:
An Open, Portable, and Extensible Java Object Operating System

http://www.jos.org
Ben heel benieuwd hoe ze het geheugenbeheer enzo doen in een Javabased OS, voor zover ik weet kan JAVA niet direct naar het geheugen schrijven (toch?)

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 02:31

Gerco

Professional Newbie

Op zaterdag 13 oktober 2001 22:45 schreef super-simon het volgende:
Ben heel benieuwd hoe ze het geheugenbeheer enzo doen in een Javabased OS, voor zover ik weet kan JAVA niet direct naar het geheugen schrijven (toch?)
Met de goede system classes kan alles.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Op zaterdag 13 oktober 2001 22:49 schreef Gerco het volgende:

[..]

Met de goede system classes kan alles.
Cool, ik ben van plan binnenkort samen met nog een paar andere programmeerfreaks een eigen OS te gaan schrijven, is wel een leuke uitdaging om een JAVAbased OS te maken..

Verwijderd

Op zaterdag 13 oktober 2001 00:32 schreef Arien het volgende:

[..]

Machinetaal is ook te langzaam ... *

:Z

*als je machinetaal van een chip emuleert op een andere
Gebruik dan microcode om de interpretatie van je assembler te optimaliseren! :)

  • Maxonic
  • Registratie: September 2000
  • Laatst online: 08-11 22:18
Direct in bytecode? :P
Op zaterdag 13 oktober 2001 00:05 schreef joska het volgende:

[..]

Java is nou eenmaal te langzaam
Java is in princiepe niet langzaam maar omdat java eerst door die virtual machine heen moet lijkt het langzamer. Dit scheelt tegenwoordig echter niet veel meer terwijl Java wel alle voordelen behoud.
Een heel OS in Java programeren is mogelijk, sterker nog. Een groot gedeelte van de bestaande OSsen draait op Java.
Ik heb het dan wel over Osjes zoals die van je Nokia of digicam...
Voor je compie een goed werkend OS proggen is volgens mij onmogelijk, en dat komt niet door de snelheid...

Verwijderd

Op zondag 14 oktober 2001 00:49 schreef Maxonic het volgende:
Direct in bytecode? :P
[..]

Java is in princiepe niet langzaam maar omdat java eerst door die virtual machine heen moet lijkt het langzamer. Dit scheelt tegenwoordig echter niet veel meer terwijl Java wel alle voordelen behoud.
Een heel OS in Java programeren is mogelijk, sterker nog. Een groot gedeelte van de bestaande OSsen draait op Java.
Ik heb het dan wel over Osjes zoals die van je Nokia of digicam...
Voor je compie een goed werkend OS proggen is volgens mij onmogelijk, en dat komt niet door de snelheid...
Die 'ossen' voor nokia's zijn interfaces. Om een os te programmeren heb je veel mogelijkheden nodig, zoals die in C geboden worden. Java biedt die per definitie niet, juist omdat het door een VM moet, en omdat het platform independent is.

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Op zondag 14 oktober 2001 01:14 schreef joska het volgende:

[..]

Die 'ossen' voor nokia's zijn interfaces. Om een os te programmeren heb je veel mogelijkheden nodig, zoals die in C geboden worden. Java biedt die per definitie niet, juist omdat het door een VM moet, en omdat het platform independent is.
welke mogelijkheden biedt java niet die c wel biedt?

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 15:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op zondag 14 oktober 2001 01:15 schreef wasigh het volgende:

[..]

welke mogelijkheden biedt java niet die c wel biedt?
alles waar in java native classes en methodes voor nodig zijn, zoals communicatie met de hardware en toegang tot het geheugen en de registers.

Let wel: we hebben het hier natuurlijk over Java als OS, en niet een Java applicatie wat op een OS draait

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Op zondag 14 oktober 2001 01:27 schreef OiSyN het volgende:

[..]

alles waar in java native classes en methodes voor nodig zijn, zoals communicatie met de hardware en toegang tot het geheugen en de registers.

Let wel: we hebben het hier natuurlijk over Java als OS, en niet een Java applicatie wat op een OS draait
Mee eens!

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Op zondag 14 oktober 2001 01:27 schreef OiSyN het volgende:

[..]

alles waar in java native classes en methodes voor nodig zijn, zoals communicatie met de hardware en toegang tot het geheugen en de registers.

Let wel: we hebben het hier natuurlijk over Java als OS, en niet een Java applicatie wat op een OS draait
Dan schrijf je daar toch native classes en methodes voor,
die stop je bij elkaar en dat noem je een JVM

Verwijderd

Op zondag 14 oktober 2001 01:39 schreef wasigh het volgende:

[..]

Dan schrijf je daar toch native classes en methodes voor,
die stop je bij elkaar en dat noem je een JVM
Dan is het toch nogal beter om het gewoon in C te doen.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 15:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op zondag 14 oktober 2001 01:39 schreef wasigh het volgende:

[..]

Dan schrijf je daar toch native classes en methodes voor,
die stop je bij elkaar en dat noem je een JVM
naar mijn idee is de JVM gewoon een denkbeeldige processor, en die zorgt er dus gewoon voor dat de bytecode uitgevoerd wordt, en de native methodes aangeroepen worden.
De native troep zit in aparte libraries, en behoren dus niet tot de virtual machine.

Maar goed, dat moet dus weer allemaal in C(++) gemaakt worden, dus waarom zoals joska zegt niet gewoon alles in C(++) doen? Dan ben je van dat hele extra gezeik van de JVM af

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • mvdejong
  • Registratie: Juni 2000
  • Laatst online: 29-11-2024

mvdejong

When does the hurting stop ?

In den beginne werd een OS niet eens in assembler geschreven, maar direct in machine-code (dus direct in bytes, niet eens in symbolische commando's).

De volgende stap was het programmeren van het minimale deel van OS (zeg maar even de kernel), + een assembler-programma, in machine-code, en dan de rest in assembler.

Toen er meer processing-power ter beschikking stond, was de volgende stap om na het implementeren van de assembler, een compiler voor een 3e generatie-taal daarin te bouwen, en een volgende schil van het OS daarmee te bouwen.

Tegenwoordig gaat het simpeler. Zodra een processor is ontworpen, wordt een cross-compiler gebouwd op een ander, al bestaande architectuur, die code ophoest die op die nieuwe processor draait (zodra de processor eindelijk bestaat).

Het nadeel van het bouwen van een OS in een 3e generatie-taal is dat, hoe goed tegenwoordig ook de optimizing compilers zijn, de gegenereerde code nooit zo efficient is als machine-code/assembly-language, geschreven door iemand die het kan.

Aan de andere kant zijn zelfs de hedendaagse OS-en vaak zo gecompliceerd dat ze niet meer onderhoudbaar zouden zijn als ze niet in een 3e generatie-taal zijn geschreven.

The number of things that Arthur couldn't believe he was seeing was fairly large

Pagina: 1