Origine des systèmes d'exploitation

C'est ici que sont postés les messages qui n'entrent pas dans le cadre des autres forums.
Ces messages doivent néanmoins rester en conformité avec la <a href=http://www.ixus.net/charte_forums.php>Charte</a> qui régule les forums.
Nous vous remercions d'éviter les sujets complètement off-topic (foot, pêche ...). Ne perdons pas de vue qu'Ixus reste un site relatif à l'informatique.

Modérateur: modos Ixus

Origine des systèmes d'exploitation

Messagepar Mamax » 03 Juin 2004 18:30

Bonjours à tous,

Depuis quelque temps je me pose une question existencielle...

Voilà, A l'heure actuelle, pour faire un nouvel OS, on prendre un micro-ordinateur (Linux, UNIX, Windows...) et on programme dessus le code source et on le compile avec un compilateur (ou je sais c'est très simplifié)

Mais la question que je me pose c'est: Comment a-t-on créer le premier compilateur pour compiler le premier système d'exploitation. Deplus, il faut un micro-ordinateur pour faire tourner le compilateur...

Bref, le question revient au traditionnel dilème de qui est apparu en premier, l'oeuf ou la poule.

Bon, si quelqu'un a une idée...

A+
Avatar de l’utilisateur
Mamax
Contre-Amiral
Contre-Amiral
 
Messages: 362
Inscrit le: 12 Déc 2003 01:00
Localisation: Brest

Messagepar tomtom » 03 Juin 2004 21:54

Ben on le programme en assembleur.

Puis en Fortran, puis en Lisp..

A vrai dire, on le programme avec le basic assez rapidement, en partie grace à notre meileur ami Bilou qui est (serait) l'auteur des premiers BASIC pour les synclair...

cherche sur google histoire de l'informatique, tu vas trouver plein de choses !

t.
One hundred thousand lemmings can't be wrong...
Avatar de l’utilisateur
tomtom
Amiral
Amiral
 
Messages: 6035
Inscrit le: 26 Avr 2002 00:00
Localisation: Paris

Messagepar Fesch » 03 Juin 2004 21:59

C'est la poule, c'est la poule qui y était en premier. En fait, lorsque Dieux a créé le monde, sa femme était en train de discuter avec lui. Pour qu'elle se taise il lui dit: «Oui, oui ma poule!» - Ainsi Dieu créa la poule.

OK, je ---> [ ]
Pourquoi lis-tu ceci???
Avatar de l’utilisateur
Fesch
Amiral
Amiral
 
Messages: 2505
Inscrit le: 11 Sep 2003 00:00
Localisation: Luxembourg

Messagepar hb » 03 Juin 2004 22:55

ah ce que l'on m'a racconté (je n'y étais pas j'étais pas encore né) au tout début début
le "pupitreur" avait un immense tableau face à lui avec des tonnes de lampes et d'interrupteurs
chaque interrupteur pilotait une lampe.
et en gros la programmation se faisait "bit à bit"
plus tard on remplaça les interrupteurs par des liseuses de cartons perforrées
tu perforais ton carton à la main, c'était ton "source"
et on te rendais un carton perforé, c'était le résultat
puis l'ancetre du transistor, l'ampoule que tu trouves dans certaines vieilles teles ou dans la TSF de ton grand, et enfin on à glissé tout doucement vers les micro-processeurs.
au debut il fallait programmé directement en language machine (suite de nombres) ensuite on passa à l'assembleur (chaque commande correspond à un ou plusieurs nombres)
apres les choses se sont acceleres avec des langages de programmation toujours de plus en plus évolués....

dans les années 90, en IUT electronique, on apprenait encore à cabler une addition avec des "portes logiques" et aussi à fabriquer une porte logique avec des transistors

bon t'as réussi à me faire radoter comme le faisait mon grand père.
je vais trempé mon dentier dans l'eau et je vais me coucher gamin
Avatar de l’utilisateur
hb
Amiral
Amiral
 
Messages: 1513
Inscrit le: 06 Juin 2002 00:00
Localisation: Nord Isere, 50kms Lyon

Messagepar gla » 04 Juin 2004 15:41

Pour faire court... un ordinateur (en fait le processeur) ne comprend que le binaire, le courant passe ou passe pas !

Un compilateur ne fait que traduire un langage lisible par un humain (quoi que des fois, je vois d'ou vient le SMS :lol: ) en un langage lisible par l'ordinateur.

Quelque soit le langage (C, BASIC, PASCAL, ASSEMBLEUR) le compilateur permet de traduire la code source en code machine directement executable.

Comme le dit HB, un code machine ne correspond qu'a des fonctions d'électronique simple (AND, OR, XOR, ADD, ...) donc un fois le code compilé, la machine peut l'éxecuter.

De là se pose le problème de l'OS.
Au début, les OS étaient codés directement pour un matos précis, directement avec l'assembleur spécifique au processeur utilisé. Ensuite des petits rigolos ont décidé de créer un système qu'ils puissent utiliser sur plus d'une architecture machine... il ont alors créé le langage C (qui arrive après B) pour compiler UNIX (qui n'est pas MULTICS) sur une machine qui ne soit pas un PDP10 !

Et voilà comment on arrive à révolutionner l'histoire de l'informatique.

Au fait, au début, les p'tits rigolos voulaient faire un jeu vidéo :wink:
J'ai connu une polonaise qui en buvait au petit déjeuner...
SMERP : Distribution Open Source pour l'entreprise
Avatar de l’utilisateur
gla
Amiral
Amiral
 
Messages: 1259
Inscrit le: 28 Sep 2002 00:00
Localisation: Grasse

Messagepar iraysyvalo » 06 Juin 2004 01:48

En fait, c'est le compilateur lui-meme que tu dois sortir en premier sur toute nouvelle plate-forme .. ca te permet de t'affranchir de la machine petit a petit par le mecanisme du bootstrap ..

Une fois que t'as le compilateur, t'as le reste ...
Bottom line
Avatar de l’utilisateur
iraysyvalo
Major
Major
 
Messages: 81
Inscrit le: 21 Déc 2003 01:00

Messagepar micjack » 06 Juin 2004 03:18

C'est le language assebmleur, qui correspond au language machine avant tout! :wink:
micjack
Amiral
Amiral
 
Messages: 3113
Inscrit le: 06 Juin 2003 00:00
Localisation: Varois

Messagepar iraysyvalo » 06 Juin 2004 19:15

Oui .. on commence par ecrire en assembleur un compilo minimaliste pour demarrer le bootstrap :)
Bottom line
Avatar de l’utilisateur
iraysyvalo
Major
Major
 
Messages: 81
Inscrit le: 21 Déc 2003 01:00

Messagepar micjack » 06 Juin 2004 22:41

Mais aussi, et pour ceux à qui cela interressent, il existe la command Debug sous Dos qui permet de créer de petites instructions non compilées pour discuter dirrectement avec le processeur.

En tapant Debug en ligne de commande cela permet d'executer pas à pas ces instructions.
Ou Debug nomdufichier, "Nomdufichier" contient des instructions assembleur proprement definies.
C'est un langage bas niveau et primaire inclus dans ses registres (EX: Motorola et ceux d' Intel sont completement differant)

Apres, afin de faciliter l'informatique, il a falut compiler ces instructions pour n'en faire qu'un fichier executable ... Debug command.txt peut contenir des centaine de lignes, se referent à command.com
pour executer la meme chose.

C'est avec Debug, que certain se fabriqent des commandes personnalisée qui n'existent pas.

Ce fichier executable n'est ni plus ni moins qu'une suite d'instructions compilées qui va etre traduit/interpreté/decompilé par le processeur ---> assembleur

Cela reste valable pour tout logiciel de programmation evolués ou pas, ils sont plus ou moins faciles d'utilisation.. C'est soit d'attaquer au bas niveau avec des routines interminables pour créer un OS ou en evolué pour resté simple, comme une appli quoi.

PS: Cela me rappel le concour d'etudiant de Bill, il est parti de ca.. compiler l'assembleur pour donner sa version du DOS :wink:
micjack
Amiral
Amiral
 
Messages: 3113
Inscrit le: 06 Juin 2003 00:00
Localisation: Varois

Messagepar iraysyvalo » 07 Juin 2004 01:18

Ok, mais dans le contexte de la question initiale, t'as pas le DOS ou aucun autre OS d'abord :P
Bottom line
Avatar de l’utilisateur
iraysyvalo
Major
Major
 
Messages: 81
Inscrit le: 21 Déc 2003 01:00


Retour vers Autres bavardages

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité