Faire son propre Os

Tout ce qui ne mérite pas d'être entendu mais qui doit être dit.

Moderators: Mod, Mod, Mod

Faire son propre Os

Postby Manu404 » Sun May 11, 2008 12:15 am

Halal, son propre os, le rêve de tous. Le sommet de l'indépendance informatique, le plus grand pied de nez que l'on puisse faire a la communauté informatique, la liberté totale !
Et bien ce site vous propose le code source d'un os en création de A a Z. Une source d'information considérable et permettant une meilleur compréhension de l'informatique !

[url]http://sos.enix.org/fr/PagePrincipale[/url]

Et en vola un autre :

[url]http://boost.freezee.org/?lnk=start&lang=fr[/url]

Comment faire son noyau :

[url]http://a.michelizza.free.fr/PmWiki/pmwiki.php?n=TutoOS.TutoOS[/url]
[url]http://www.commentcamarche.net/faq/sujet-4680-systemes-d-exploitation-programmation-d-un-noyau-os[/url]
[url]http://pauillac.inria.fr/~remy/poly/system/[/url]

Good Luck
User avatar
Manu404
 
Posts: 2219
Joined: Tue Feb 26, 2008 3:44 pm
Location: ::1:

Postby IceDream » Sun May 11, 2008 8:43 am

voilà pas mal d'autres liens qui sont très utiles aussi
en anglais pour la plus part.

http://www.nondot.org/sabre/os/articles

http://www.osdev.org/cgi-bin/projects.cgi

http://www.osdever.net/

http://membres.lycos.fr/cos2000/

http://inferno.cs.univ-paris8.fr/~am/tutorial/os/tutorial00.html

http://hem.passagen.se/gregge/index_hires.html

voilà, ils sont plus ou moins détaillés. Mais certains sont des vraie mine d'Or.
A vous de faire le tris. ;)
User avatar
IceDream
Projets
 
Posts: 27
Joined: Thu Apr 24, 2008 8:20 pm

Postby Manu404 » Sun May 11, 2008 5:42 pm

Merci IceDream !
User avatar
Manu404
 
Posts: 2219
Joined: Tue Feb 26, 2008 3:44 pm
Location: ::1:

Postby IceDream » Sun May 11, 2008 8:32 pm

Derien ;)

Simplement pour savoir : Certains on déjà tenté de développer un OS ? (le kernel surtout)

Pour ma part j'ai jamais eu le temps d'aller plus loin que passage en mode protegé et affichage de message avec un kernel en C. Mais certains on peu être (surement) été assez motivé pour aller plus loin (prog IRQ, reprog PIC, mm, ...)
User avatar
IceDream
Projets
 
Posts: 27
Joined: Thu Apr 24, 2008 8:20 pm

Postby habbo3 » Mon May 12, 2008 11:59 am

J'aimerais bien développer mon propre OS mais bon niveau langage je suis pas encore au top
des compétence pour cela
User avatar
habbo3
Projets
 
Posts: 123
Joined: Mon Feb 11, 2008 6:59 pm

Postby IceDream » Mon May 12, 2008 12:03 pm

Bein il faut une très très bonne maitrise du C et une assez bonne maitrise de l'asm pour faire un kernel en C.

Par contre, un kernel en Asm, là c'est une autre histoire... :D

Après, il faut aussi lire et relire les docs qu'on a cité avec Manu404.
Et enfin le dernier ingrédient : du temps. beaucoup de temps ;)

Pour finir tu brasse bien tout sa et avec de la chance tu arriveras à faire un petit quelque chose.
User avatar
IceDream
Projets
 
Posts: 27
Joined: Thu Apr 24, 2008 8:20 pm

Postby Manu404 » Mon May 12, 2008 1:14 pm

De toute façons je pense que a l'heure actuel avec l'avancement technologique actuel, développer son propre Os et son propre noyau (attention ne pas confondres les deux !) n'est plus envisageable d'un manière profesionnel, car il y a déja plusieurs kernel de très bonne qualités et des os aussi ! Le but de la démarche est de comprendre comment fonctionne son Os, mais en aucun cas de voir un Bill Gates émerger. Ce qui était possible il y a 20ans ne l'est plus maintenant. Pour un simple raison, il y a 20ans il n'y avait pas autant de hardware différent a gerer et donc le kernel étaiut plus simple! Au niveau de L'Os aussi la tach c'est trés fortement compliqué ! Si on veut réaliser son propre Os, le plus cohérant est de partir d'un os deja complet avec un kernel Linux. Maintenant le faire de A a Z ne peut être envisagé que dans une démarche purement pédagogique.
D'un autre coté le C n'est pas le seul langages permet de développer son os sur une base de asm, il est simplement le langage le plus proffesionel du moment.
De plus la doc sert de piste, mais si vous cherchez un tutorial sur comment faire un Os et un Kernel et bien cela signifie que vous n'êtes pas encore pret. En effet si les notions de asm et de C nécésaires sont maitrisé, vous ne vous demanderez pas comment faire un Os/Kernel, ceci dit je en dit pas que il faut tou savoir avant, mais avoir deja un trés trés bon niveau en c ou asm et travailler en équipe aussi (par exemple vous êtres un pro asm et l'autre un pro en C)
Bon ok j'arete car je viens de briser le rêve de gloire de certains....
Sinon pour ceu toujours motivé, développer un bon kernel en équipe (2personnes) demande au moins 2mois de boulot (de vrai boulot, c'est a dire 6H tout les jours).
Je parle non pas par experience mais je connais bien certains web-master de ces sites et des amis a moi se sont aussi lancé dedans, et c'est le constat que j'en tire.

[quote:6cf596b438]Par contre, un kernel en Asm, là c'est une autre histoire...[/quote:6cf596b438]
Hum si je puis me permettre, ton kernel sera toujours en asm, c'ets ton os qui sera en C
User avatar
Manu404
 
Posts: 2219
Joined: Tue Feb 26, 2008 3:44 pm
Location: ::1:

Postby IceDream » Mon May 12, 2008 1:49 pm

[quote:f6f13a4db4="Manu404"] Le but de la démarche est de comprendre comment fonctionne son Os, mais en aucun cas de voir un Bill Gates émerger.[/quote:f6f13a4db4]On est 100% d'accord sur se point. C'est irréaliste d'espérer côtoyer les plus grands. Le but n'est évidement que pédagogique. Apprendre et comprendre. :D

[quote:f6f13a4db4="Manu404"]
D'un autre coté le C n'est pas le seul langages permet de développer son os sur une base de asm, il est simplement le langage le plus proffesionel du moment.[/quote:f6f13a4db4]
Oui en effet, on peux coder un kernel en d'autres langage. Le C++ par exemple. (mais c'est un poil plus difficile au début car il faut redéfinir les operateur new et delete en codant un memory manager). j'ai aussi déjà vu un kernel en C--.

[quote:f6f13a4db4="Manu404"]
Bon ok j'arete car je viens de briser le rêve de gloire de certains....
[/quote:f6f13a4db4]
Mieux vaut prévenir que guérir ;)

[quote:f6f13a4db4="Manu404"]
Sinon pour ceu toujours motivé, développer un bon kernel en équipe (2personnes) demande au moins 2mois de boulot (de vrai boulot, c'est a dire 6H tout les jours).
[/quote:f6f13a4db4]
j'aurais juste remplacé le 'mois' par 'année'. (à moins d'être des dieux de la prog ;))

[quote:f6f13a4db4="Manu404"]
[quote:f6f13a4db4]Par contre, un kernel en Asm, là c'est une autre histoire...[/quote:f6f13a4db4]
Hum si je puis me permettre, ton kernel sera toujours en asm, c'ets ton os qui sera en C[/quote:f6f13a4db4]
Je ne voudrais pas être mal vu par un modo alors que je viens d'arriver (;)) mais :
90% (voir plus) des kernels sont développés en C.
La preuve même ? Linux, Windows, mac, ... tout les OS autour de toi on un kernel en C.
Pour dire vrai je n'ai vu qu'un seul OS qui avait un kernel en assembleur c'était MenuetOS. (le kernel et l'os sont en asm)
Et bien heureusement qu'ils sont en C, sinon cela mettrais des années à développer.

La seule partie qui est dans 99% des cas en asm (oblige on va dire) c'est le secteur de boot. Car il est en 16 bits et très particulier à coder. Mais dès lors qu'on passe en mode protegé et qu'on se trouve en 32 bits, il vaut mieux passé a du code C.

Car pour coder :
- reprog des IRQ, des PIC.
- un memory manager.
- un gestionnaire de tache.
- gestionnaire d'utilisateur éventuellement.
- gestionnaire de FS.
- ...

c'est bien plus rapide en C.
User avatar
IceDream
Projets
 
Posts: 27
Joined: Thu Apr 24, 2008 8:20 pm

Postby Manu404 » Mon May 12, 2008 1:55 pm

[quote:ea27c76907]C--[/quote:ea27c76907]
? le quoi ? Je connais le C, le C++, le C# mais le C-- Oo

[quote:ea27c76907]Je ne voudrais pas être mal vu par un modo alors que je viens d'arriver (Wink) mais :
90% (voir plus) des kernels sont développés en C.
La preuve même ? Linux, Windows, mac, ... tout les OS autour de toi on un kernel en C.
Pour dire vrai je n'ai vu qu'un seul OS qui avait un kernel en assembleur c'était MenuetOS. (le kernel et l'os sont en asm)
Et bien heureusement qu'ils sont en C, sinon cela mettrais des années à développer. [/quote:ea27c76907]
Non je me suis mal fait comprendre, je disait que l'asm est obligatoire dans le développement d'un kernel, ce que tu avais l'air de nier en daisnt que develpper un kernel en asm était impossible.
Incompréhension deso'
Ce n'est pas parce que je suis modo que j'ai réponses a tout et j'accepte la critique temp qu'elle est justifié et argumenté^^ (Mais je vais quand même te ban NA) :wink:
User avatar
Manu404
 
Posts: 2219
Joined: Tue Feb 26, 2008 3:44 pm
Location: ::1:

Postby IceDream » Mon May 12, 2008 2:03 pm

:D
Oui oui le C-- !!

c'est pas un langage connu du tout mais sa existe bien.
il se dénomme réellement le Sphinx C--.

c'est un langage assez particulier qui permet très simplement de mêler C (modifié) et Asm.
Pas seulement comme le C avec 'asm()'. Ici c'est en plein milieu du code on peut placer un '$PUSH AX'.

Qq liens :
Compilateur C-- : http://sourceforge.net/projects/c--/
Exemples simples : http://www.cs.utexas.edu/users/tbone/c--/

[quote:0f56db95b4]Non je me suis mal fait comprendre, je disait que l'asm est obligatoire dans le développement d'un kernel, ce que tu avais l'air de nier en daisnt que develpper un kernel en asm était impossible.
Incompréhension deso' [/quote:0f56db95b4] Quel quiproquo ! En effet il faut bien évidement de l'asm pour développer un kernel ;)

[quote:0f56db95b4](Mais je vais quand même te ban NA)[/quote:0f56db95b4] :D
User avatar
IceDream
Projets
 
Posts: 27
Joined: Thu Apr 24, 2008 8:20 pm

Postby Manu404 » Mon May 12, 2008 8:08 pm

Ok merki pour le C--
User avatar
Manu404
 
Posts: 2219
Joined: Tue Feb 26, 2008 3:44 pm
Location: ::1:

Postby Patapouf » Wed May 14, 2008 9:51 pm

En tout cas merci pour tout sa, moi je vais mis mettre peut être un jour ^^ mais bon il faudrait trouver le bon coéquipier :cry:
User avatar
Patapouf
Projets
 
Posts: 3
Joined: Wed May 14, 2008 5:50 pm

Postby BPS » Wed Jul 30, 2008 1:45 am

le c reste le meilleur langage pour le kernel essayer d'en faire un en assembleur vous m'on dirait des nouvelles les années deviendront des siècles mon dernier prog qui date de tres longtant ma pris 6 mois je pressise aux novice si il y'auna que c'est as difficile a apprendre mais difficile a gérer ce qui l'on fait me comprendront ptt
BPS
Projets
 
Posts: 8
Joined: Wed Jun 11, 2008 11:31 pm

Postby THE-DEATH » Wed Jul 30, 2008 1:59 am

Moi je vais apprendre l'asm mais pas le courage ni le temps pour coder un os, je pense également comme manu : au jour ou nous sommes développer un os serait inutile sauf si l'on travail dessus depuis 20 et encore car au fil du temps les technologies évoluent et donc on a toujours une marge de retard. Âpres je pense que cela peut être une bonne expérience d'en faire le principal histoire [b:b2c6ea0566]d'apprendre (on vit pour apprendre) de se perfectionner et surtout de comprendre[/b:b2c6ea0566] plus amplement. :D :D :D
User avatar
THE-DEATH
 
Posts: 971
Joined: Wed Jul 23, 2008 10:49 am
Location: 127.0.0.1

Postby Kill-9 » Thu Sep 04, 2008 9:10 pm

Bel débat :lol:
User avatar
Kill-9
Projets
 
Posts: 95
Joined: Thu Mar 27, 2008 11:33 am

Next

Return to Le Bar

Who is online

Users browsing this forum: No registered users and 1 guest

cron