J'aimerai avoir votre avis...

Résolu
vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
- 19 août 2005 à 16:11
vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
- 19 août 2005 à 23:28
voila, j'ai envi de poster un tuto sur se site en plusieurs parties, voila mes motivations (extrait de l'intro)



Pourquoi ce tutorial ?






Beaucoup de site propose des
tutoriaux pour créer des OS, la plupart sont en anglais, ce qui s’avère gênant
pour comprendre. Certain site propose de créer un kernel entièrement en ASM, ce
qui me paraît fou : le code est ASM fera des milliers de lignes... Les tutoriaux
de SOS http://minso.free.fr/cavinfo/systeme/sos.html/ et KOS http://kos.enix.org/ me paraisse trop orienté
vers la « perfection » et donc la complexité, on y propose du code en
téléchargement assez difficile à comprendre (multiples fichiers .c et .h dans
les ZIP ; je ne remet pas en cause le talent des programmeurs, mais cela est
trop compliqué). Le site de BOSO KERNEL http://inferno.cs.univ-paris8.fr/~am/tutorial/os/tutorial00.html
propose un tutorial assez compliqué à comprendre (mode protégé, gestion des
interruptions), de plus la méthode de compilation est prévue pour Linux, mais
Dieu sait combien de personne tourne encore sous Windows... Ici je vous propose
un tutorial détaillé en français qui vous explique en plusieurs étapes comme
créer un kernel de base en langage C, le tout sous Windows XP, avec des
logiciels freeware (gratuit), le but de ce kernel, n’étant évidement pas de
concurrencer un OS existant. Notre OS comportera un but précis contrairement à
des autre OS (création de jeu).


Ce tutoriel peut t-il vous interreser , ou est-il peut-il etre pertinent, ou interressant ??



Voila @+

15 réponses

vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
3
19 août 2005 à 19:55
bon je vois que yas des personnes interrésée, alors ds qques jours, je poste le chapitre 1.
3
vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
3
19 août 2005 à 16:13
J'ai oublier des preciser le sujet : comment créer son OS en C sous Windows



0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
19 août 2005 à 16:27
On ne fait pas l'économie de l'ASM dans un OS, c'est absolument indispensable.

ciao...
BruNews, MVP VC++
0
vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
3
19 août 2005 à 16:34
Arf, je ne suis pas de ton avis Brunews, bien sur certain passage
doivent etre ecrit en asm (je pense à lgdt et à lidt, out,
in.......)mais l'instruction C asm{}est casiment toujours suffisante,
en general, les routine asm {}ne font pas plus de 10 ligne. J'envisage
aussi parfois d'utiliser des fichier en asm et de les compiler avec
NASM, ce que je voulais dire, c'est que dans mon tutoriel l'asm sera
utilisé mais le moins possible



voila @+ ,vinc1008881
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
juki_webmaster
Messages postés
947
Date d'inscription
mercredi 19 novembre 2003
Statut
Membre
Dernière intervention
5 avril 2008
3
19 août 2005 à 16:48
Moi je suis trés curieux de voir trés prochainement ce tutorial!
En esperons que tu as pensais au Linuxien qui compile sous Gcc.
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
19 août 2005 à 17:15
Le sabir ASM en AT&T qui passe dans gcc ne me parait pas ce qu'il y a de mieux pour comprendre les instruction. Il faut de la syntaxe standard Intel sinon on n'y retrouve plus rien car impossible de se référer aux manuels Intel. Si un tuto ne s'adressait qu'à ceux aptes à lire ce charabia, ce ne serait plus un tuto.

ciao...
BruNews, MVP VC++
0
vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
3
19 août 2005 à 17:40
qui t'adit dit que avec gcc on est obligé d'utiliser la syntaxe a&at :



asm {

" .intel_syntax noprefix\

mov ax, 0b800h\

push ax\

;des instructions à la syntaxe intel...\

.att_syntax noprefix\n"

};



il n'y auras de tte facon casiment pas d'asm à l'interieur des { } : des truk ds le genre



- in, out

- lidt, lgdr

- mov ax, cr0

- cli, sti



si jamais je vois que c'est le foutoir ds les {} : un
fichier asm sera le bien venu, mais ce ne sera pas des dizaine de
ligne, au plus une douzaine...



voila @+, vinc1008881
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
19 août 2005 à 17:53
Je ne me sers pas de gcc mais j'avais toujours vu l'asm dedans en AT&T, à croire que certains doivent penser que ça leur ajoute une plus-value.
Rien que pour les qlqs lignes plus haut, tuto accordé par avance.

ciao...
BruNews, MVP VC++
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
19 août 2005 à 19:46
Je connaissais pas non plus lu truc pour la syntaxe intel dans gcc. L'exemple précedent marche pas mais j'ai adapté. Par contre, il reste un pb avec les variables locales, qu'on ne peut pas utiliser. S'il faut travailler avec esp, je trouve pas ca génial. Voici un exemple que j'ai réussi à compiler:

#include <stdio.h>

int x;

int main()
{
asm
(
".intel_syntax noprefix\n"
"mov eax, 100\n"
"mov _x, eax\n"
".att_syntax noprefix\n"
);

printf("%d", x);
}
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
19 août 2005 à 19:50
Par contre pour le tuto tout en haut ce serait mieux sans toutes ces fautes de pluriel
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
19 août 2005 à 19:57
ah mais c'est toujours des chaines qui seront mises dans le fichier avant de passer au compilo.
Faut aimer le rustique.

ciao...
BruNews, MVP VC++
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
19 août 2005 à 19:59
ok vinc1008881, comme dit par vecchio un effort sur le français dans les tutos svp.

ciao...
BruNews, MVP VC++
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
19 août 2005 à 21:20
Puisqu'on est sur les astuces pour gcc, je viens d'en trouver une superbe pour faire sauter la CRT et obtenir un exe de 1.5ko (si on met rien dedans bien sur)

http://www.zataz.com/images/images_news/news/2801063754259907d4795c.pdf
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
19 août 2005 à 21:33
hfl = CreateFile(..., CREATE_ALWAYS,...);
CloseHandle(hfl);

Battu, 0 octet !!!
bon ok je vais manger...

ciao...
BruNews, MVP VC++
0
vinc1008881
Messages postés
257
Date d'inscription
dimanche 22 août 2004
Statut
Membre
Dernière intervention
29 septembre 2010
3
19 août 2005 à 23:28
voilà, le tout debut de mon tuto à été posté ici, j'attends vos commentaires...

(le 1er chapitre est essentiellement théorique)



http://www.cppfrance.com/code.aspx?ID=33338
0