Wichtige NR's
NR_REGS NR_SEGS NR_TASKS NR_PROCS NR_PROCS NR_HOLES
Wichtige Strukturen
struct mem_map {
vir_clicks mem_vir;
phys_clicks mem_phys;
vir_clicks mem_len;
};
EXTERN struct proc {
int p_reg [NR_REGS];
...
struct mem_map [NR_SEGS];
...
} proc [NR_TASKS + NR_PROCS];
PRIVATE struct hole {
phys_clicks h_base;
phys_clicks h_len;
struct hole *h_next;
} hole [NR_HOLES];
typedef unsigned vir_bytes;
typedef unsigned vir_clicks;
typedef long phys_bytes;
typedef unsigned phys_clicks;
typedef int signed_clicks;
Wichtig
kernel mm fs
h kernel mm fs
h
h/const.h
h/callnr.h
h/com.h
h/error.h
h/sgtty.h
h/signal.h
h/stat.h
h/type.h
kernel
kernel/const.h
kernel/glo.h
kernel/proc.h
kernel/type.h
kernel/main.c
kernel/mpx88.s
kernel/klib88.s
kernel/proc.c
kernel/memory.c
kernel/floppy.c
kernel/clock.c
kernel/tty.c
kernel/system.c
mm
mm/const.h
mm/glo.h
mm/mproc.h
mm/param.h
mm/type.h
mm/main.c
mm/forkexit.c
mm/exec.c
mm/break.c
mm/signal.c
mm/getset.c
mm/alloc.c
fs
h
h/const.h
h/callnr.h
h/com.h
h/error.h
h/sgtty.h
Datenstrukturen fuer IOCTL
struct sggtyb {...}
struct tchars {...}
h/signal.h
NR_SIGS
N_SIGS
SIGHUP
SIGINT
SIGQUIT
SIGILL
SIGTRAP
SIGIOT
SIGEMT
...
SIGKILL
...
SIGPIPE
SIGSYS
SIGALARM
SIGTERM
h/stat.h
h/type.h
typedef unsigned vir_bytes;
typedef unsigned vir_clicks;
typedef long phys_bytes;
typedef unsigned phys_clicks;
typedef int signed_clicks;
kernel
kernel/const.h
NR_REGS
ES_REG
DS_REG
CS_REG
SS_REG
Interrupt Vektoren: DIVIDE_VECTOR, CLOCK_VECTOR, KEYBOARD_VECTOR, FLOPPY_VECTOR
PIC 8259A
kernel/glo.h
kernel/proc.h
kernel/type.h
kernel/main.c
main ()
unexpected_int ()
trap ()
div_trap ()
panic ()
set_vec (vec_nr, addr, base_click)
kernel/mpx88.s
MINIX
s_call
tty_int
lpr_int
disk_int
wini_int
clock_int
suprise
trp
divide
save
restart
idle
data
kernel/klib88.s
phys_copy
cp_mess
port_out
port_in
lock
unlock
restore
build_sig
csv
cret
get_chrome
dma_read
vid_copy
get_byte
reboot
wreboot
kernel/proc.c
sys_call
interrupt
ready
unready
sched
mini_send
pick_proc
kernel/memory.c
mem_task
do_mem
do_setup
kernel/floopy.c
floppy_task
do_rdwt
dma_setup
start_motor
stop_motor
seek
transfer
fdc_results
fdc_out
recalibrate
reset
clock_mess
send_mess
kernel/clock.c
clock_task
do_setalarm
do_get_time
do_set_time
do_clock_tick
accounting
init_clock
kernel/tty.c
tty_task // Hauptroutine
do_charint
in_char
make_break
echo
chuck
do_read
rd_chars
finish
do_write
do_ioctl
do_cancel
tty_reply
sigchar
keyboard
console
out_char
scroll_screen
flush
move_to
escape
set_6845
beep
tty_init
putc
func_key
kernel/system.c
sys_task
do_fork
do_newmap
do_exec
do_xit
do_getsp
do_times
do_abort
do_sig
do_copy
cause_sig
inform
umap
mm
mm/const.h
mm/glo.h
mm/mproc.h
mm/param.h
mm/type.h
mm/main.c
main
get_work
reply
mm_init
do_brk2
set_map
mm/forkexit.c
do_fork
do_mm_exit
mm_exit
do_wait
cleanup
mm/exec.c
do_exec
read_header
new_mem
patch_ptr
load_seg
mm/break.c
do_brk
adjust
size_ok
stack_fault
mm/signal.c
do_signal
do_kill
do_ksig
check_sig
sig_proc
do_alarm
set_alarm
do_pause
unpause
dump_core
mm/getset.c
do_getset
mm/alloc.c
alloc_mem
free_mem
del_slot
merge
max_hole
mem_init
fs