[Kos-cvs] [kos] Modification CVS par thomas
KOS CVS
kos-dev <kos-dev@enix.org>
Sun, 25 May 2003 04:51:27 +0200 (CEST)
Module : kos
Modifié par : thomas 25/05/03 04:51:27
Fichiers modifiés :
. : MkVars
grub : grub.img.gz
modules : Makefile
modules/debug : debug.h
modules/idt : _dst.c _dst.h dst.h
modules/init : _bootstrap.c _init_modules.c
modules/karm : devfs.c devfs.h karm.c nscache.c open.c ures.c
modules/karm/interface: char.h
modules/kitc : Makefile _kmsg.c _ksem.c kitc.c kitc.h kmsg.h
ksem.h
modules/klavier: _klavier.c klavier.c klavier.h
modules/kmem : _kvmem_free.c _kvmem_utils.c
modules/kos : errno.h macros.h spinlock.h wolfgang.c
modules/lib : Makefile stdio.h stdlib.c
modules/liblist: liblist.h
modules/scheduler: Makefile _scheduler.c _sleep.c _timer.c
scheduler.c scheduler.h
modules/task : task.h
modules/tty : Makefile _ktty.c _tty.c _tty.h tty.c tty.h
modules/vmm : _vmm_kmem.c
Fichiers ajoutés :
modules/console: Makefile _console.c _console.h console.c
console.h
modules/kitc : _kmutex.c kmutex.h
modules/scheduler: _kwaitqueue.c _kwaitqueue.h _sleep.h
kwaitqueue.h
modules/tty : _tty_kres.c
Fichiers enlevés :
modules/kitc : _ksignal.c _ksignal.h _kwaitqueue.c
_kwaitqueue.h ksignal.h kwaitqueue.h
modules/tty : _tty_babel.c
Détails :
WE pré-Ascension-Montpellier :
Attention : compile, mais mod_check trouve des symboles non résolus =>
on sait pourquoi, correction demain.
* Ajout module 'console' pour la gestion de la console physique.
* Refonte complète de tty pour compatibilité 'karm' et séparation
tty/console.
* Refonte klavier pour compatibilité avec le nouveau tty.
* Waitqueues dans scheduler, et usleep() s'appuyant
dessus. Réécriture complète du scheduler, en s'appuyant à fond sur les
waitqueues.
* Kmsg, kmutex, ksem s'appuyant sur waitqueues (dans kitc).
* Virage ksignal (ne servait plus à rien -> mutex) et kwaitqueues de kitc.
* Modif dst pour compatibilité nouvelle interface kmsg
* Amélioration Devfs pour l'enregistrement des devices -> on
enregistre directement une kres.
* Correction de bug dans nscache
* Interface chardevice
* Qques modifs dans liblist pour correction de bug de
list_insert_before. Modif list_insert_after pour homogénéité et mise à
jour du reste du système en fonction. Ajout list_is_empty à liblist.
* Qques nouveaux errno
* Un super shell !
* Conio.c n'est plus compilé dans lib/
* Modif task.h pour simplification des next/prev des waitqueues
==> Le probleme du reschedule_unsafe est qu'il est appelé par
thread_end_handler (du module task) pour élire un nouveau
thread. Solution proposée : ne plus passer par une pile temporaire
(qui pue !) et faire faire la destruction proprement dite par le
destinataire du changement de contexte.