[Kos-cvs] [kos] Modification CVS par thomas

KOS CVS Gestion CVS KOS <d2@kos.enix.org>
Wed, 6 Feb 2002 14:45:00 +0100 (CET)


Module :	kos
Modifié par :	thomas	06/02/02 14:45:00

Fichiers modifiés :
	.              : MkVars 
	grub           : Makefile 
	loader         : macros.h 
	loader/boot    : loader.c multiboot.h 
	loader/bootmem : bootmem_free.c bootmem_init.c 
	                 bootmem_mark_free.c 
	loader/mm      : mm.c 
	modules        : Makefile config.h 
	modules/babel/tower: tower.c 
	modules/bootstrap: bootstrap.c 
	modules/debug  : debug.c 
	modules/idt    : _dst.c _i8259.c _idt.S 
	modules/kmem   : kmem.c 
	modules/kos    : asm.h system.h wolfgang.c 
	modules/scheduler: _timer.c scheduler.c scheduler.h 
Fichiers ajoutés :
	modules/ide    : Makefile _ide.c _ide.h ide.c ide.h 

Détails :
Commencement driver IDE.
Pour l'instant :
- detection des disques durs et lecteurs de CDs presents.
- detection des parametres des disques durs (taille, modele, etc...)
- lecture de la table des partitions (seulement partitions primaires
pour le moment).
- possibilite de lecture des secteurs en mode polled (sans utiliser
d'IRQ). a fignoler pour utiliser soit CHS soit LBA
- possibilite de lecture des secteurs avec IRQ. mais pour l'instant
pas utilise : ca me gave de reflechir sur les files d'attentes (wait
queues), les problemes de locking, tout ca tout ca.

- modification du driver i8259 pour qu'a l'initialisation l'IRQ 2 qui
sert de cascade entre le master et le slave soit activee.

- virage du test ASSERT_FATAL(free->skip == 0) dans bootmem_free.c car
bootmem_free est utilise pour marquer comme libre des blocs n'ayant
pas ete alloue par bootmem_alloc (lors de l'initialisation via
bootmem_init), resultat sur certains PC, free->skip n'etait pas a 0.
- quelques ajouts d'initialisation de pointeurs a NULL dans Babel,
parce que pareil la memoire d'un PC est pas forcement a 0 au
boot. donc ca chiait dans les listes chainees, et on se choppait une
interruption sur certains PCs.

- les modifs sur le loader, c'etait pour voir ce que contiennent les
informations filees par Grub au niveau des disques durs. C'est le
logical CHS qu'il nous file, donc c'est pas top interessant. Resultat
j'ai pas laisse.

voila... c'est pas forcement super fonctionnel, et les messages sont
pas super jolis, c'est encore en plein deblayage. pour l'instant ma
volonte au niveau du IDE c'est de voir comment ca marche au niveau
hardware, pour ce qui est des trucs "haut niveau", genre file
d'attente, gestion d'une suite de requetes, etc.. on verra plus tard
(meme si c'est commende avec ide_op_list & co).