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

KOS CVS kos-dev <kos-dev@enix.org>
Tue, 19 Aug 2003 02:13:35 +0200 (CEST)


Module :	kos
Modifié par :	d2	19/08/03 02:13:35

Fichiers modifiés :
	.              : ChangeLog MkVars 
	loader         : mod.h 
	modules/debug  : debug.c debug.h syms.c 
	modules/ide    : _ide.c _ide.h _ide_karm.c 
	modules/idt    : _dsr.c _exception.c _irq.c _syscall.c 
	                 exception.h irq.h syscall.h 
	modules/init   : _bootstrap.c 
	modules/karm   : interface.c karm.c 
	modules/karm/interface: block.h file.h 
	modules/kmem   : _kmem.h _kmem_free.c _kmem_test.c _kslab.h 
	                 _kslab_cache_alloc.c _kslab_cache_free.c 
	                 _kslab_cache_grow.c _kvmem.h _kvmem_alloc.c 
	                 _kvmem_free.c _kvmem_init.c _kvmem_utils.c 
	                 kmem.h 
	modules/kos    : macros.h types.h wolfgang.c 
	modules/lib    : Makefile 
	modules/part   : _part.c _part_karm.c 
	modules/pmm    : _pmm_get_at_addr.c 
	modules/task   : _task_kstack.c _task_uthread.c _task_utils.c 
	                 task.h 
	modules/vmm    : _vmm.h _vmm_as.c _vmm_map.c _vmm_vr.c vmm.h 
	modules/x86/lib: _bitmap.c bitmap.h 
	modules/x86/mm : _gdt.c _pgflt.c _team_mm_context.c _vmap.c mm.h 
	modules/x86/task: _thread_cpu_context.c _tss.c task.h 
Fichiers ajoutés :
	modules/karm   : _karm.h 
	modules/lib/blockfile: Makefile libblockfile.c 

Détails :
* modules/lib/blockfile/libblockfile.c: maps a block device (ide,
part) to an ures with a FILE interface.

* modules/karm/interface/file.h: interface change (types, args).

* modules/kos/wolfgang.c (file_test): tests read method (for
libblockfile only as for now).

* modules/kos/macros.h (IS_POWER_OF_2): new macro

* modules/karm/interface/block.h: types and order of the arguments
passed to the block method changed.

* modules/karm/interface.c (NB_ARGS_ARRAY): new macro to ease the
declaration of nb_args arrays consistent with the interface/*/*.h
(same number of elements as in the array of operations).
(_interface_init_engine): the code that checks this consistency

* modules/kos/types.h: new type count_t to count the number of
objects (blocks, ...) different than bytes (=> use size_t for
it). New types large_size_t, large_offset_t to measure LARGE
values (64bits).

* modules/part/_part_karm.c, modules/ide/_ide_karm.c: registers a
file view for the block device + report change of BLOCK interface.

* modules/ide/_ide_karm.c (_ide_block_read): Manages to retrieve
multiple blocks

* modules/ide/_ide.c (_ide_io_polled_operation): Retrieves a
single block

* modules/*: Everything is clean regarding vaddr_t/paddr_t: there
are no addr_t anymore

Compile et tests ide/part/libblockfile Ok.