/media/sda-magnetic/david/Dok-15-2023-11-27/fernuni-hagen/cs-i-ii/old-cs-2-01/informatik2/bash-programming/lex-yacc-bash-etc/minix00018.txt


public phys_clicks alloc_mem (phys_click clicks) {
    register struct hole *hp, *prev_ptr;
    phys_clicks clicks;
    
    hp = hole_head;
    
    while (hp != NIL_HOLE) {
        if (hp->h_len >= clicks) {
            old_base = hp->h_base;
            hp->h_base += clicks;
            hp->h_len -= clicks;
            
            if (hp->h_len != 0)
                return old_base;
            del_slot (prev_ptr, hp);
            return old_base;
        }
        prev_ptr = hp;
        hp = hp->h_next;
    }

return E_NO_MEM;
}

mm/mproc.h
mm/param.h
mm/ǵlo.h
mm/const.h

mm/alloc.c
mm/break.c
mm/signal.c
mm/forkexit.c
mm/exec.c
mm/main.c
mm/getset.c
mm/putc.c
mm/table.c

alloc_mem ()
free_mem ()
del_slot ()
merge ()
max_hole ()
mem_init ()

do_brk2 ()
flush ()
do_ksig ()
check_sig ()
do_pause ()
do_alrm ()
do_fork ()
do_exit ()
do_exec ()
putc ()