BOOK.PS
资源名称:os_source.zip [点击查看]
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:2328k
源码类别:
操作系统开发
开发平台:
C/C++
- (16300)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (table)210 1362 A
- (has)126 1614 A
- (one)126 1782 A
- (slot)168 1950 A
- (per)126 2160 A
- (process.)336 2328 A
- 2748(It)S
- (contains)336 2874 A
- (all)126 3252 A
- (the)126 3420 A
- (memory)252 3588 A
- (management)420 3882 A
- 1440 V
- (16301)210 648 A
- 1068(*)S
- (information)462 1152 A
- (for)126 1656 A
- (each)168 1824 A
- (process.)336 2034 A
- (Among)210 2454 A
- (other)210 2706 A
- (things,)294 2958 A
- 3294(it)S
- (defines)294 3420 A
- (the)126 3756 A
- (text,)210 3924 A
- (data)168 4176 A
- 1530 V
- (16302)210 648 A
- 1068(*)S
- (and)126 1152 A
- (stack)210 1320 A
- (segments,)378 1572 A
- (uids)168 1992 A
- (and)126 2202 A
- (gids,)210 2370 A
- (and)126 2622 A
- (various)294 2790 A
- (flags.)252 3126 A
- (The)126 3462 A
- (kernel)252 3630 A
- (and)126 3924 A
- (file)168 4092 A
- 1620 V
- (16303)210 648 A
- 1068(*)S
- (systems)294 1152 A
- (have)168 1488 A
- (tables)252 1698 A
- (that)168 1992 A
- (are)126 2202 A
- (also)168 2370 A
- (indexed)294 2580 A
- 2916(by)S
- (process,)336 3042 A
- (with)168 3420 A
- (the)126 3630 A
- (contents)336 3798 A
- 1710 V
- (16304)210 648 A
- 1068(*)S
- 1152(of)S
- (corresponding)546 1278 A
- (slots)210 1866 A
- (referring)378 2118 A
- 2538(to)S
- (the)126 2664 A
- (same)168 2832 A
- (process)294 3042 A
- 3378(in)S
- (all)126 3504 A
- (three.)252 3672 A
- 1800 V
- (16305)210 648 A
- 1068(*/)S
- 1890 V
- (16306)210 648 A
- 1980 V
- (16307)210 648 A
- (EXTERN)252 1026 A
- (struct)252 1320 A
- (mproc)210 1614 A
- 1866({)S
- 2070 V
- (16308)210 648 A
- (struct)252 1110 A
- (mem_map)294 1404 A
- (mp_seg[NR_SEGS];/*)756 1740 A
- (points)252 2538 A
- 2832(to)S
- (text,)210 2958 A
- (data,)210 3210 A
- (stack)210 3462 A
- 3714(*/)S
- 2160 V
- (16309)210 648 A
- (char)168 1110 A
- (mp_exitstatus;)588 1320 A
- 2370(/*)S
- (storage)294 2496 A
- (for)126 2832 A
- (status)252 3000 A
- (when)168 3294 A
- (process)294 3504 A
- (exits)210 3840 A
- 4092(*/)S
- 2250 V
- (16310)210 648 A
- (char)168 1110 A
- (mp_sigstatus;)546 1320 A
- 2370(/*)S
- (storage)294 2496 A
- (for)126 2832 A
- (signal)252 3000 A
- 3294(#)S
- (for)126 3378 A
- (killed)252 3546 A
- (procs)210 3840 A
- 4092(*/)S
- 2340 V
- (16311)210 648 A
- (pid_t)210 1110 A
- (mp_pid;)294 1362 A
- 2370(/*)S
- (process)294 2496 A
- 2832(id)S
- 2958(*/)S
- 2430 V
- (16312)210 648 A
- (pid_t)210 1110 A
- (mp_procgrp;)462 1362 A
- 2370(/*)S
- (pid)126 2496 A
- 2664(of)S
- (process)294 2790 A
- (group)210 3126 A
- ((used)210 3378 A
- (for)126 3630 A
- (signals))336 3798 A
- 4176(*/)S
- 2520 V
- (16313)210 648 A
- (pid_t)210 1110 A
- (mp_wpid;)336 1362 A
- 2370(/*)S
- (pid)126 2496 A
- (this)168 2664 A
- (process)294 2874 A
- 3210(is)S
- (waiting)294 3336 A
- (for)126 3672 A
- 3840(*/)S
- 2610 V
- (16314)210 648 A
- (int)126 1110 A
- (mp_parent;)420 1278 A
- 2370(/*)S
- (index)210 2496 A
- 2748(of)S
- (parent)252 2874 A
- (process)294 3168 A
- 3504(*/)S
- 2700 V
- (16315)210 648 A
- 2790 V
- (16316)210 648 A
- 1110(/*)S
- (Real)168 1236 A
- (and)126 1446 A
- (effective)378 1614 A
- (uids)168 2034 A
- (and)126 2244 A
- (gids.)210 2412 A
- 2664(*/)S
- 2880 V
- (16317)210 648 A
- (uid_t)210 1110 A
- (mp_realuid;)462 1362 A
- 2370(/*)S
- (process')336 2496 A
- (real)168 2874 A
- (uid)126 3084 A
- 3252(*/)S
- 2970 V
- (16318)210 648 A
- (uid_t)210 1110 A
- (mp_effuid;)420 1362 A
- 2370(/*)S
- (process')336 2496 A
- (effective)378 2874 A
- (uid)126 3294 A
- 3462(*/)S
- 3060 V
- (16319)210 648 A
- (gid_t)210 1110 A
- (mp_realgid;)462 1362 A
- 2370(/*)S
- (process')336 2496 A
- (real)168 2874 A
- (gid)126 3084 A
- 3252(*/)S
- 3150 V
- (16320)210 648 A
- (gid_t)210 1110 A
- (mp_effgid;)420 1362 A
- 2370(/*)S
- (process')336 2496 A
- (effective)378 2874 A
- (gid)126 3294 A
- 3462(*/)S
- 3240 V
- (16321)210 648 A
- 3330 V
- (16322)210 648 A
- 1110(/*)S
- (File)168 1236 A
- (identification)588 1446 A
- (for)126 2076 A
- (sharing.)336 2244 A
- 2622(*/)S
- 3420 V
- (16323)210 648 A
- (ino_t)210 1110 A
- (mp_ino;)294 1362 A
- 2370(/*)S
- (inode)210 2496 A
- (number)252 2748 A
- 3042(of)S
- (file)168 3168 A
- 3378(*/)S
- 3510 V
- (16324)210 648 A
- (dev_t)210 1110 A
- (mp_dev;)294 1362 A
- 2370(/*)S
- (device)252 2496 A
- (number)252 2790 A
- 3084(of)S
- (file)168 3210 A
- (system)252 3420 A
- 3714(*/)S
- 3600 V
- (16325)210 648 A
- (time_t)252 1110 A
- (mp_ctime;)378 1404 A
- 2370(/*)S
- (inode)210 2496 A
- (changed)294 2748 A
- (time)168 3084 A
- 3294(*/)S
- 3690 V
- (16326)210 648 A
- 3780 V
- (16327)210 648 A
- 1110(/*)S
- (Signal)252 1236 A
- (handling)336 1530 A
- (information.)504 1908 A
- 2454(*/)S
- 3870 V
- (16328)210 648 A
- (sigset_t)336 1110 A
- (mp_ignore;)420 1488 A
- 2370(/*)S
- 2496(1)S
- (means)210 2580 A
- (ignore)252 2832 A
- (the)126 3126 A
- (signal,)294 3294 A
- 3630(0)S
- (means)210 3714 A
- (don't)210 3966 A
- 4218(*/)S
- 3960 V
- (16329)210 648 A
- (sigset_t)336 1110 A
- (mp_catch;)378 1488 A
- 2370(/*)S
- 2496(1)S
- (means)210 2580 A
- (catch)210 2832 A
- (the)126 3084 A
- (signal,)294 3252 A
- 3588(0)S
- (means)210 3672 A
- (don't)210 3924 A
- 4176(*/)S
- 4050 V
- (16330)210 648 A
- (sigset_t)336 1110 A
- (mp_sigmask;)462 1488 A
- 2370(/*)S
- (signals)294 2496 A
- 2832(to)S
- 2958(be)S
- (blocked)294 3084 A
- 3420(*/)S
- 4140 V
- (16331)210 648 A
- (sigset_t)336 1110 A
- (mp_sigmask2;)504 1488 A
- 2370(/*)S
- (saved)210 2496 A
- (copy)168 2748 A
- 2958(of)S
- (mp_sigmask)420 3084 A
- 3546(*/)S
- 4230 V
- (16332)210 648 A
- (sigset_t)336 1110 A
- (mp_sigpending;)588 1488 A
- 2370(/*)S
- (signals)294 2496 A
- (being)210 2832 A
- (blocked)294 3084 A
- 3420(*/)S
- 4320 V
- (16333)210 648 A
- (struct)252 1110 A
- (sigaction)378 1404 A
- (mp_sigact[_NSIG)630 1824 A
- 2496(+)S
- (1];)126 2580 A
- 2748(/*)S
- 2874(as)S
- 3000(in)S
- (sigaction(2))504 3126 A
- 3672(*/)S
- 4410 V
- (16334)210 648 A
- (vir_bytes)378 1110 A
- (mp_sigreturn;)546 1530 A
- 2370(/*)S
- (address)294 2496 A
- 2832(of)S
- 2958(C)S
- (library)294 3042 A
- (__sigreturn)462 3378 A
- (function)336 3882 A
- 4260(*/)S
- 4500 V
- (16335)210 648 A
- 4590 V
- (16336)210 648 A
- 1110(/*)S
- (Backwards)378 1236 A
- (compatibility)546 1656 A
- (for)126 2244 A
- (signals.)336 2412 A
- 2790(*/)S
- 4680 V
- (16337)210 648 A
- (sighandler_t)504 1110 A
- (mp_func;)336 1656 A
- 2370(/*)S
- (all)126 2496 A
- (sigs)168 2664 A
- (vectored)336 2874 A
- 3252(to)S
- 3378(a)S
- (single)252 3462 A
- (user)168 3756 A
- (fcn)126 3966 A
- 4134(*/)S
- 4770 V
- (16338)210 648 A
- 4860 V
- (16339)210 648 A
- (unsigned)336 1110 A
- (mp_flags;)378 1488 A
- 2370(/*)S
- (flag)168 2496 A
- (bits)168 2706 A
- 2916(*/)S
- 4950 V
- (16340)210 648 A
- (vir_bytes)378 1110 A
- (mp_procargs;)504 1530 A
- 2370(/*)S
- (ptr)126 2496 A
- 2664(to)S
- (proc's)252 2790 A
- (initial)294 3084 A
- (stack)210 3420 A
- (arguments)378 3672 A
- 4092(*/)S
- 5040 V
- (16341)210 648 A
- 1026(})S
- (mproc[NR_PROCS];)672 1110 A
- 5130 V
- (16342)210 648 A
- 5220 V
- (16343)210 648 A
- 1026(/*)S
- (Flag)168 1152 A
- (values)252 1362 A
- 1656(*/)S
- 5310 V
- (16344)210 648 A
- (#define)294 1026 A
- (IN_USE)252 1362 A
- (001)126 2076 A
- 2370(/*)S
- (set)126 2496 A
- (when)168 2664 A
- ('mproc')294 2874 A
- (slot)168 3210 A
- 3420(in)S
- (use)126 3546 A
- 3714(*/)S
- 5400 V
- (16345)210 648 A
- (#define)294 1026 A
- (WAITING)294 1362 A
- (002)126 2076 A
- 2370(/*)S
- (set)126 2496 A
- 2664(by)S
- (WAIT)168 2790 A
- (system)252 3000 A
- (call)168 3294 A
- 3504(*/)S
- 5490 V
- (16346)210 648 A
- (#define)294 1026 A
- (HANGING)294 1362 A
- (004)126 2076 A
- 2370(/*)S
- (set)126 2496 A
- 2664(by)S
- (EXIT)168 2790 A
- (system)252 3000 A
- (call)168 3294 A
- 3504(*/)S
- 5580 V
- (16347)210 648 A
- (#define)294 1026 A
- (PAUSED)252 1362 A
- (010)126 2076 A
- 2370(/*)S
- (set)126 2496 A
- 2664(by)S
- (PAUSE)210 2790 A
- (system)252 3042 A
- (call)168 3336 A
- 3546(*/)S
- 5670 V
- (16348)210 648 A
- (#define)294 1026 A
- (ALARM_ON)336 1362 A
- (020)126 2076 A
- 2370(/*)S
- (set)126 2496 A
- (when)168 2664 A
- (SIGALRM)294 2874 A
- (timer)210 3210 A
- (started)294 3462 A
- 3798(*/)S
- 5760 V
- (16349)210 648 A
- (#define)294 1026 A
- (SEPARATE)336 1362 A
- (040)126 2076 A
- 2370(/*)S
- (set)126 2496 A
- 2664(if)S
- (file)168 2790 A
- 3000(is)S
- (separate)336 3126 A
- 3504(I)S
- 3588(&)S
- 3672(D)S
- (space)210 3756 A
- 4008(*/)S
- 5850 V
- (16350)210 648 A
- (#define)294 1026 A
- (TRACED)252 1362 A
- (0100)168 2034 A
- 2370(/*)S
- (set)126 2496 A
- 2664(if)S
- (process)294 2790 A
- 3126(is)S
- 3252(to)S
- 3378(be)S
- (traced)252 3504 A
- 3798(*/)S
- 5940 V
- (16351)210 648 A
- (#define)294 1026 A
- (STOPPED)294 1362 A
- (0200)168 2034 A
- 2370(/*)S
- (set)126 2496 A
- 2664(if)S
- (process)294 2790 A
- (stopped)294 3126 A
- (for)126 3462 A
- (tracing)294 3630 A
- 3966(*/)S
- 6030 V
- (16352)210 648 A
- (#define)294 1026 A
- (SIGSUSPENDED)504 1362 A
- (0400)168 2034 A
- 2370(/*)S
- (set)126 2496 A
- 2664(by)S
- (SIGSUSPEND)420 2790 A
- (system)252 3252 A
- (call)168 3546 A
- 3756(*/)S
- 6120 V
- (16353)210 648 A
- 6210 V
- (16354)210 648 A
- (#define)294 1026 A
- (NIL_MPROC)378 1362 A
- (((struct)336 1782 A
- (mproc)210 2160 A
- 2412(*))S
- 2538(0))S
- 8418 V
- EP
- %%Page: 226 226
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (226)180 648 A
- 11 R
- 2059(File:)S
- 2292(src/mm/param.h)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 990 V
- 7 LST
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1080 V
- (src/mm/param.h)588 2034 A
- 1170 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1350 V
- (16400)210 648 A
- 1026(/*)S
- (The)126 1152 A
- (following)378 1320 A
- (names)210 1740 A
- (are)126 1992 A
- (synonyms)336 2160 A
- (for)126 2538 A
- (the)126 2706 A
- (variables)378 2874 A
- 3294(in)S
- (the)126 3420 A
- (input)210 3588 A
- (message.)336 3840 A
- 4218(*/)S
- 1440 V
- (16401)210 648 A
- (#define)294 1026 A
- (addr)168 1362 A
- (mm_in.m1_p1)462 2034 A
- 1530 V
- (16402)210 648 A
- (#define)294 1026 A
- (exec_name)378 1362 A
- (mm_in.m1_p1)462 2034 A
- 1620 V
- (16403)210 648 A
- (#define)294 1026 A
- (exec_len)336 1362 A
- (mm_in.m1_i1)462 2034 A
- 1710 V
- (16404)210 648 A
- (#define)294 1026 A
- (func)168 1362 A
- (mm_in.m6_f1)462 2034 A
- 1800 V
- (16405)210 648 A
- (#define)294 1026 A
- (grpid)210 1362 A
- ((gid_t))294 2034 A
- (mm_in.m1_i1)462 2370 A
- 1890 V
- (16406)210 648 A
- (#define)294 1026 A
- (namelen)294 1362 A
- (mm_in.m1_i1)462 2034 A
- 1980 V
- (16407)210 648 A
- (#define)294 1026 A
- (pid)126 1362 A
- (mm_in.m1_i1)462 2034 A
- 2070 V
- (16408)210 648 A
- (#define)294 1026 A
- (seconds)294 1362 A
- (mm_in.m1_i1)462 2034 A
- 2160 V
- (16409)210 648 A
- (#define)294 1026 A
- (sig)126 1362 A
- (mm_in.m6_i1)462 2034 A
- 2250 V
- (16410)210 648 A
- (#define)294 1026 A
- (stack_bytes)462 1362 A
- (mm_in.m1_i2)462 2034 A
- 2340 V
- (16411)210 648 A
- (#define)294 1026 A
- (stack_ptr)378 1362 A
- (mm_in.m1_p2)462 2034 A
- 2430 V
- (16412)210 648 A
- (#define)294 1026 A
- (status)252 1362 A
- (mm_in.m1_i1)462 2034 A
- 2520 V
- (16413)210 648 A
- (#define)294 1026 A
- (usr_id)252 1362 A
- ((uid_t))294 2034 A
- (mm_in.m1_i1)462 2370 A
- 2610 V
- (16414)210 648 A
- (#define)294 1026 A
- (request)294 1362 A
- (mm_in.m2_i2)462 2034 A
- 2700 V
- (16415)210 648 A
- (#define)294 1026 A
- (taddr)210 1362 A
- (mm_in.m2_l1)462 2034 A
- 2790 V
- (16416)210 648 A
- (#define)294 1026 A
- (data)168 1362 A
- (mm_in.m2_l2)462 2034 A
- 2880 V
- (16417)210 648 A
- (#define)294 1026 A
- (sig_nr)252 1362 A
- (mm_in.m1_i2)462 2034 A
- 2970 V
- (16418)210 648 A
- (#define)294 1026 A
- (sig_nsa)294 1362 A
- (mm_in.m1_p1)462 2034 A
- 3060 V
- (16419)210 648 A
- (#define)294 1026 A
- (sig_osa)294 1362 A
- (mm_in.m1_p2)462 2034 A
- 3150 V
- (16420)210 648 A
- (#define)294 1026 A
- (sig_ret)294 1362 A
- (mm_in.m1_p3)462 2034 A
- 3240 V
- (16421)210 648 A
- (#define)294 1026 A
- (sig_set)294 1362 A
- (mm_in.m2_l1)462 2034 A
- 3330 V
- (16422)210 648 A
- (#define)294 1026 A
- (sig_how)294 1362 A
- (mm_in.m2_i1)462 2034 A
- 3420 V
- (16423)210 648 A
- (#define)294 1026 A
- (sig_flags)378 1362 A
- (mm_in.m2_i2)462 2034 A
- 3510 V
- (16424)210 648 A
- (#define)294 1026 A
- (sig_context)462 1362 A
- (mm_in.m2_p1)462 2034 A
- 3600 V
- (16425)210 648 A
- (#ifdef)252 1026 A
- (_SIGMESSAGE)462 1320 A
- 3690 V
- (16426)210 648 A
- (#define)294 1026 A
- (sig_msg)294 1362 A
- (mm_in.m1_i1)462 2034 A
- 3780 V
- (16427)210 648 A
- (#endif)252 1026 A
- 3870 V
- (16428)210 648 A
- (#define)294 1026 A
- (reboot_flag)462 1362 A
- (mm_in.m1_i1)462 2034 A
- 3960 V
- (16429)210 648 A
- (#define)294 1026 A
- (reboot_code)462 1362 A
- (mm_in.m1_p1)462 2034 A
- 4050 V
- (16430)210 648 A
- (#define)294 1026 A
- (reboot_size)462 1362 A
- (mm_in.m1_i2)462 2034 A
- 4140 V
- (16431)210 648 A
- 4230 V
- (16432)210 648 A
- 1026(/*)S
- (The)126 1152 A
- (following)378 1320 A
- (names)210 1740 A
- (are)126 1992 A
- (synonyms)336 2160 A
- (for)126 2538 A
- (the)126 2706 A
- (variables)378 2874 A
- 3294(in)S
- (the)126 3420 A
- (output)252 3588 A
- (message.)336 3882 A
- 4260(*/)S
- 4320 V
- (16433)210 648 A
- (#define)294 1026 A
- (reply_type)420 1362 A
- (mm_out.m_type)546 2034 A
- 4410 V
- (16434)210 648 A
- (#define)294 1026 A
- (reply_i1)336 1362 A
- (mm_out.m2_i1)504 2034 A
- 4500 V
- (16435)210 648 A
- (#define)294 1026 A
- (reply_p1)336 1362 A
- (mm_out.m2_p1)504 2034 A
- 4590 V
- (16436)210 648 A
- (#define)294 1026 A
- (ret_mask)336 1362 A
- (mm_out.m2_l1)504 2034 A
- 4680 V
- (16437)210 648 A
- 5040 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 5130 V
- (src/mm/table.c)588 2034 A
- 5220 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 5400 V
- (16500)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (the)126 1950 A
- (table)210 2118 A
- (used)168 2370 A
- 2580(to)S
- (map)126 2706 A
- (system)252 2874 A
- (call)168 3168 A
- (numbers)294 3378 A
- (onto)168 3714 A
- (the)126 3924 A
- 5490 V
- (16501)210 648 A
- 1068(*)S
- (routines)336 1152 A
- (that)168 1530 A
- (perform)294 1740 A
- (them.)210 2076 A
- 5580 V
- (16502)210 648 A
- 1068(*/)S
- 5670 V
- (16503)210 648 A
- 5760 V
- (16504)210 648 A
- (#define)294 1026 A
- (_TABLE)252 1362 A
- 5850 V
- (16505)210 648 A
- 5940 V
- (16506)210 648 A
- (#include)336 1026 A
- ("mm.h")252 1404 A
- 6030 V
- (16507)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 6120 V
- (16508)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 6210 V
- (16509)210 648 A
- (#include)336 1026 A
- ("mproc.h")378 1404 A
- 8418 V
- EP
- %%Page: 227 227
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2092(File:)S
- 2325(src/mm/table.c)S
- 12 B
- (227)180 4248 A
- 900 V
- 7 LST
- (16510)210 648 A
- (#include)336 1026 A
- ("param.h")378 1404 A
- 990 V
- (16511)210 648 A
- 1080 V
- (16512)210 648 A
- 1026(/*)S
- (Miscellaneous)546 1152 A
- 1740(*/)S
- 1170 V
- (16513)210 648 A
- (char)168 1026 A
- (core_name[])462 1236 A
- 1740(=)S
- ("core";)294 1824 A
- 2370(/*)S
- (file)168 2496 A
- (name)168 2706 A
- (where)210 2916 A
- (core)168 3168 A
- (images)252 3378 A
- (are)126 3672 A
- (produced)336 3840 A
- 4218(*/)S
- 1260 V
- (16514)210 648 A
- 1350 V
- (16515)210 648 A
- (_PROTOTYPE)420 1026 A
- ((int)168 1488 A
- ((*call_vec[NCALLS]),)840 1698 A
- ((void))252 2580 A
- 2874())S
- 2958(=)S
- 3042({)S
- 1440 V
- (16516)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(0)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 1530 V
- (16517)210 648 A
- (do_mm_exit,)462 1362 A
- 2034(/*)S
- 2202(1)S
- 2286(=)S
- (exit)168 2370 A
- 2706(*/)S
- 1620 V
- (16518)210 648 A
- (do_fork,)336 1362 A
- 2034(/*)S
- 2202(2)S
- 2286(=)S
- (fork)168 2370 A
- 2706(*/)S
- 1710 V
- (16519)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(3)S
- 2286(=)S
- (read)168 2370 A
- 2706(*/)S
- 1800 V
- (16520)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(4)S
- 2286(=)S
- (write)210 2370 A
- 2706(*/)S
- 1890 V
- (16521)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(5)S
- 2286(=)S
- (open)168 2370 A
- 2706(*/)S
- 1980 V
- (16522)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(6)S
- 2286(=)S
- (close)210 2370 A
- 2706(*/)S
- 2070 V
- (16523)210 648 A
- (do_waitpid,)462 1362 A
- 2034(/*)S
- 2202(7)S
- 2286(=)S
- (wait)168 2370 A
- 2706(*/)S
- 2160 V
- (16524)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(8)S
- 2286(=)S
- (creat)210 2370 A
- 2706(*/)S
- 2250 V
- (16525)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2202(9)S
- 2286(=)S
- (link)168 2370 A
- 2706(*/)S
- 2340 V
- (16526)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(10)S
- 2286(=)S
- (unlink)252 2370 A
- 2706(*/)S
- 2430 V
- (16527)210 648 A
- (do_waitpid,)462 1362 A
- 2034(/*)S
- 2160(11)S
- 2286(=)S
- (waitpid)294 2370 A
- 2706(*/)S
- 2520 V
- (16528)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(12)S
- 2286(=)S
- (chdir)210 2370 A
- 2706(*/)S
- 2610 V
- (16529)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(13)S
- 2286(=)S
- (time)168 2370 A
- 2706(*/)S
- 2700 V
- (16530)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(14)S
- 2286(=)S
- (mknod)210 2370 A
- 2706(*/)S
- 2790 V
- (16531)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(15)S
- 2286(=)S
- (chmod)210 2370 A
- 2706(*/)S
- 2880 V
- (16532)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(16)S
- 2286(=)S
- (chown)210 2370 A
- 2706(*/)S
- 2970 V
- (16533)210 648 A
- (do_brk,)294 1362 A
- 2034(/*)S
- 2160(17)S
- 2286(=)S
- (break)210 2370 A
- 2706(*/)S
- 3060 V
- (16534)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(18)S
- 2286(=)S
- (stat)168 2370 A
- 2706(*/)S
- 3150 V
- (16535)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(19)S
- 2286(=)S
- (lseek)210 2370 A
- 2706(*/)S
- 3240 V
- (16536)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(20)S
- 2286(=)S
- (getpid)252 2370 A
- 2706(*/)S
- 3330 V
- (16537)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(21)S
- 2286(=)S
- (mount)210 2370 A
- 2706(*/)S
- 3420 V
- (16538)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(22)S
- 2286(=)S
- (umount)252 2370 A
- 2706(*/)S
- 3510 V
- (16539)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(23)S
- 2286(=)S
- (setuid)252 2370 A
- 2706(*/)S
- 3600 V
- (16540)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(24)S
- 2286(=)S
- (getuid)252 2370 A
- 2706(*/)S
- 3690 V
- (16541)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(25)S
- 2286(=)S
- (stime)210 2370 A
- 2706(*/)S
- 3780 V
- (16542)210 648 A
- (do_trace,)378 1362 A
- 2034(/*)S
- 2160(26)S
- 2286(=)S
- (ptrace)252 2370 A
- 2706(*/)S
- 3870 V
- (16543)210 648 A
- (do_alarm,)378 1362 A
- 2034(/*)S
- 2160(27)S
- 2286(=)S
- (alarm)210 2370 A
- 2706(*/)S
- 3960 V
- (16544)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(28)S
- 2286(=)S
- (fstat)210 2370 A
- 2706(*/)S
- 4050 V
- (16545)210 648 A
- (do_pause,)378 1362 A
- 2034(/*)S
- 2160(29)S
- 2286(=)S
- (pause)210 2370 A
- 2706(*/)S
- 4140 V
- (16546)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(30)S
- 2286(=)S
- (utime)210 2370 A
- 2706(*/)S
- 4230 V
- (16547)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(31)S
- 2286(=)S
- ((stty))252 2370 A
- 2706(*/)S
- 4320 V
- (16548)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(32)S
- 2286(=)S
- ((gtty))252 2370 A
- 2706(*/)S
- 4410 V
- (16549)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(33)S
- 2286(=)S
- (access)252 2370 A
- 2706(*/)S
- 4500 V
- (16550)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(34)S
- 2286(=)S
- ((nice))252 2370 A
- 2706(*/)S
- 4590 V
- (16551)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(35)S
- 2286(=)S
- ((ftime))294 2370 A
- 2706(*/)S
- 4680 V
- (16552)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(36)S
- 2286(=)S
- (sync)168 2370 A
- 2706(*/)S
- 4770 V
- (16553)210 648 A
- (do_kill,)336 1362 A
- 2034(/*)S
- 2160(37)S
- 2286(=)S
- (kill)168 2370 A
- 2706(*/)S
- 4860 V
- (16554)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(38)S
- 2286(=)S
- (rename)252 2370 A
- 2706(*/)S
- 4950 V
- (16555)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(39)S
- 2286(=)S
- (mkdir)210 2370 A
- 2706(*/)S
- 5040 V
- (16556)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(40)S
- 2286(=)S
- (rmdir)210 2370 A
- 2706(*/)S
- 5130 V
- (16557)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(41)S
- 2286(=)S
- (dup)126 2370 A
- 2706(*/)S
- 5220 V
- (16558)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(42)S
- 2286(=)S
- (pipe)168 2370 A
- 2706(*/)S
- 5310 V
- (16559)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(43)S
- 2286(=)S
- (times)210 2370 A
- 2706(*/)S
- 5400 V
- (16560)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(44)S
- 2286(=)S
- ((prof))252 2370 A
- 2706(*/)S
- 5490 V
- (16561)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(45)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 5580 V
- (16562)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(46)S
- 2286(=)S
- (setgid)252 2370 A
- 2706(*/)S
- 5670 V
- (16563)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(47)S
- 2286(=)S
- (getgid)252 2370 A
- 2706(*/)S
- 5760 V
- (16564)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(48)S
- 2286(=)S
- ((signal)*/)420 2370 A
- 5850 V
- (16565)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(49)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 5940 V
- (16566)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(50)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 6030 V
- (16567)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(51)S
- 2286(=)S
- ((acct))252 2370 A
- 2706(*/)S
- 6120 V
- (16568)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(52)S
- 2286(=)S
- ((phys))252 2370 A
- 2706(*/)S
- 6210 V
- (16569)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(53)S
- 2286(=)S
- ((lock))252 2370 A
- 2706(*/)S
- 8418 V
- EP
- %%Page: 228 228
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (228)180 648 A
- 11 R
- 2092(File:)S
- 2325(src/mm/table.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (16570)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(54)S
- 2286(=)S
- (ioctl)210 2370 A
- 2706(*/)S
- 990 V
- (16571)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(55)S
- 2286(=)S
- (fcntl)210 2370 A
- 2706(*/)S
- 1080 V
- (16572)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(56)S
- 2286(=)S
- ((mpx))210 2370 A
- 2706(*/)S
- 1170 V
- (16573)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(57)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 1260 V
- (16574)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(58)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 1350 V
- (16575)210 648 A
- (do_exec,)336 1362 A
- 2034(/*)S
- 2160(59)S
- 2286(=)S
- (execve)252 2370 A
- 2706(*/)S
- 1440 V
- (16576)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(60)S
- 2286(=)S
- (umask)210 2370 A
- 2706(*/)S
- 1530 V
- (16577)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(61)S
- 2286(=)S
- (chroot)252 2370 A
- 2706(*/)S
- 1620 V
- (16578)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(62)S
- 2286(=)S
- (setsid)252 2370 A
- 2706(*/)S
- 1710 V
- (16579)210 648 A
- (do_getset,)420 1362 A
- 2034(/*)S
- 2160(63)S
- 2286(=)S
- (getpgrp)294 2370 A
- 2706(*/)S
- 1800 V
- (16580)210 648 A
- 1890 V
- (16581)210 648 A
- (do_ksig,)336 1362 A
- 2034(/*)S
- 2160(64)S
- 2286(=)S
- (KSIG:)210 2370 A
- (signals)294 2622 A
- (originating)462 2958 A
- 3462(in)S
- (the)126 3588 A
- (kernel)252 3756 A
- 4050(*/)S
- 1980 V
- (16582)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(65)S
- 2286(=)S
- (UNPAUSE)294 2370 A
- 2706(*/)S
- 2070 V
- (16583)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(66)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 2160 V
- (16584)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(67)S
- 2286(=)S
- (REVIVE)252 2370 A
- 2706(*/)S
- 2250 V
- (16585)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(68)S
- 2286(=)S
- (TASK_REPLY)420 2370 A
- 2874(*/)S
- 2340 V
- (16586)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(69)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 2430 V
- (16587)210 648 A
- (no_sys,)294 1362 A
- 2034(/*)S
- 2160(70)S
- 2286(=)S
- (unused)252 2370 A
- 2706(*/)S
- 2520 V
- (16588)210 648 A
- (do_sigaction,)546 1362 A
- 2034(/*)S
- 2160(71)S
- 2286(=)S
- (sigaction)378 2370 A
- 2874(*/)S
- 2610 V
- (16589)210 648 A
- (do_sigsuspend,)588 1362 A
- 2034(/*)S
- 2160(72)S
- 2286(=)S
- (sigsuspend)420 2370 A
- 2874(*/)S
- 2700 V
- (16590)210 648 A
- (do_sigpending,)588 1362 A
- 2034(/*)S
- 2160(73)S
- 2286(=)S
- (sigpending)420 2370 A
- 2874(*/)S
- 2790 V
- (16591)210 648 A
- (do_sigprocmask,)630 1362 A
- 2034(/*)S
- 2160(74)S
- 2286(=)S
- (sigprocmask)462 2370 A
- 2874(*/)S
- 2880 V
- (16592)210 648 A
- (do_sigreturn,)546 1362 A
- 2034(/*)S
- 2160(75)S
- 2286(=)S
- (sigreturn)378 2370 A
- 2874(*/)S
- 2970 V
- (16593)210 648 A
- (do_reboot,)420 1362 A
- 2034(/*)S
- 2160(76)S
- 2286(=)S
- (reboot)252 2370 A
- 2706(*/)S
- 3060 V
- (16594)210 648 A
- 1026(};)S
- 3690 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 3780 V
- (src/mm/main.c)546 2034 A
- 3870 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 4050 V
- (16600)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (the)126 1950 A
- (main)168 2118 A
- (program)294 2328 A
- 2664(of)S
- (the)126 2790 A
- (memory)252 2958 A
- (manager)294 3252 A
- (and)126 3588 A
- (some)168 3756 A
- (related)294 3966 A
- 4140 V
- (16601)210 648 A
- 1068(*)S
- (procedures.)462 1152 A
- (When)168 1698 A
- (MINIX)210 1908 A
- (starts)252 2160 A
- (up,)126 2454 A
- (the)126 2622 A
- (kernel)252 2790 A
- (runs)168 3084 A
- (for)126 3294 A
- 3462(a)S
- (little)252 3546 A
- (while,)252 3840 A
- 4230 V
- (16602)210 648 A
- 1068(*)S
- (initializing)504 1152 A
- (itself)252 1698 A
- (and)126 1992 A
- (its)126 2160 A
- (tasks,)252 2328 A
- (and)126 2622 A
- (then)168 2790 A
- 3000(it)S
- (runs)168 3126 A
- 3336(MM)S
- (and)126 3462 A
- (FS.)126 3630 A
- (Both)168 3840 A
- 4050(MM)S
- 4320 V
- (16603)210 648 A
- 1068(*)S
- (and)126 1152 A
- 1320(FS)S
- (initialize)420 1446 A
- (themselves)420 1908 A
- 2370(as)S
- (far)126 2496 A
- 2664(as)S
- (they)168 2790 A
- (can.)168 3000 A
- 3252(FS)S
- (then)168 3378 A
- (makes)210 3588 A
- 3840(a)S
- (call)168 3924 A
- 4134(to)S
- 4410 V
- (16604)210 648 A
- 1068(*)S
- (MM,)126 1152 A
- (because)294 1320 A
- 1656(MM)S
- (has)126 1782 A
- 1950(to)S
- (wait)168 2076 A
- (for)126 2286 A
- 2454(FS)S
- 2580(to)S
- (acquire)294 2706 A
- 3042(a)S
- (RAM)126 3126 A
- (disk.)210 3294 A
- 3588(MM)S
- (asks)168 3714 A
- (the)126 3924 A
- 4500 V
- (16605)210 648 A
- 1068(*)S
- (kernel)252 1152 A
- (for)126 1446 A
- (all)126 1614 A
- (free)168 1782 A
- (memory)252 1992 A
- (and)126 2286 A
- (starts)252 2454 A
- (serving)294 2748 A
- (requests.)378 3084 A
- 4590 V
- (16606)210 648 A
- 1068(*)S
- 4680 V
- (16607)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entry)210 1320 A
- (points)252 1572 A
- (into)168 1866 A
- (this)168 2076 A
- (file)168 2286 A
- (are:)168 2496 A
- 4770 V
- (16608)210 648 A
- 1068(*)S
- (main:)210 1236 A
- (starts)252 1698 A
- 1992(MM)S
- (running)294 2118 A
- 4860 V
- (16609)210 648 A
- 1068(*)S
- (reply:)252 1236 A
- (reply)210 1698 A
- 1950(to)S
- 2076(a)S
- (process)294 2160 A
- (making)252 2496 A
- 2790(an)S
- 2916(MM)S
- (system)252 3042 A
- (call)168 3336 A
- 4950 V
- (16610)210 648 A
- 1068(*/)S
- 5040 V
- (16611)210 648 A
- 5130 V
- (16612)210 648 A
- (#include)336 1026 A
- ("mm.h")252 1404 A
- 5220 V
- (16613)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 5310 V
- (16614)210 648 A
- (#include)336 1026 A
- (<minix/com.h>)546 1404 A
- 5400 V
- (16615)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 5490 V
- (16616)210 648 A
- (#include)336 1026 A
- (<fcntl.h>)378 1404 A
- 5580 V
- (16617)210 648 A
- (#include)336 1026 A
- (<sys/ioctl.h>)546 1404 A
- 5670 V
- (16618)210 648 A
- (#include)336 1026 A
- ("mproc.h")378 1404 A
- 5760 V
- (16619)210 648 A
- (#include)336 1026 A
- ("param.h")378 1404 A
- 5850 V
- (16620)210 648 A
- 5940 V
- (16621)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (get_work,)378 2076 A
- ((void))252 2496 A
- 4050();)S
- 6030 V
- (16622)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (mm_init,)336 2076 A
- ((void))252 2454 A
- 4050();)S
- 6120 V
- (16623)210 648 A
- 6210 V
- (16624)210 648 A
- (/*===========================================================================*)3276 1026 A
- 8418 V
- EP
- %%Page: 229 229
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2089(File:)S
- 2322(src/mm/main.c)S
- 12 B
- (229)180 4248 A
- 900 V
- 7 LST
- (16625)210 648 A
- 1068(*)S
- (main)168 2370 A
- 4260(*)S
- 990 V
- (16626)210 648 A
- (*===========================================================================*/)3276 1068 A
- 1080 V
- (16627)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (main())252 1530 A
- 1170 V
- (16628)210 648 A
- 1026({)S
- 1260 V
- (16629)210 648 A
- 1026(/*)S
- (Main)168 1152 A
- (routine)294 1362 A
- 1698(of)S
- (the)126 1824 A
- (memory)252 1992 A
- (manager.)336 2286 A
- 2664(*/)S
- 1350 V
- (16630)210 648 A
- 1440 V
- (16631)210 648 A
- (int)126 1110 A
- (error;)252 1278 A
- 1530 V
- (16632)210 648 A
- 1620 V
- (16633)210 648 A
- (mm_init();)420 1110 A
- 2370(/*)S
- (initialize)420 2496 A
- (memory)252 2958 A
- (manager)294 3252 A
- (tables)252 3588 A
- 3882(*/)S
- 1710 V
- (16634)210 648 A
- 1800 V
- (16635)210 648 A
- 1110(/*)S
- (This)168 1236 A
- 1446(is)S
- (MM's)168 1572 A
- (main)168 1782 A
- (loop-)210 1992 A
- (get)126 2286 A
- (work)168 2454 A
- (and)126 2664 A
- 2832(do)S
- (it,)126 2958 A
- (forever)294 3126 A
- (and)126 3462 A
- (forever.)336 3630 A
- 4008(*/)S
- 1890 V
- (16636)210 648 A
- (while)210 1110 A
- ((TRUE))252 1362 A
- 1656({)S
- 1980 V
- (16637)210 648 A
- 1362(/*)S
- (Wait)168 1488 A
- (for)126 1698 A
- (message.)336 1866 A
- 2244(*/)S
- 2070 V
- (16638)210 648 A
- (get_work();)462 1362 A
- 2370(/*)S
- (wait)168 2496 A
- (for)126 2706 A
- 2874(an)S
- 3000(MM)S
- (system)252 3126 A
- (call)168 3420 A
- 3630(*/)S
- 2160 V
- (16639)210 648 A
- 1362(mp)S
- 1488(=)S
- (&mproc[who];)504 1572 A
- 2250 V
- (16640)210 648 A
- 2340 V
- (16641)210 648 A
- 1362(/*)S
- (Set)126 1488 A
- (some)168 1656 A
- (flags.)252 1866 A
- 2160(*/)S
- 2430 V
- (16642)210 648 A
- (error)210 1362 A
- 1614(=)S
- (OK;)126 1698 A
- 2520 V
- (16643)210 648 A
- (dont_reply)420 1362 A
- 1824(=)S
- (FALSE;)252 1908 A
- 2610 V
- (16644)210 648 A
- (err_code)336 1362 A
- 1740(=)S
- (-999;)210 1824 A
- 2700 V
- (16645)210 648 A
- 2790 V
- (16646)210 648 A
- 1362(/*)S
- 1488(If)S
- (the)126 1614 A
- (call)168 1782 A
- (number)252 1992 A
- 2286(is)S
- (valid,)252 2412 A
- (perform)294 2706 A
- (the)126 3042 A
- (call.)210 3210 A
- 3462(*/)S
- 2880 V
- (16647)210 648 A
- 1362(if)S
- ((mm_call)336 1488 A
- 1866(<)S
- 1950(0)S
- 2034(||)S
- (mm_call)294 2160 A
- 2496(>=)S
- (NCALLS))294 2622 A
- 2970 V
- (16648)210 648 A
- (error)210 1698 A
- 1950(=)S
- (EBADCALL;)378 2034 A
- 3060 V
- (16649)210 648 A
- (else)168 1362 A
- 3150 V
- (16650)210 648 A
- (error)210 1698 A
- 1950(=)S
- ((*call_vec[mm_call])();)966 2034 A
- 3240 V
- (16651)210 648 A
- 3330 V
- (16652)210 648 A
- 1362(/*)S
- (Send)168 1488 A
- (the)126 1698 A
- (results)294 1866 A
- (back)168 2202 A
- 2412(to)S
- (the)126 2538 A
- (user)168 2706 A
- 2916(to)S
- (indicate)336 3042 A
- (completion.)462 3420 A
- 3924(*/)S
- 3420 V
- (16653)210 648 A
- 1362(if)S
- ((dont_reply))504 1488 A
- (continue;)378 2034 A
- 2706(/*)S
- 2832(no)S
- (reply)210 2958 A
- (for)126 3210 A
- (EXIT)168 3378 A
- (and)126 3588 A
- (WAIT)168 3756 A
- 3966(*/)S
- 3510 V
- (16654)210 648 A
- 1362(if)S
- ((mm_call)336 1488 A
- 1866(==)S
- (EXEC)168 1992 A
- 2202(&&)S
- (error)210 2328 A
- 2580(==)S
- (OK))126 2706 A
- (continue;)378 2874 A
- 3600 V
- (16655)210 648 A
- (reply(who,)420 1362 A
- (error,)252 1824 A
- (result2,)336 2118 A
- (res_ptr);)378 2496 A
- 3690 V
- (16656)210 648 A
- 1110(})S
- 3780 V
- (16657)210 648 A
- 1026(})S
- 4050 V
- (16660)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4140 V
- (16661)210 648 A
- 1068(*)S
- (get_work)336 2370 A
- 4260(*)S
- 4230 V
- (16662)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4320 V
- (16663)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (get_work())420 1572 A
- 4410 V
- (16664)210 648 A
- 1026({)S
- 4500 V
- (16665)210 648 A
- 1026(/*)S
- (Wait)168 1152 A
- (for)126 1362 A
- (the)126 1530 A
- (next)168 1698 A
- (message)294 1908 A
- (and)126 2244 A
- (extract)294 2412 A
- (useful)252 2748 A
- (information)462 3042 A
- (from)168 3546 A
- (it.)126 3756 A
- 3924(*/)S
- 4590 V
- (16666)210 648 A
- 4680 V
- (16667)210 648 A
- 1110(if)S
- ((receive(ANY,)546 1236 A
- (&mm_in))294 1824 A
- 2160(!=)S
- (OK))126 2286 A
- (panic("MM)378 2454 A
- (receive)294 2874 A
- (error",)294 3210 A
- (NO_NUM);)336 3546 A
- 4770 V
- (16668)210 648 A
- (who)126 1110 A
- 1278(=)S
- (mm_in.m_source;)630 1362 A
- 2370(/*)S
- (who)126 2496 A
- (sent)168 2664 A
- (the)126 2874 A
- (message)294 3042 A
- 3378(*/)S
- 4860 V
- (16669)210 648 A
- (mm_call)294 1110 A
- 1446(=)S
- (mm_in.m_type;)546 1530 A
- 2370(/*)S
- (system)252 2496 A
- (call)168 2790 A
- (number)252 3000 A
- 3294(*/)S
- 4950 V
- (16670)210 648 A
- 1026(})S
- 5220 V
- (16673)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5310 V
- (16674)210 648 A
- 1068(*)S
- (reply)210 2370 A
- 4260(*)S
- 5400 V
- (16675)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5490 V
- (16676)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (reply(proc_nr,)588 1530 A
- (result,)294 2160 A
- (res2,)210 2496 A
- (respt))252 2748 A
- 5580 V
- (16677)210 648 A
- (int)126 1026 A
- (proc_nr;)336 1194 A
- 2370(/*)S
- (process)294 2496 A
- 2832(to)S
- (reply)210 2958 A
- 3210(to)S
- 3336(*/)S
- 5670 V
- (16678)210 648 A
- (int)126 1026 A
- (result;)294 1194 A
- 2370(/*)S
- (result)252 2496 A
- 2790(of)S
- (the)126 2916 A
- (call)168 3084 A
- ((usually)336 3294 A
- 3672(OK)S
- 3798(or)S
- (error)210 3924 A
- (#)*/)168 4176 A
- 5760 V
- (16679)210 648 A
- (int)126 1026 A
- (res2;)210 1194 A
- 2370(/*)S
- (secondary)378 2496 A
- (result)252 2916 A
- 3210(*/)S
- 5850 V
- (16680)210 648 A
- (char)168 1026 A
- (*respt;)294 1236 A
- 2370(/*)S
- (result)252 2496 A
- 2790(if)S
- (pointer)294 2916 A
- 3252(*/)S
- 5940 V
- (16681)210 648 A
- 1026({)S
- 6030 V
- (16682)210 648 A
- 1026(/*)S
- (Send)168 1152 A
- 1362(a)S
- (reply)210 1446 A
- 1698(to)S
- 1824(a)S
- (user)168 1908 A
- (process.)336 2118 A
- 2496(*/)S
- 6120 V
- (16683)210 648 A
- 6210 V
- (16684)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*proc_ptr;)420 2034 A
- 8418 V
- EP
- %%Page: 230 230
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (230)180 648 A
- 11 R
- 2089(File:)S
- 2322(src/mm/main.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (16685)210 648 A
- 990 V
- (16686)210 648 A
- (proc_ptr)336 1110 A
- 1488(=)S
- (&mproc[proc_nr];)672 1572 A
- 1080 V
- (16687)210 648 A
- 1110(/*)S
- 1170 V
- (16688)210 648 A
- 1152(*)S
- 1236(To)S
- (make)168 1362 A
- 1572(MM)S
- (robust,)294 1698 A
- (check)210 2034 A
- 2286(to)S
- (see)126 2412 A
- 2580(if)S
- (destination)462 2706 A
- 3210(is)S
- (still)210 3336 A
- (alive.)252 3588 A
- (This)168 3924 A
- 1260 V
- (16689)210 648 A
- 1152(*)S
- (validy)252 1236 A
- (check)210 1530 A
- (must)168 1782 A
- 1992(be)S
- (skipped)294 2118 A
- 2454(if)S
- (the)126 2580 A
- (caller)252 2748 A
- 3042(is)S
- 3168(a)S
- (task.)210 3252 A
- 1350 V
- (16690)210 648 A
- 1152(*/)S
- 1440 V
- (16691)210 648 A
- 1110(if)S
- (((who)210 1236 A
- (>=0))168 1488 A
- 1698(&&)S
- (((proc_ptr->mp_flags&IN_USE))1176 1824 A
- 3042(==)S
- 3168(0)S
- 3252(||)S
- 1530 V
- (16692)210 648 A
- ((proc_ptr->mp_flags&HANGING))))1260 1362 A
- (return;)294 2664 A
- 1620 V
- (16693)210 648 A
- 1710 V
- (16694)210 648 A
- (reply_type)420 1110 A
- 1572(=)S
- (result;)294 1656 A
- 1800 V
- (16695)210 648 A
- (reply_i1)336 1110 A
- 1488(=)S
- (res2;)210 1572 A
- 1890 V
- (16696)210 648 A
- (reply_p1)336 1110 A
- 1488(=)S
- (respt;)252 1572 A
- 1980 V
- (16697)210 648 A
- 1110(if)S
- ((send(proc_nr,)588 1236 A
- (&mm_out))336 1866 A
- 2244(!=)S
- (OK))126 2370 A
- (panic("MM)378 2538 A
- (can't)210 2958 A
- (reply",)294 3210 A
- (NO_NUM);)336 3546 A
- 2070 V
- (16698)210 648 A
- 1026(})S
- 2340 V
- (16701)210 648 A
- (/*===========================================================================*)3276 1026 A
- 2430 V
- (16702)210 648 A
- 1068(*)S
- (mm_init)294 2370 A
- 4260(*)S
- 2520 V
- (16703)210 648 A
- (*===========================================================================*/)3276 1068 A
- 2610 V
- (16704)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (mm_init())378 1572 A
- 2700 V
- (16705)210 648 A
- 1026({)S
- 2790 V
- (16706)210 648 A
- 1026(/*)S
- (Initialize)420 1152 A
- (the)126 1614 A
- (memory)252 1782 A
- (manager.)336 2076 A
- 2454(*/)S
- 2880 V
- (16707)210 648 A
- 2970 V
- (16708)210 648 A
- (static)252 1110 A
- (char)168 1404 A
- (core_sigs[])462 1614 A
- 2118(=)S
- 2202({)S
- 3060 V
- (16709)210 648 A
- (SIGQUIT,)336 1362 A
- (SIGILL,)294 1740 A
- (SIGTRAP,)336 2076 A
- (SIGABRT,)336 2454 A
- 3150 V
- (16710)210 648 A
- (SIGEMT,)294 1362 A
- (SIGFPE,)294 1698 A
- (SIGUSR1,)336 2034 A
- (SIGSEGV,)336 2412 A
- 3240 V
- (16711)210 648 A
- (SIGUSR2,)336 1362 A
- 1740(0)S
- 1824(};)S
- 3330 V
- (16712)210 648 A
- (register)336 1110 A
- (int)126 1488 A
- (proc_nr;)336 1656 A
- 3420 V
- (16713)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*rmp;)210 2034 A
- 3510 V
- (16714)210 648 A
- (register)336 1110 A
- (char)168 1488 A
- (*sig_ptr;)378 1698 A
- 3600 V
- (16715)210 648 A
- (phys_clicks)462 1110 A
- (ram_clicks,)462 1614 A
- (total_clicks,)546 2118 A
- (minix_clicks,)546 2706 A
- (free_clicks,)504 3294 A
- (dummy;)252 3840 A
- 3690 V
- (16716)210 648 A
- (message)294 1110 A
- (mess;)210 1446 A
- 3780 V
- (16717)210 648 A
- (struct)252 1110 A
- (mem_map)294 1404 A
- (kernel_map[NR_SEGS];)840 1740 A
- 3870 V
- (16718)210 648 A
- (int)126 1110 A
- (mem;)168 1278 A
- 3960 V
- (16719)210 648 A
- 4050 V
- (16720)210 648 A
- 1110(/*)S
- (Build)210 1236 A
- (the)126 1488 A
- (set)126 1656 A
- 1824(of)S
- (signals)294 1950 A
- (which)210 2286 A
- (cause)210 2538 A
- (core)168 2790 A
- (dumps.)252 3000 A
- 3294(Do)S
- 3420(it)S
- (the)126 3546 A
- (Posix)210 3714 A
- 4140 V
- (16721)210 648 A
- 1152(*)S
- (way,)168 1236 A
- 1446(so)S
- 1572(no)S
- (knowledge)378 1698 A
- 2118(of)S
- (bit)126 2244 A
- (positions)378 2412 A
- 2832(is)S
- (needed.)294 2958 A
- 4230 V
- (16722)210 648 A
- 1152(*/)S
- 4320 V
- (16723)210 648 A
- (sigemptyset(&core_sset);)1008 1110 A
- 4410 V
- (16724)210 648 A
- (for)126 1110 A
- ((sig_ptr)336 1278 A
- 1656(=)S
- (core_sigs;)420 1740 A
- (*sig_ptr)336 2202 A
- 2580(!=)S
- 2706(0;)S
- (sig_ptr++))420 2832 A
- 4500 V
- (16725)210 648 A
- (sigaddset(&core_sset,)882 1362 A
- (*sig_ptr);)420 2286 A
- 4590 V
- (16726)210 648 A
- 4680 V
- (16727)210 648 A
- 1110(/*)S
- (Get)126 1236 A
- (the)126 1404 A
- (memory)252 1572 A
- (map)126 1866 A
- 2034(of)S
- (the)126 2160 A
- (kernel)252 2328 A
- 2622(to)S
- (see)126 2748 A
- (how)126 2916 A
- (much)168 3084 A
- (memory)252 3294 A
- 3588(it)S
- (uses,)210 3714 A
- 4770 V
- (16728)210 648 A
- 1152(*)S
- (including)378 1236 A
- (the)126 1656 A
- (gap)126 1824 A
- (between)294 1992 A
- (address)294 2328 A
- 2664(0)S
- (and)126 2748 A
- (the)126 2916 A
- (start)210 3084 A
- 3336(of)S
- (the)126 3462 A
- (kernel.)294 3630 A
- 4860 V
- (16729)210 648 A
- 1152(*/)S
- 4950 V
- (16730)210 648 A
- (sys_getmap(SYSTASK,)798 1110 A
- (kernel_map);)504 1950 A
- 5040 V
- (16731)210 648 A
- (minix_clicks)504 1110 A
- 1656(=)S
- (kernel_map[S].mem_phys)924 1740 A
- 2706(+)S
- (kernel_map[S].mem_len;)924 2790 A
- 5130 V
- (16732)210 648 A
- 5220 V
- (16733)210 648 A
- 1110(/*)S
- (Initialize)420 1236 A
- (MM's)168 1698 A
- (tables.)294 1908 A
- 2244(*/)S
- 5310 V
- (16734)210 648 A
- (for)126 1110 A
- ((proc_nr)336 1278 A
- 1656(=)S
- 1740(0;)S
- (proc_nr)294 1866 A
- 2202(<=)S
- (INIT_PROC_NR;)546 2328 A
- (proc_nr++))420 2916 A
- 3378({)S
- 5400 V
- (16735)210 648 A
- (rmp)126 1362 A
- 1530(=)S
- (&mproc[proc_nr];)672 1614 A
- 5490 V
- (16736)210 648 A
- (rmp->mp_flags)546 1362 A
- 1950(|=)S
- (IN_USE;)294 2076 A
- 5580 V
- (16737)210 648 A
- (sys_getmap(proc_nr,)798 1362 A
- (rmp->mp_seg);)546 2202 A
- 5670 V
- (16738)210 648 A
- 1362(if)S
- ((rmp->mp_seg[T].mem_len)966 1488 A
- 2496(!=)S
- 2622(0))S
- (rmp->mp_flags)546 2748 A
- 3336(|=)S
- (SEPARATE;)378 3462 A
- 5760 V
- (16739)210 648 A
- (minix_clicks)504 1362 A
- 1908(+=)S
- ((rmp->mp_seg[S].mem_phys)1008 2034 A
- 3084(+)S
- (rmp->mp_seg[S].mem_len))966 3168 A
- 5850 V
- (16740)210 648 A
- 2370(-)S
- (rmp->mp_seg[T].mem_phys;)1008 2454 A
- 5940 V
- (16741)210 648 A
- 1110(})S
- 6030 V
- (16742)210 648 A
- (mproc[INIT_PROC_NR].mp_pid)1092 1110 A
- 2244(=)S
- (INIT_PID;)378 2328 A
- 6120 V
- (16743)210 648 A
- (sigemptyset(&mproc[INIT_PROC_NR].mp_ignore);)1848 1110 A
- 6210 V
- (16744)210 648 A
- (sigemptyset(&mproc[INIT_PROC_NR].mp_catch);)1806 1110 A
- 8418 V
- EP
- %%Page: 231 231
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2089(File:)S
- 2322(src/mm/main.c)S
- 12 B
- (231)180 4248 A
- 900 V
- 7 LST
- (16745)210 648 A
- (procs_in_use)504 1110 A
- 1656(=)S
- (LOW_USER)336 1740 A
- 2118(+)S
- 2202(1;)S
- 990 V
- (16746)210 648 A
- 1080 V
- (16747)210 648 A
- 1110(/*)S
- (Wait)168 1236 A
- (for)126 1446 A
- 1614(FS)S
- 1740(to)S
- (send)168 1866 A
- 2076(a)S
- (message)294 2160 A
- (telling)294 2496 A
- (the)126 2832 A
- (RAM)126 3000 A
- (disk)168 3168 A
- (size)168 3378 A
- (then)168 3588 A
- 3798(go)S
- ("on-line".)420 3924 A
- 1170 V
- (16748)210 648 A
- 1152(*/)S
- 1260 V
- (16749)210 648 A
- 1110(if)S
- ((receive(FS_PROC_NR,)840 1236 A
- (&mess))252 2118 A
- 2412(!=)S
- (OK))126 2538 A
- 1350 V
- (16750)210 648 A
- (panic("MM)378 1362 A
- (can't)210 1782 A
- (obtain)252 2034 A
- (RAM)126 2328 A
- (disk)168 2496 A
- (size)168 2706 A
- (from)168 2916 A
- (FS",)168 3126 A
- (NO_NUM);)336 3336 A
- 1440 V
- (16751)210 648 A
- 1530 V
- (16752)210 648 A
- (ram_clicks)420 1110 A
- 1572(=)S
- (mess.m1_i1;)462 1656 A
- 1620 V
- (16753)210 648 A
- 1710 V
- (16754)210 648 A
- 1110(/*)S
- (Initialize)420 1236 A
- (tables)252 1698 A
- 1992(to)S
- (all)126 2118 A
- (physical)336 2286 A
- (mem.)168 2664 A
- 2874(*/)S
- 1800 V
- (16755)210 648 A
- (mem_init(&total_clicks,)966 1110 A
- (&free_clicks);)588 2118 A
- 1890 V
- (16756)210 648 A
- 1980 V
- (16757)210 648 A
- 1110(/*)S
- (Print)210 1236 A
- (memory)252 1488 A
- (information.)504 1782 A
- 2328(*/)S
- 2070 V
- (16758)210 648 A
- (printf("\nMemory)672 1110 A
- (size)168 1824 A
- (=%5dK)210 2034 A
- 2370(",)S
- (click_to_round_k(total_clicks));)1344 2496 A
- 2160 V
- (16759)210 648 A
- (printf("MINIX)546 1110 A
- (=%4dK)210 1698 A
- 2034(",)S
- (click_to_round_k(minix_clicks));)1344 2160 A
- 2250 V
- (16760)210 648 A
- (printf("RAM)462 1110 A
- (disk)168 1614 A
- (=%5dK)210 1824 A
- 2160(",)S
- (click_to_round_k(ram_clicks));)1260 2286 A
- 2340 V
- (16761)210 648 A
- (printf("Available)714 1110 A
- (=%5dK\n\n",)462 1866 A
- (click_to_round_k(free_clicks));)1302 2370 A
- 2430 V
- (16762)210 648 A
- 2520 V
- (16763)210 648 A
- 1110(/*)S
- (Tell)168 1236 A
- 1446(FS)S
- 1572(to)S
- (continue.)378 1698 A
- 2118(*/)S
- 2610 V
- (16764)210 648 A
- 1110(if)S
- ((send(FS_PROC_NR,)714 1236 A
- (&mess))252 1992 A
- 2286(!=)S
- (OK))126 2412 A
- 2700 V
- (16765)210 648 A
- (panic("MM)378 1362 A
- (can't)210 1782 A
- (sync)168 2034 A
- 2244(up)S
- (with)168 2370 A
- (FS",)168 2580 A
- (NO_NUM);)336 2790 A
- 2790 V
- (16766)210 648 A
- 2880 V
- (16767)210 648 A
- 1110(/*)S
- (Tell)168 1236 A
- (the)126 1446 A
- (memory)252 1614 A
- (task)168 1908 A
- (where)210 2118 A
- 2370(my)S
- (process)294 2496 A
- (table)210 2832 A
- 3084(is)S
- (for)126 3210 A
- (the)126 3378 A
- (sake)168 3546 A
- 3756(of)S
- (ps(1).)252 3882 A
- 4176(*/)S
- 2970 V
- (16768)210 648 A
- 1110(if)S
- (((mem)210 1236 A
- 1488(=)S
- (open("/dev/mem",)672 1572 A
- (O_RDWR)))336 2286 A
- 2664(!=)S
- (-1))126 2790 A
- 2958({)S
- 3060 V
- (16769)210 648 A
- (ioctl(mem,)420 1362 A
- (MIOCSPSINFO,)504 1824 A
- ((void)210 2370 A
- 2622(*))S
- (mproc);)294 2748 A
- 3150 V
- (16770)210 648 A
- (close(mem);)462 1362 A
- 3240 V
- (16771)210 648 A
- 1110(})S
- 3330 V
- (16772)210 648 A
- 1026(})S
- 3690 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 3780 V
- (src/mm/forkexit.c)714 2034 A
- 3870 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 4050 V
- (16800)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (deals)210 1572 A
- (with)168 1824 A
- (creating)336 2034 A
- (processes)378 2412 A
- ((via)168 2832 A
- (FORK))210 3042 A
- (and)126 3294 A
- (deleting)336 3462 A
- (them)168 3840 A
- ((via)168 4050 A
- 4140 V
- (16801)210 648 A
- 1068(*)S
- (EXIT/WAIT).)462 1152 A
- (When)168 1698 A
- 1908(a)S
- (process)294 1992 A
- (forks,)252 2328 A
- 2622(a)S
- (new)126 2706 A
- (slot)168 2874 A
- 3084(in)S
- (the)126 3210 A
- ('mproc')294 3378 A
- (table)210 3714 A
- 3966(is)S
- 4230 V
- (16802)210 648 A
- 1068(*)S
- (allocated)378 1152 A
- (for)126 1572 A
- (it,)126 1740 A
- (and)126 1908 A
- 2076(a)S
- (copy)168 2160 A
- 2370(of)S
- (the)126 2496 A
- (parent's)336 2664 A
- (core)168 3042 A
- (image)210 3252 A
- 3504(is)S
- (made)168 3630 A
- (for)126 3840 A
- (the)126 4008 A
- 4320 V
- (16803)210 648 A
- 1068(*)S
- (child.)252 1152 A
- (Then)168 1488 A
- (the)126 1698 A
- (kernel)252 1866 A
- (and)126 2160 A
- (file)168 2328 A
- (system)252 2538 A
- (are)126 2832 A
- (informed.)378 3000 A
- 3462(A)S
- (process)294 3546 A
- 3882(is)S
- (removed)294 4008 A
- 4410 V
- (16804)210 648 A
- 1068(*)S
- (from)168 1152 A
- (the)126 1362 A
- ('mproc')294 1530 A
- (table)210 1866 A
- (when)168 2118 A
- (two)126 2328 A
- (events)252 2496 A
- (have)168 2790 A
- (occurred:)378 3000 A
- ((1))126 3420 A
- 3588(it)S
- (has)126 3714 A
- (exited)252 3882 A
- 4176(or)S
- 4500 V
- (16805)210 648 A
- 1068(*)S
- (been)168 1152 A
- (killed)252 1362 A
- 1656(by)S
- 1782(a)S
- (signal,)294 1866 A
- (and)126 2202 A
- ((2))126 2370 A
- (the)126 2538 A
- (parent)252 2706 A
- (has)126 3000 A
- (done)168 3168 A
- 3378(a)S
- (WAIT.)210 3462 A
- 3756(If)S
- (the)126 3882 A
- (process)294 4050 A
- 4590 V
- (16806)210 648 A
- 1068(*)S
- (exits)210 1152 A
- (first,)252 1404 A
- 1698(it)S
- (continues)378 1824 A
- 2244(to)S
- (occupy)252 2370 A
- 2664(a)S
- (slot)168 2748 A
- (until)210 2958 A
- (the)126 3210 A
- (parent)252 3378 A
- (does)168 3672 A
- 3882(a)S
- (WAIT.)210 3966 A
- 4680 V
- (16807)210 648 A
- 1068(*)S
- 4770 V
- (16808)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entry)210 1320 A
- (points)252 1572 A
- (into)168 1866 A
- (this)168 2076 A
- (file)168 2286 A
- (are:)168 2496 A
- 4860 V
- (16809)210 648 A
- 1068(*)S
- (do_fork:)336 1236 A
- (perform)294 1740 A
- (the)126 2076 A
- (FORK)168 2244 A
- (system)252 2454 A
- (call)168 2748 A
- 4950 V
- (16810)210 648 A
- 1068(*)S
- (do_mm_exit:)462 1236 A
- (perform)294 1740 A
- (the)126 2076 A
- (EXIT)168 2244 A
- (system)252 2454 A
- (call)168 2748 A
- ((by)126 2958 A
- (calling)294 3126 A
- (mm_exit()))420 3462 A
- 5040 V
- (16811)210 648 A
- 1068(*)S
- (mm_exit:)336 1236 A
- (actually)336 1740 A
- 2118(do)S
- (the)126 2244 A
- (exiting)294 2412 A
- 5130 V
- (16812)210 648 A
- 1068(*)S
- (do_wait:)336 1236 A
- (perform)294 1740 A
- (the)126 2076 A
- (WAITPID)294 2244 A
- 2580(or)S
- (WAIT)168 2706 A
- (system)252 2916 A
- (call)168 3210 A
- 5220 V
- (16813)210 648 A
- 1068(*/)S
- 5310 V
- (16814)210 648 A
- 5400 V
- (16815)210 648 A
- 5490 V
- (16816)210 648 A
- (#include)336 1026 A
- ("mm.h")252 1404 A
- 5580 V
- (16817)210 648 A
- (#include)336 1026 A
- (<sys/wait.h>)504 1404 A
- 5670 V
- (16818)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 5760 V
- (16819)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 5850 V
- (16820)210 648 A
- (#include)336 1026 A
- ("mproc.h")378 1404 A
- 5940 V
- (16821)210 648 A
- (#include)336 1026 A
- ("param.h")378 1404 A
- 6030 V
- (16822)210 648 A
- 6120 V
- (16823)210 648 A
- (#define)294 1026 A
- (LAST_FEW)336 1362 A
- 2202(2)S
- 2370(/*)S
- (last)168 2496 A
- (few)126 2706 A
- (slots)210 2874 A
- (reserved)336 3126 A
- (for)126 3504 A
- (superuser)378 3672 A
- 4092(*/)S
- 6210 V
- (16824)210 648 A
- 8418 V
- EP
- %%Page: 232 232
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (232)180 648 A
- 11 R
- 2025(File:)S
- 2258(src/mm/forkexit.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (16825)210 648 A
- (PRIVATE)294 1026 A
- (pid_t)210 1362 A
- (next_pid)336 1614 A
- 1992(=)S
- (INIT_PID+1;)462 2076 A
- 2706(/*)S
- (next)168 2832 A
- (pid)126 3042 A
- 3210(to)S
- 3336(be)S
- (assigned)336 3462 A
- 3840(*/)S
- 990 V
- (16826)210 648 A
- 1080 V
- (16827)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE)420 1362 A
- ((void)210 1824 A
- (cleanup,)336 2076 A
- ((register)378 2454 A
- (struct)252 2874 A
- (mproc)210 3168 A
- (*child))294 3420 A
- 3756();)S
- 1170 V
- (16828)210 648 A
- 1260 V
- (16829)210 648 A
- (/*===========================================================================*)3276 1026 A
- 1350 V
- (16830)210 648 A
- 1068(*)S
- (do_fork)294 2370 A
- 4260(*)S
- 1440 V
- (16831)210 648 A
- (*===========================================================================*/)3276 1068 A
- 1530 V
- (16832)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_fork())378 1488 A
- 1620 V
- (16833)210 648 A
- 1026({)S
- 1710 V
- (16834)210 648 A
- 1026(/*)S
- (The)126 1152 A
- (process)294 1320 A
- (pointed)294 1656 A
- 1992(to)S
- 2118(by)S
- ('mp')168 2244 A
- (has)126 2454 A
- (forked.)294 2622 A
- (Create)252 3000 A
- 3294(a)S
- (child)210 3378 A
- (process.)336 3630 A
- 4008(*/)S
- 1800 V
- (16835)210 648 A
- 1890 V
- (16836)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*rmp;)210 2034 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (parent)252 2958 A
- 3252(*/)S
- 1980 V
- (16837)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*rmc;)210 2034 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (child)210 2958 A
- 3210(*/)S
- 2070 V
- (16838)210 648 A
- (int)126 1110 A
- 1278(i,)S
- (child_nr,)378 1404 A
- 1824(t;)S
- 2160 V
- (16839)210 648 A
- (phys_clicks)462 1110 A
- (prog_clicks,)504 1614 A
- (child_base)420 2160 A
- 2622(=)S
- 2706(0;)S
- 2250 V
- (16840)210 648 A
- (phys_bytes)420 1110 A
- (prog_bytes,)462 1572 A
- (parent_abs,)462 2076 A
- (child_abs;)420 2580 A
- 3042(/*)S
- (Intel)210 3168 A
- (only)168 3420 A
- 3630(*/)S
- 2340 V
- (16841)210 648 A
- 2430 V
- (16842)210 648 A
- 1068(/*)S
- 1194(If)S
- (tables)252 1320 A
- (might)210 1614 A
- (fill)168 1866 A
- 2076(up)S
- (during)252 2202 A
- (FORK,)210 2496 A
- (don't)210 2748 A
- (even)168 3000 A
- (start)210 3210 A
- (since)210 3462 A
- (recovery)336 3714 A
- (half)168 4092 A
- 2520 V
- (16843)210 648 A
- 1110(*)S
- (way)126 1194 A
- (through)294 1362 A
- 1698(is)S
- (such)168 1824 A
- 2034(a)S
- (nuisance.)378 2118 A
- 2610 V
- (16844)210 648 A
- 1110(*/)S
- 2700 V
- (16845)210 648 A
- (rmp)126 1110 A
- 1278(=)S
- (mp;)126 1362 A
- 2790 V
- (16846)210 648 A
- 1110(if)S
- ((procs_in_use)546 1236 A
- 1824(==)S
- (NR_PROCS))378 1950 A
- (return(EAGAIN);)630 2370 A
- 2880 V
- (16847)210 648 A
- 1110(if)S
- ((procs_in_use)546 1236 A
- 1824(>=)S
- (NR_PROCS-LAST_FEW)714 1950 A
- 2706(&&)S
- (rmp->mp_effuid)588 2832 A
- 3462(!=)S
- (0)return(EAGAIN);)714 3588 A
- 2970 V
- (16848)210 648 A
- 3060 V
- (16849)210 648 A
- 1110(/*)S
- (Determine)378 1236 A
- (how)126 1656 A
- (much)168 1824 A
- (memory)252 2034 A
- 2328(to)S
- (allocate.)378 2454 A
- (Only)168 2916 A
- (the)126 3126 A
- (data)168 3294 A
- (and)126 3504 A
- (stack)210 3672 A
- (need)168 3924 A
- 4134(to)S
- 3150 V
- (16850)210 648 A
- 1152(*)S
- 1236(be)S
- (copied,)294 1362 A
- (because)294 1698 A
- (the)126 2034 A
- (text)168 2202 A
- (segment)294 2412 A
- 2748(is)S
- (either)252 2874 A
- (shared)252 3168 A
- 3462(or)S
- 3588(of)S
- (zero)168 3714 A
- (length.)294 3924 A
- 3240 V
- (16851)210 648 A
- 1152(*/)S
- 3330 V
- (16852)210 648 A
- (prog_clicks)462 1110 A
- 1614(=)S
- ((phys_clicks))546 1698 A
- (rmp->mp_seg[S].mem_len;)966 2286 A
- 3420 V
- (16853)210 648 A
- (prog_clicks)462 1110 A
- 1614(+=)S
- ((rmp->mp_seg[S].mem_vir)966 1740 A
- 2748(-)S
- (rmp->mp_seg[D].mem_vir);)1008 2832 A
- 3510 V
- (16854)210 648 A
- (prog_bytes)420 1110 A
- 1572(=)S
- ((phys_bytes))504 1656 A
- (prog_clicks)462 2202 A
- 2706(<<)S
- (CLICK_SHIFT;)504 2832 A
- 3600 V
- (16855)210 648 A
- 1110(if)S
- 1236(()S
- ((child_base)462 1320 A
- 1824(=)S
- (alloc_mem(prog_clicks)))966 1908 A
- 2916(==)S
- (NO_MEM))294 3042 A
- (return(EAGAIN);)630 3378 A
- 3690 V
- (16856)210 648 A
- 3780 V
- (16857)210 648 A
- 1110(/*)S
- (Create)252 1236 A
- 1530(a)S
- (copy)168 1614 A
- 1824(of)S
- (the)126 1950 A
- (parent's)336 2118 A
- (core)168 2496 A
- (image)210 2706 A
- (for)126 2958 A
- (the)126 3126 A
- (child.)252 3294 A
- 3588(*/)S
- 3870 V
- (16858)210 648 A
- (child_abs)378 1110 A
- 1530(=)S
- ((phys_bytes))504 1614 A
- (child_base)420 2160 A
- 2622(<<)S
- (CLICK_SHIFT;)504 2748 A
- 3960 V
- (16859)210 648 A
- (parent_abs)420 1110 A
- 1572(=)S
- ((phys_bytes))504 1656 A
- (rmp->mp_seg[D].mem_phys)966 2202 A
- 3210(<<)S
- (CLICK_SHIFT;)504 3336 A
- 4050 V
- (16860)210 648 A
- 1110(i)S
- 1194(=)S
- (sys_copy(ABS,)546 1278 A
- 1866(0,)S
- (parent_abs,)462 1992 A
- (ABS,)168 2496 A
- 2706(0,)S
- (child_abs,)420 2832 A
- (prog_bytes);)504 3294 A
- 4140 V
- (16861)210 648 A
- 1110(if)S
- 1236((i)S
- 1362(<)S
- 1446(0))S
- (panic("do_fork)588 1572 A
- (can't)210 2202 A
- (copy",)252 2454 A
- (i);)126 2748 A
- 4230 V
- (16862)210 648 A
- 4320 V
- (16863)210 648 A
- 1110(/*)S
- (Find)168 1236 A
- 1446(a)S
- (slot)168 1530 A
- 1740(in)S
- ('mproc')294 1866 A
- (for)126 2202 A
- (the)126 2370 A
- (child)210 2538 A
- (process.)336 2790 A
- 3210(A)S
- (slot)168 3294 A
- (must)168 3504 A
- (exist.)252 3714 A
- 4008(*/)S
- 4410 V
- (16864)210 648 A
- (for)126 1110 A
- ((rmc)168 1278 A
- 1488(=)S
- (&mproc[0];)420 1572 A
- (rmc)126 2034 A
- 2202(<)S
- (&mproc[NR_PROCS];)714 2286 A
- (rmc++))252 3042 A
- 4500 V
- (16865)210 648 A
- 1362(if)S
- 1488(()S
- ((rmc->mp_flags)588 1572 A
- 2202(&)S
- (IN_USE))294 2286 A
- 2622(==)S
- 2748(0))S
- (break;)252 2874 A
- 4590 V
- (16866)210 648 A
- 4680 V
- (16867)210 648 A
- 1110(/*)S
- (Set)126 1236 A
- 1404(up)S
- (the)126 1530 A
- (child)210 1698 A
- (and)126 1950 A
- (its)126 2118 A
- (memory)252 2286 A
- (map;)168 2580 A
- (copy)168 2790 A
- (its)126 3000 A
- ('mproc')294 3168 A
- (slot)168 3504 A
- (from)168 3714 A
- (parent.)294 3924 A
- 4260(*/)S
- 4770 V
- (16868)210 648 A
- (child_nr)336 1110 A
- 1488(=)S
- ((int)(rmc)378 1572 A
- 1992(-)S
- (mproc);)294 2076 A
- 2706(/*)S
- (slot)168 2832 A
- (number)252 3042 A
- 3336(of)S
- (the)126 3462 A
- (child)210 3630 A
- 3882(*/)S
- 4860 V
- (16869)210 648 A
- (procs_in_use++;)630 1110 A
- 4950 V
- (16870)210 648 A
- (*rmc)168 1110 A
- 1320(=)S
- (*rmp;)210 1404 A
- 2370(/*)S
- (copy)168 2496 A
- (parent's)336 2706 A
- (process)294 3084 A
- (slot)168 3420 A
- 3630(to)S
- (child's)294 3756 A
- 4092(*/)S
- 5040 V
- (16871)210 648 A
- 5130 V
- (16872)210 648 A
- (rmc->mp_parent)588 1110 A
- 1740(=)S
- (who;)168 1824 A
- 2370(/*)S
- (record)252 2496 A
- (child's)294 2790 A
- (parent)252 3126 A
- 3420(*/)S
- 5220 V
- (16873)210 648 A
- (rmc->mp_flags)546 1110 A
- 1698(&=)S
- (304TRACED;)336 1824 A
- 2370(/*)S
- (child)210 2496 A
- (does)168 2748 A
- (not)126 2958 A
- (inherit)294 3126 A
- (trace)210 3462 A
- (status)252 3714 A
- 4008(*/)S
- 5310 V
- (16874)210 648 A
- 1110(/*)S
- 1236(A)S
- (separate)336 1320 A
- (I&D)126 1698 A
- (child)210 1866 A
- (keeps)210 2118 A
- (the)126 2370 A
- (parents)294 2538 A
- (text)168 2874 A
- (segment.)336 3084 A
- (The)126 3504 A
- (data)168 3672 A
- (and)126 3882 A
- (stack)210 4050 A
- 5400 V
- (16875)210 648 A
- 1152(*)S
- (segments)336 1236 A
- (must)168 1614 A
- (refer)210 1824 A
- 2076(to)S
- (the)126 2202 A
- (new)126 2370 A
- (copy.)210 2538 A
- 5490 V
- (16876)210 648 A
- 1152(*/)S
- 5580 V
- (16877)210 648 A
- 1110(if)S
- ((!(rmc->mp_flags)672 1236 A
- 1950(&)S
- (SEPARATE)))420 2034 A
- (rmc->mp_seg[T].mem_phys)966 2496 A
- 3504(=)S
- (child_base;)462 3588 A
- 5670 V
- (16878)210 648 A
- (rmc->mp_seg[D].mem_phys)966 1110 A
- 2118(=)S
- (child_base;)462 2202 A
- 5760 V
- (16879)210 648 A
- (rmc->mp_seg[S].mem_phys)966 1110 A
- 2118(=)S
- (rmc->mp_seg[D].mem_phys)966 2202 A
- 3210(+)S
- 5850 V
- (16880)210 648 A
- ((rmp->mp_seg[S].mem_vir)966 2034 A
- 3042(-)S
- (rmp->mp_seg[D].mem_vir);)1008 3126 A
- 5940 V
- (16881)210 648 A
- (rmc->mp_exitstatus)756 1110 A
- 1908(=)S
- 1992(0;)S
- 6030 V
- (16882)210 648 A
- (rmc->mp_sigstatus)714 1110 A
- 1866(=)S
- 1950(0;)S
- 6120 V
- (16883)210 648 A
- 6210 V
- (16884)210 648 A
- 1110(/*)S
- (Find)168 1236 A
- 1446(a)S
- (free)168 1530 A
- (pid)126 1740 A
- (for)126 1908 A
- (the)126 2076 A
- (child)210 2244 A
- (and)126 2496 A
- (put)126 2664 A
- 2832(it)S
- 2958(in)S
- (the)126 3084 A
- (table.)252 3252 A
- 3546(*/)S
- 8418 V
- EP
- %%Page: 233 233
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2025(File:)S
- 2258(src/mm/forkexit.c)S
- 12 B
- (233)180 4248 A
- 900 V
- 7 LST
- (16885)210 648 A
- 1110(do)S
- 1236({)S
- 990 V
- (16886)210 648 A
- 1362(t)S
- 1446(=)S
- 1530(0;)S
- 2370(/*)S
- ('t')126 2496 A
- 2664(=)S
- 2748(0)S
- (means)210 2832 A
- (pid)126 3084 A
- (still)210 3252 A
- (free)168 3504 A
- 3714(*/)S
- 1080 V
- (16887)210 648 A
- (next_pid)336 1362 A
- 1740(=)S
- ((next_pid)378 1824 A
- 2244(<)S
- (30000)210 2328 A
- 2580(?)S
- (next_pid)336 2664 A
- 3042(+)S
- 3126(1)S
- 3210(:)S
- (INIT_PID)336 3294 A
- 3672(+)S
- (1);)126 3756 A
- 1170 V
- (16888)210 648 A
- (for)126 1362 A
- ((rmp)168 1530 A
- 1740(=)S
- (&mproc[0];)420 1824 A
- (rmp)126 2286 A
- 2454(<)S
- (&mproc[NR_PROCS];)714 2538 A
- (rmp++))252 3294 A
- 1260 V
- (16889)210 648 A
- 1698(if)S
- ((rmp->mp_pid)504 1824 A
- 2370(==)S
- (next_pid)336 2496 A
- 2874(||)S
- (rmp->mp_procgrp)630 3000 A
- 3672(==)S
- (next_pid))378 3798 A
- 4218({)S
- 1350 V
- (16890)210 648 A
- 2034(t)S
- 2118(=)S
- 2202(1;)S
- 1440 V
- (16891)210 648 A
- (break;)252 2034 A
- 1530 V
- (16892)210 648 A
- 1698(})S
- 1620 V
- (16893)210 648 A
- (rmc->mp_pid)462 1362 A
- 1866(=)S
- (next_pid;)378 1950 A
- 2370(/*)S
- (assign)252 2496 A
- (pid)126 2790 A
- 2958(to)S
- (child)210 3084 A
- 3336(*/)S
- 1710 V
- (16894)210 648 A
- 1110(})S
- (while)210 1194 A
- ((t);)168 1446 A
- 1800 V
- (16895)210 648 A
- 1890 V
- (16896)210 648 A
- 1110(/*)S
- (Tell)168 1236 A
- (kernel)252 1446 A
- (and)126 1740 A
- (file)168 1908 A
- (system)252 2118 A
- (about)210 2412 A
- (the)126 2664 A
- ((now)168 2832 A
- (successful))462 3042 A
- (FORK.)210 3546 A
- 3798(*/)S
- 1980 V
- (16897)210 648 A
- (sys_fork(who,)546 1110 A
- (child_nr,)378 1698 A
- (rmc->mp_pid,)504 2118 A
- (child_base);)504 2664 A
- 3210(/*)S
- (child_base)420 3336 A
- 3798(is)S
- (68K)126 3924 A
- (only*/)252 4092 A
- 2070 V
- (16898)210 648 A
- (tell_fs(FORK,)546 1110 A
- (who,)168 1698 A
- (child_nr,)378 1908 A
- (rmc->mp_pid);)546 2328 A
- 2160 V
- (16899)210 648 A
- 2250 V
- (16900)210 648 A
- 1110(/*)S
- (Report)252 1236 A
- (child's)294 1530 A
- (memory)252 1866 A
- (map)126 2160 A
- 2328(to)S
- (kernel.)294 2454 A
- 2790(*/)S
- 2340 V
- (16901)210 648 A
- (sys_newmap(child_nr,)840 1110 A
- (rmc->mp_seg);)546 1992 A
- 2430 V
- (16902)210 648 A
- 2520 V
- (16903)210 648 A
- 1110(/*)S
- (Reply)210 1236 A
- 1488(to)S
- (child)210 1614 A
- 1866(to)S
- (wake)168 1992 A
- 2202(it)S
- (up.)126 2328 A
- 2496(*/)S
- 2610 V
- (16904)210 648 A
- (reply(child_nr,)630 1110 A
- 1782(0,)S
- 1908(0,)S
- (NIL_PTR);)378 2034 A
- 2700 V
- (16905)210 648 A
- (return(next_pid);)714 1110 A
- 2412(/*)S
- (child's)294 2538 A
- (pid)126 2874 A
- 3042(*/)S
- 2790 V
- (16906)210 648 A
- 1026(})S
- 3060 V
- (16909)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3150 V
- (16910)210 648 A
- 1068(*)S
- (do_mm_exit)420 2370 A
- 4260(*)S
- 3240 V
- (16911)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3330 V
- (16912)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_mm_exit())504 1488 A
- 3420 V
- (16913)210 648 A
- 1026({)S
- 3510 V
- (16914)210 648 A
- 1026(/*)S
- (Perform)294 1152 A
- (the)126 1488 A
- (exit(status))504 1656 A
- (system)252 2202 A
- (call.)210 2496 A
- (The)126 2748 A
- (real)168 2916 A
- (work)168 3126 A
- 3336(is)S
- (done)168 3462 A
- 3672(by)S
- (mm_exit(),)420 3798 A
- 3600 V
- (16915)210 648 A
- 1068(*)S
- (which)210 1152 A
- 1404(is)S
- (also)168 1530 A
- (called)252 1740 A
- (when)168 2034 A
- 2244(a)S
- (process)294 2328 A
- 2664(is)S
- (killed)252 2790 A
- 3084(by)S
- 3210(a)S
- (signal.)294 3294 A
- 3690 V
- (16916)210 648 A
- 1068(*/)S
- 3780 V
- (16917)210 648 A
- 3870 V
- (16918)210 648 A
- (mm_exit(mp,)462 1110 A
- (status);)336 1614 A
- 3960 V
- (16919)210 648 A
- (dont_reply)420 1110 A
- 1572(=)S
- (TRUE;)210 1656 A
- 2370(/*)S
- (don't)210 2496 A
- (reply)210 2748 A
- 3000(to)S
- (newly)210 3126 A
- (terminated)420 3378 A
- (process)294 3840 A
- 4176(*/)S
- 4050 V
- (16920)210 648 A
- (return(OK);)462 1110 A
- 2370(/*)S
- (pro)126 2496 A
- (forma)210 2664 A
- (return)252 2916 A
- (code)168 3210 A
- 3420(*/)S
- 4140 V
- (16921)210 648 A
- 1026(})S
- 4410 V
- (16924)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4500 V
- (16925)210 648 A
- 1068(*)S
- (mm_exit)294 2370 A
- 4260(*)S
- 4590 V
- (16926)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4680 V
- (16927)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (mm_exit(rmp,)504 1530 A
- (exit_status))504 2076 A
- 4770 V
- (16928)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (mproc)210 1698 A
- (*rmp;)210 1950 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (the)126 2958 A
- (process)294 3126 A
- 3462(to)S
- 3588(be)S
- (terminated)420 3714 A
- 4176(*/)S
- 4860 V
- (16929)210 648 A
- (int)126 1026 A
- (exit_status;)504 1194 A
- 2370(/*)S
- (the)126 2496 A
- (process')336 2664 A
- (exit)168 3042 A
- (status)252 3252 A
- ((for)168 3546 A
- (parent))294 3756 A
- 4092(*/)S
- 4950 V
- (16930)210 648 A
- 1026({)S
- 5040 V
- (16931)210 648 A
- 1026(/*)S
- 1152(A)S
- (process)294 1236 A
- 1572(is)S
- (done.)210 1698 A
- (Release)294 1992 A
- (most)168 2328 A
- 2538(of)S
- (the)126 2664 A
- (process')336 2832 A
- (possessions.)504 3210 A
- 3798(If)S
- (its)126 3924 A
- 5130 V
- (16932)210 648 A
- 1068(*)S
- (parent)252 1152 A
- 1446(is)S
- (waiting,)336 1572 A
- (release)294 1950 A
- (the)126 2286 A
- (rest,)210 2454 A
- (else)168 2706 A
- (hang.)210 2916 A
- 5220 V
- (16933)210 648 A
- 1068(*/)S
- 5310 V
- (16934)210 648 A
- 5400 V
- (16935)210 648 A
- (register)336 1110 A
- (int)126 1488 A
- (proc_nr;)336 1656 A
- 5490 V
- (16936)210 648 A
- (int)126 1110 A
- (parent_waiting,)630 1278 A
- (right_child;)504 1950 A
- 5580 V
- (16937)210 648 A
- (pid_t)210 1110 A
- (pidarg,)294 1362 A
- (procgrp;)336 1698 A
- 5670 V
- (16938)210 648 A
- (phys_clicks)462 1110 A
- (base,)210 1614 A
- (size,)210 1866 A
- 2118(s;)S
- 2706(/*)S
- (base)168 2832 A
- (and)126 3042 A
- (size)168 3210 A
- (used)168 3420 A
- 3630(on)S
- (68000)210 3756 A
- (only)168 4008 A
- 4218(*/)S
- 5760 V
- (16939)210 648 A
- 5850 V
- (16940)210 648 A
- (proc_nr)294 1110 A
- 1446(=)S
- ((int))210 1530 A
- ((rmp)168 1782 A
- 1992(-)S
- (mproc);)294 2076 A
- 2706(/*)S
- (get)126 2832 A
- (process)294 3000 A
- (slot)168 3336 A
- (number)252 3546 A
- 3840(*/)S
- 5940 V
- (16941)210 648 A
- 6030 V
- (16942)210 648 A
- 1110(/*)S
- (Remember)336 1236 A
- 1614(a)S
- (session)294 1698 A
- (leader's)336 2034 A
- (process)294 2412 A
- (group.)252 2748 A
- 3042(*/)S
- 6120 V
- (16943)210 648 A
- (procgrp)294 1110 A
- 1446(=)S
- ((rmp->mp_pid)504 1530 A
- 2076(==)S
- (mp->mp_procgrp))630 2202 A
- 2874(?)S
- (mp->mp_procgrp)588 2958 A
- 3588(:)S
- 3672(0;)S
- 6210 V
- (16944)210 648 A
- 8418 V
- EP
- %%Page: 234 234
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (234)180 648 A
- 11 R
- 2025(File:)S
- 2258(src/mm/forkexit.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (16945)210 648 A
- 1110(/*)S
- 1236(If)S
- (the)126 1362 A
- (exited)252 1530 A
- (process)294 1824 A
- (has)126 2160 A
- 2328(a)S
- (timer)210 2412 A
- (pending,)336 2664 A
- (kill)168 3042 A
- (it.)126 3252 A
- 3420(*/)S
- 990 V
- (16946)210 648 A
- 1110(if)S
- ((rmp->mp_flags)588 1236 A
- 1866(&)S
- (ALARM_ON))378 1950 A
- (set_alarm(proc_nr,)756 2370 A
- ((unsigned))420 3168 A
- (0);)126 3630 A
- 1080 V
- (16947)210 648 A
- 1170 V
- (16948)210 648 A
- 1110(/*)S
- (Tell)168 1236 A
- (the)126 1446 A
- (kernel)252 1614 A
- (and)126 1908 A
- 2076(FS)S
- (that)168 2202 A
- (the)126 2412 A
- (process)294 2580 A
- 2916(is)S
- 3042(no)S
- (longer)252 3168 A
- (runnable.)378 3462 A
- 3882(*/)S
- 1260 V
- (16949)210 648 A
- (tell_fs(EXIT,)546 1110 A
- (proc_nr,)336 1698 A
- 2076(0,)S
- (0);)126 2202 A
- 2412(/*)S
- (file)168 2538 A
- (system)252 2748 A
- (can)126 3042 A
- (free)168 3210 A
- (the)126 3420 A
- (proc)168 3588 A
- (slot)168 3798 A
- 4008(*/)S
- 1350 V
- (16950)210 648 A
- (sys_xit(rmp->mp_parent,)966 1110 A
- (proc_nr,)336 2118 A
- (&base,)252 2496 A
- (&size);)294 2790 A
- 1440 V
- (16951)210 648 A
- 1530 V
- (16952)210 648 A
- 1110(/*)S
- (Release)294 1236 A
- (the)126 1572 A
- (memory)252 1740 A
- (occupied)336 2034 A
- 2412(by)S
- (the)126 2538 A
- (child.)252 2706 A
- 3000(*/)S
- 1620 V
- (16953)210 648 A
- 1110(if)S
- ((find_share(rmp,)672 1236 A
- (rmp->mp_ino,)504 1950 A
- (rmp->mp_dev,)504 2496 A
- (rmp->mp_ctime))588 3042 A
- 3672(==)S
- (NULL))210 3798 A
- 4050({)S
- 1710 V
- (16954)210 648 A
- 1362(/*)S
- 1488(No)S
- (other)210 1614 A
- (process)294 1866 A
- (shares)252 2202 A
- (the)126 2496 A
- (text)168 2664 A
- (segment,)336 2874 A
- 3252(so)S
- (free)168 3378 A
- (it.)126 3588 A
- 3756(*/)S
- 1800 V
- (16955)210 648 A
- (free_mem(rmp->mp_seg[T].mem_phys,)1386 1362 A
- (rmp->mp_seg[T].mem_len);)1008 2790 A
- 1890 V
- (16956)210 648 A
- 1110(})S
- 1980 V
- (16957)210 648 A
- 1110(/*)S
- (Free)168 1236 A
- (the)126 1446 A
- (data)168 1614 A
- (and)126 1824 A
- (stack)210 1992 A
- (segments.)378 2244 A
- 2664(*/)S
- 2070 V
- (16958)210 648 A
- (free_mem(rmp->mp_seg[D].mem_phys,)1386 1110 A
- 2160 V
- (16959)210 648 A
- (rmp->mp_seg[S].mem_vir)924 1278 A
- 2244(+)S
- (rmp->mp_seg[S].mem_len)924 2328 A
- 3294(-)S
- (rmp->mp_seg[D].mem_vir);)1008 3378 A
- 2250 V
- (16960)210 648 A
- 2340 V
- (16961)210 648 A
- 1110(/*)S
- (The)126 1236 A
- (process)294 1404 A
- (slot)168 1740 A
- (can)126 1950 A
- (only)168 2118 A
- 2328(be)S
- (freed)210 2454 A
- 2706(if)S
- (the)126 2832 A
- (parent)252 3000 A
- (has)126 3294 A
- (done)168 3462 A
- 3672(a)S
- (WAIT.)210 3756 A
- 4008(*/)S
- 2430 V
- (16962)210 648 A
- (rmp->mp_exitstatus)756 1110 A
- 1908(=)S
- ((char))252 1992 A
- (exit_status;)504 2286 A
- 2520 V
- (16963)210 648 A
- (pidarg)252 1110 A
- 1404(=)S
- (mproc[rmp->mp_parent].mp_wpid;)1260 1488 A
- 3042(/*)S
- (who's)210 3168 A
- (being)210 3420 A
- (waited)252 3672 A
- (for?)168 3966 A
- 4176(*/)S
- 2610 V
- (16964)210 648 A
- (parent_waiting)588 1110 A
- 1740(=)S
- (mproc[rmp->mp_parent].mp_flags)1260 1824 A
- 3126(&)S
- (WAITING;)336 3210 A
- 2700 V
- (16965)210 648 A
- 1110(if)S
- ((pidarg)294 1236 A
- 1572(==)S
- 1698(-1)S
- 1824(||)S
- (pidarg)252 1950 A
- 2244(==)S
- (rmp->mp_pid)462 2370 A
- 2874(||)S
- (-pidarg)294 3000 A
- 3336(==)S
- (rmp->mp_procgrp))672 3462 A
- 2790 V
- (16966)210 648 A
- (right_child)462 1362 A
- 1866(=)S
- (TRUE;)210 1950 A
- 2706(/*)S
- (child)210 2832 A
- (meets)210 3084 A
- (one)126 3336 A
- 3504(of)S
- (the)126 3630 A
- 3798(3)S
- (tests)210 3882 A
- 4134(*/)S
- 2880 V
- (16967)210 648 A
- (else)168 1110 A
- 2970 V
- (16968)210 648 A
- (right_child)462 1362 A
- 1866(=)S
- (FALSE;)252 1950 A
- 2706(/*)S
- (child)210 2832 A
- (fails)210 3084 A
- (all)126 3336 A
- 3504(3)S
- (tests)210 3588 A
- 3840(*/)S
- 3060 V
- (16969)210 648 A
- 1110(if)S
- ((parent_waiting)630 1236 A
- 1908(&&)S
- (right_child))504 2034 A
- 3150 V
- (16970)210 648 A
- (cleanup(rmp);)546 1362 A
- 2706(/*)S
- (tell)168 2832 A
- (parent)252 3042 A
- (and)126 3336 A
- (release)294 3504 A
- (child)210 3840 A
- (slot)168 4092 A
- 4302(*/)S
- 3240 V
- (16971)210 648 A
- (else)168 1110 A
- 3330 V
- (16972)210 648 A
- (rmp->mp_flags)546 1362 A
- 1950(|=)S
- (HANGING;)336 2076 A
- 2706(/*)S
- (parent)252 2832 A
- (not)126 3126 A
- (waiting,)336 3294 A
- (suspend)294 3672 A
- (child)210 4008 A
- 4260(*/)S
- 3420 V
- (16973)210 648 A
- 3510 V
- (16974)210 648 A
- 1110(/*)S
- 1236(If)S
- (the)126 1362 A
- (process)294 1530 A
- (has)126 1866 A
- (children,)378 2034 A
- (disinherit)420 2454 A
- (them.)210 2916 A
- (INIT)168 3210 A
- 3420(is)S
- (the)126 3546 A
- (new)126 3714 A
- (parent.)294 3882 A
- 4218(*/)S
- 3600 V
- (16975)210 648 A
- (for)126 1110 A
- ((rmp)168 1278 A
- 1488(=)S
- (&mproc[0];)420 1572 A
- (rmp)126 2034 A
- 2202(<)S
- (&mproc[NR_PROCS];)714 2286 A
- (rmp++))252 3042 A
- 3336({)S
- 3690 V
- (16976)210 648 A
- 1362(if)S
- ((rmp->mp_flags)588 1488 A
- 2118(&)S
- (IN_USE)252 2202 A
- 2496(&&)S
- (rmp->mp_parent)588 2622 A
- 3252(==)S
- (proc_nr))336 3378 A
- 3756({)S
- 3780 V
- (16977)210 648 A
- 1698(/*)S
- ('rmp')210 1824 A
- (now)126 2076 A
- (points)252 2244 A
- 2538(to)S
- 2664(a)S
- (child)210 2748 A
- 3000(to)S
- 3126(be)S
- (disinherited.)546 3252 A
- 3840(*/)S
- 3870 V
- (16978)210 648 A
- (rmp->mp_parent)588 1698 A
- 2328(=)S
- (INIT_PROC_NR;)546 2412 A
- 3960 V
- (16979)210 648 A
- (parent_waiting)588 1698 A
- 2328(=)S
- (mproc[INIT_PROC_NR].mp_flags)1176 2412 A
- 3630(&)S
- (WAITING;)336 3714 A
- 4050 V
- (16980)210 648 A
- 1698(if)S
- ((parent_waiting)630 1824 A
- 2496(&&)S
- ((rmp->mp_flags)588 2622 A
- 3252(&)S
- (HANGING)))378 3336 A
- (cleanup(rmp);)546 3756 A
- 4140 V
- (16981)210 648 A
- 1362(})S
- 4230 V
- (16982)210 648 A
- 1110(})S
- 4320 V
- (16983)210 648 A
- 4410 V
- (16984)210 648 A
- 1110(/*)S
- (Send)168 1236 A
- 1446(a)S
- (hangup)252 1530 A
- 1824(to)S
- (the)126 1950 A
- (process')336 2118 A
- (process)294 2496 A
- (group)210 2832 A
- 3084(if)S
- 3210(it)S
- (was)126 3336 A
- 3504(a)S
- (session)294 3588 A
- (leader.)294 3924 A
- 4260(*/)S
- 4500 V
- (16985)210 648 A
- 1110(if)S
- ((procgrp)336 1236 A
- 1614(!=)S
- 1740(0))S
- (check_sig(-procgrp,)798 1866 A
- (SIGHUP);)336 2706 A
- 4590 V
- (16986)210 648 A
- 1026(})S
- 4860 V
- (16989)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4950 V
- (16990)210 648 A
- 1068(*)S
- (do_waitpid)420 2370 A
- 4260(*)S
- 5040 V
- (16991)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5130 V
- (16992)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_waitpid())504 1488 A
- 5220 V
- (16993)210 648 A
- 1026({)S
- 5310 V
- (16994)210 648 A
- 1026(/*)S
- 1152(A)S
- (process)294 1236 A
- (wants)210 1572 A
- 1824(to)S
- (wait)168 1950 A
- (for)126 2160 A
- 2328(a)S
- (child)210 2412 A
- 2664(to)S
- (terminate.)420 2790 A
- 3252(If)S
- (one)126 3378 A
- 3546(is)S
- (already)294 3672 A
- (waiting,)336 4008 A
- 5400 V
- (16995)210 648 A
- 1068(*)S
- 1152(go)S
- (clean)210 1278 A
- 1530(it)S
- 1656(up)S
- (and)126 1782 A
- (let)126 1950 A
- (this)168 2118 A
- (WAIT)168 2328 A
- (call)168 2538 A
- (terminate.)420 2748 A
- (Otherwise,)420 3252 A
- (really)252 3714 A
- (wait.)210 4008 A
- 5490 V
- (16996)210 648 A
- 1068(*)S
- (Both)168 1152 A
- (WAIT)168 1362 A
- (and)126 1572 A
- (WAITPID)294 1740 A
- (are)126 2076 A
- (handled)294 2244 A
- 2580(by)S
- (this)168 2706 A
- (code.)210 2916 A
- 5580 V
- (16997)210 648 A
- 1068(*/)S
- 5670 V
- (16998)210 648 A
- 5760 V
- (16999)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*rp;)168 2034 A
- 5850 V
- (17000)210 648 A
- (int)126 1110 A
- (pidarg,)294 1278 A
- (options,)336 1614 A
- (children,)378 1992 A
- (res2;)210 2412 A
- 5940 V
- (17001)210 648 A
- 6030 V
- (17002)210 648 A
- 1110(/*)S
- 1236(A)S
- (process)294 1320 A
- (calling)294 1656 A
- (WAIT)168 1992 A
- (never)210 2202 A
- (gets)168 2454 A
- 2664(a)S
- (reply)210 2748 A
- 3000(in)S
- (the)126 3126 A
- (usual)210 3294 A
- (way)126 3546 A
- (via)126 3714 A
- (the)126 3882 A
- 6120 V
- (17003)210 648 A
- 1152(*)S
- (reply())294 1236 A
- 1572(in)S
- (the)126 1698 A
- (main)168 1866 A
- (loop)168 2076 A
- ((unless)294 2286 A
- (WNOHANG)294 2622 A
- 2958(is)S
- (set)126 3084 A
- 3252(or)S
- 3378(no)S
- (qualifying)420 3504 A
- (child)210 3966 A
- 6210 V
- (17004)210 648 A
- 1152(*)S
- (exists).)336 1236 A
- 1656(If)S
- 1782(a)S
- (child)210 1866 A
- (has)126 2118 A
- (already)294 2286 A
- (exited,)294 2622 A
- (the)126 2958 A
- (routine)294 3126 A
- (cleanup())378 3462 A
- (sends)210 3882 A
- 8418 V
- EP
- %%Page: 235 235
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2025(File:)S
- 2258(src/mm/forkexit.c)S
- 12 B
- (235)180 4248 A
- 900 V
- 7 LST
- (17005)210 648 A
- 1152(*)S
- (the)126 1236 A
- (reply)210 1404 A
- 1656(to)S
- (awaken)252 1782 A
- (the)126 2076 A
- (caller.)294 2244 A
- 990 V
- (17006)210 648 A
- 1152(*/)S
- 1080 V
- (17007)210 648 A
- 1170 V
- (17008)210 648 A
- 1110(/*)S
- (Set)126 1236 A
- (internal)336 1404 A
- (variables,)420 1782 A
- (depending)378 2244 A
- 2664(on)S
- (whether)294 2790 A
- (this)168 3126 A
- 3336(is)S
- (WAIT)168 3462 A
- 3672(or)S
- (WAITPID.)336 3798 A
- 4176(*/)S
- 1260 V
- (17009)210 648 A
- (pidarg)252 1110 A
- 1446(=)S
- ((mm_call)336 1530 A
- 1908(==)S
- (WAIT)168 2034 A
- 2244(?)S
- 2328(-1)S
- 2454(:)S
- (pid);)210 2538 A
- 3042(/*)S
- (first)210 3168 A
- (param)210 3420 A
- 3672(of)S
- (waitpid)294 3798 A
- 4134(*/)S
- 1350 V
- (17010)210 648 A
- (options)294 1110 A
- 1446(=)S
- ((mm_call)336 1530 A
- 1908(==)S
- (WAIT)168 2034 A
- 2244(?)S
- 2370(0)S
- 2454(:)S
- (sig_nr);)336 2538 A
- 3042(/*)S
- (third)210 3168 A
- (param)210 3420 A
- 3672(of)S
- (waitpid)294 3798 A
- 4134(*/)S
- 1440 V
- (17011)210 648 A
- 1110(if)S
- ((pidarg)294 1236 A
- 1572(==)S
- 1698(0))S
- (pidarg)252 1824 A
- 2118(=)S
- (-mp->mp_procgrp;)672 2202 A
- 3042(/*)S
- (pidarg)252 3168 A
- 3462(<)S
- 3546(0)S
- (==>)126 3630 A
- (proc)168 3798 A
- (grp)126 4008 A
- 4176(*/)S
- 1530 V
- (17012)210 648 A
- 1620 V
- (17013)210 648 A
- 1110(/*)S
- 1236(Is)S
- (there)210 1362 A
- 1614(a)S
- (child)210 1698 A
- (waiting)294 1950 A
- 2286(to)S
- 2412(be)S
- (collected?)420 2538 A
- 3000(At)S
- (this)168 3126 A
- (point,)252 3336 A
- (pidarg)252 3630 A
- 3924(!=)S
- 4050(0:)S
- 1710 V
- (17014)210 648 A
- 1152(*)S
- (pidarg)252 1362 A
- 1698(>)S
- 1824(0)S
- (means)210 1908 A
- (pidarg)252 2160 A
- 2454(is)S
- (pid)126 2580 A
- 2748(of)S
- 2874(a)S
- (specific)336 2958 A
- (process)294 3336 A
- 3672(to)S
- (wait)168 3798 A
- (for)126 4008 A
- 1800 V
- (17015)210 648 A
- 1152(*)S
- (pidarg)252 1362 A
- 1656(==)S
- 1782(-1)S
- (means)210 1908 A
- (wait)168 2160 A
- (for)126 2370 A
- (any)126 2538 A
- (child)210 2706 A
- 1890 V
- (17016)210 648 A
- 1152(*)S
- (pidarg)252 1362 A
- 1698(<)S
- 1782(-1)S
- (means)210 1908 A
- (wait)168 2160 A
- (for)126 2370 A
- (any)126 2538 A
- (child)210 2706 A
- (whose)210 2958 A
- (process)294 3210 A
- (group)210 3546 A
- 3798(=)S
- (-pidarg)294 3882 A
- 1980 V
- (17017)210 648 A
- 1152(*/)S
- 2070 V
- (17018)210 648 A
- (children)336 1110 A
- 1488(=)S
- 1572(0;)S
- 2160 V
- (17019)210 648 A
- (for)126 1110 A
- ((rp)126 1278 A
- 1446(=)S
- (&mproc[0];)420 1530 A
- 1992(rp)S
- 2118(<)S
- (&mproc[NR_PROCS];)714 2202 A
- (rp++))210 2958 A
- 3210({)S
- 2250 V
- (17020)210 648 A
- 1362(if)S
- 1488(()S
- ((rp->mp_flags)546 1572 A
- 2160(&)S
- (IN_USE))294 2244 A
- 2580(&&)S
- (rp->mp_parent)546 2706 A
- 3294(==)S
- (who))168 3420 A
- 3630({)S
- 2340 V
- (17021)210 648 A
- 1698(/*)S
- (The)126 1824 A
- (value)210 1992 A
- 2244(of)S
- (pidarg)252 2370 A
- (determines)420 2664 A
- (which)210 3126 A
- (children)336 3378 A
- (qualify.)336 3756 A
- 4134(*/)S
- 2430 V
- (17022)210 648 A
- 1698(if)S
- ((pidarg)294 1824 A
- 2202(>)S
- 2286(0)S
- 2370(&&)S
- (pidarg)252 2496 A
- 2790(!=)S
- (rp->mp_pid))462 2916 A
- (continue;)378 3420 A
- 2520 V
- (17023)210 648 A
- 1698(if)S
- ((pidarg)294 1824 A
- 2160(<)S
- 2244(-1)S
- 2370(&&)S
- (-pidarg)294 2496 A
- 2832(!=)S
- (rp->mp_procgrp))630 2958 A
- (continue;)378 3630 A
- 2610 V
- (17024)210 648 A
- 2700 V
- (17025)210 648 A
- (children++;)462 1698 A
- 2706(/*)S
- (this)168 2832 A
- (child)210 3042 A
- 3294(is)S
- (acceptable)420 3420 A
- 3882(*/)S
- 2790 V
- (17026)210 648 A
- 1698(if)S
- ((rp->mp_flags)546 1824 A
- 2412(&)S
- (HANGING))336 2496 A
- 2874({)S
- 2880 V
- (17027)210 648 A
- 2034(/*)S
- (This)168 2160 A
- (child)210 2370 A
- (meets)210 2622 A
- (the)126 2874 A
- (pid)126 3042 A
- (test)168 3210 A
- (and)126 3420 A
- (has)126 3588 A
- (exited.)294 3756 A
- 4092(*/)S
- 2970 V
- (17028)210 648 A
- (cleanup(rp);)504 2034 A
- 2706(/*)S
- (this)168 2832 A
- (child)210 3042 A
- (has)126 3294 A
- (already)294 3462 A
- (exited)252 3798 A
- 4092(*/)S
- 3060 V
- (17029)210 648 A
- (dont_reply)420 2034 A
- 2496(=)S
- (TRUE;)210 2580 A
- 3150 V
- (17030)210 648 A
- (return(OK);)462 2034 A
- 3240 V
- (17031)210 648 A
- 1698(})S
- 3330 V
- (17032)210 648 A
- 1698(if)S
- (((rp->mp_flags)588 1824 A
- 2454(&)S
- (STOPPED))336 2538 A
- 2916(&&)S
- (rp->mp_sigstatus))714 3042 A
- 3798({)S
- 3420 V
- (17033)210 648 A
- 2034(/*)S
- (This)168 2160 A
- (child)210 2370 A
- (meets)210 2622 A
- (the)126 2874 A
- (pid)126 3042 A
- (test)168 3210 A
- (and)126 3420 A
- 3588(is)S
- (being)210 3714 A
- (traced.*/)378 3966 A
- 3510 V
- (17034)210 648 A
- (res2)168 2034 A
- 2244(=)S
- (0177)168 2370 A
- 2580(|)S
- ((rp->mp_sigstatus)714 2664 A
- 3420(<<)S
- (8);)126 3546 A
- 3600 V
- (17035)210 648 A
- (reply(who,)420 2034 A
- (rp->mp_pid,)462 2496 A
- (res2,)210 3000 A
- (NIL_PTR);)378 3252 A
- 3690 V
- (17036)210 648 A
- (dont_reply)420 2034 A
- 2496(=)S
- (TRUE;)210 2580 A
- 3780 V
- (17037)210 648 A
- (rp->mp_sigstatus)672 2034 A
- 2748(=)S
- 2832(0;)S
- 3870 V
- (17038)210 648 A
- (return(OK);)462 2034 A
- 3960 V
- (17039)210 648 A
- 1698(})S
- 4050 V
- (17040)210 648 A
- 1362(})S
- 4140 V
- (17041)210 648 A
- 1110(})S
- 4230 V
- (17042)210 648 A
- 4320 V
- (17043)210 648 A
- 1110(/*)S
- 1236(No)S
- (qualifying)420 1362 A
- (child)210 1824 A
- (has)126 2076 A
- (exited.)294 2244 A
- (Wait)168 2622 A
- (for)126 2832 A
- (one,)168 3000 A
- (unless)252 3210 A
- (none)168 3504 A
- (exists.)294 3714 A
- 4050(*/)S
- 4410 V
- (17044)210 648 A
- 1110(if)S
- ((children)378 1236 A
- 1656(>)S
- 1740(0))S
- 1866({)S
- 4500 V
- (17045)210 648 A
- 1362(/*)S
- 1488(At)S
- (least)210 1614 A
- 1866(1)S
- (child)210 1950 A
- (meets)210 2202 A
- (the)126 2454 A
- (pid)126 2622 A
- (test)168 2790 A
- (exists,)294 3000 A
- (but)126 3336 A
- (has)126 3504 A
- (not)126 3672 A
- (exited.)294 3840 A
- 4176(*/)S
- 4590 V
- (17046)210 648 A
- 1362(if)S
- ((options)336 1488 A
- 1866(&)S
- (WNOHANG))336 1950 A
- (return(0);)420 2328 A
- 2916(/*)S
- (parent)252 3042 A
- (does)168 3336 A
- (not)126 3546 A
- (want)168 3714 A
- 3924(to)S
- (wait)168 4050 A
- 4260(*/)S
- 4680 V
- (17047)210 648 A
- (mp->mp_flags)504 1362 A
- 1908(|=)S
- (WAITING;)336 2034 A
- 2916(/*)S
- (parent)252 3042 A
- (wants)210 3336 A
- 3588(to)S
- (wait)168 3714 A
- 3924(*/)S
- 4770 V
- (17048)210 648 A
- (mp->mp_wpid)462 1362 A
- 1866(=)S
- ((pid_t))294 1950 A
- (pidarg;)294 2286 A
- 2916(/*)S
- (save)168 3042 A
- (pid)126 3252 A
- (for)126 3420 A
- (later)210 3588 A
- 3840(*/)S
- 4860 V
- (17049)210 648 A
- (dont_reply)420 1362 A
- 1824(=)S
- (TRUE;)210 1908 A
- 2916(/*)S
- 3042(do)S
- (not)126 3168 A
- (reply)210 3336 A
- (now)126 3588 A
- (though)252 3756 A
- 4050(*/)S
- 4950 V
- (17050)210 648 A
- (return(OK);)462 1362 A
- 2916(/*)S
- (yes)126 3042 A
- 3210(-)S
- (wait)168 3294 A
- (for)126 3504 A
- (one)126 3672 A
- 3840(to)S
- (exit)168 3966 A
- 4176(*/)S
- 5040 V
- (17051)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 5130 V
- (17052)210 648 A
- 1362(/*)S
- 1488(No)S
- (child)210 1614 A
- (even)168 1866 A
- (meets)210 2076 A
- (the)126 2328 A
- (pid)126 2496 A
- (test.)210 2664 A
- (Return)252 2958 A
- (error)210 3252 A
- (immediately.)504 3504 A
- 4050(*/)S
- 5220 V
- (17053)210 648 A
- (return(ECHILD);)630 1362 A
- 2916(/*)S
- 3042(no)S
- 3168(-)S
- (parent)252 3252 A
- (has)126 3546 A
- 3714(no)S
- (children)336 3840 A
- 4218(*/)S
- 5310 V
- (17054)210 648 A
- 1110(})S
- 5400 V
- (17055)210 648 A
- 1026(})S
- 5670 V
- (17058)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5760 V
- (17059)210 648 A
- 1068(*)S
- (cleanup)294 2370 A
- 4260(*)S
- 5850 V
- (17060)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5940 V
- (17061)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (cleanup(child))588 1572 A
- 6030 V
- (17062)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (mproc)210 1698 A
- (*child;)294 1950 A
- 2370(/*)S
- (tells)210 2496 A
- (which)210 2748 A
- (process)294 3000 A
- 3336(is)S
- (exiting)294 3462 A
- 3798(*/)S
- 6120 V
- (17063)210 648 A
- 1026({)S
- 6210 V
- (17064)210 648 A
- 1026(/*)S
- (Finish)252 1152 A
- (off)126 1446 A
- (the)126 1614 A
- (exit)168 1782 A
- 1992(of)S
- 2118(a)S
- (process.)336 2202 A
- (The)126 2622 A
- (process)294 2790 A
- (has)126 3126 A
- (exited)252 3294 A
- 3588(or)S
- (been)168 3714 A
- (killed)252 3924 A
- 8418 V
- EP
- %%Page: 236 236
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (236)180 648 A
- 11 R
- 2025(File:)S
- 2258(src/mm/forkexit.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (17065)210 648 A
- 1068(*)S
- 1152(by)S
- 1278(a)S
- (signal,)294 1362 A
- (and)126 1698 A
- (its)126 1866 A
- (parent)252 2034 A
- 2328(is)S
- (waiting.)336 2454 A
- 990 V
- (17066)210 648 A
- 1068(*/)S
- 1080 V
- (17067)210 648 A
- 1170 V
- (17068)210 648 A
- (int)126 1110 A
- (exitstatus;)462 1278 A
- 1260 V
- (17069)210 648 A
- 1350 V
- (17070)210 648 A
- 1110(/*)S
- (Wake)168 1236 A
- 1446(up)S
- (the)126 1572 A
- (parent.)294 1740 A
- 2076(*/)S
- 1440 V
- (17071)210 648 A
- (exitstatus)420 1110 A
- 1572(=)S
- ((child->mp_exitstatus)882 1656 A
- 2580(<<)S
- 2706(8))S
- 2832(|)S
- ((child->mp_sigstatus)840 2916 A
- 3798(&)S
- (0377);)252 3882 A
- 1530 V
- (17072)210 648 A
- (reply(child->mp_parent,)966 1110 A
- (child->mp_pid,)588 2118 A
- (exitstatus,)462 2748 A
- (NIL_PTR);)378 3252 A
- 1620 V
- (17073)210 648 A
- (mproc[child->mp_parent].mp_flags)1344 1110 A
- 2496(&=)S
- (304WAITING;)378 2622 A
- 3042(/*)S
- (parent)252 3168 A
- 3462(no)S
- (longer)252 3588 A
- (waiting)294 3882 A
- 4218(*/)S
- 1710 V
- (17074)210 648 A
- 1800 V
- (17075)210 648 A
- 1110(/*)S
- (Release)294 1236 A
- (the)126 1572 A
- (process)294 1740 A
- (table)210 2076 A
- (entry.)252 2328 A
- 2622(*/)S
- 1890 V
- (17076)210 648 A
- (child->mp_flags)630 1110 A
- 1782(=)S
- 1866(0;)S
- 1980 V
- (17077)210 648 A
- (procs_in_use--;)630 1110 A
- 2070 V
- (17078)210 648 A
- 1026(})S
- 2340 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 2430 V
- (src/mm/exec.c)546 2034 A
- 2520 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 2700 V
- (17100)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (handles)294 1572 A
- (the)126 1908 A
- (EXEC)168 2076 A
- (system)252 2286 A
- (call.)210 2580 A
- 2874(It)S
- (performs)336 3000 A
- (the)126 3378 A
- (work)168 3546 A
- 3756(as)S
- (follows:)336 3882 A
- 2790 V
- (17101)210 648 A
- 1068(*)S
- 1278(-)S
- (see)126 1362 A
- 1530(if)S
- (the)126 1656 A
- (permissions)462 1824 A
- (allow)210 2328 A
- (the)126 2580 A
- (file)168 2748 A
- 2958(to)S
- 3084(be)S
- (executed)336 3210 A
- 2880 V
- (17102)210 648 A
- 1068(*)S
- 1278(-)S
- (read)168 1362 A
- (the)126 1572 A
- (header)252 1740 A
- (and)126 2034 A
- (extract)294 2202 A
- (the)126 2538 A
- (sizes)210 2706 A
- 2970 V
- (17103)210 648 A
- 1068(*)S
- 1278(-)S
- (fetch)210 1362 A
- (the)126 1614 A
- (initial)294 1782 A
- (args)168 2118 A
- (and)126 2328 A
- (environment)462 2496 A
- (from)168 3000 A
- (the)126 3210 A
- (user)168 3378 A
- (space)210 3588 A
- 3060 V
- (17104)210 648 A
- 1068(*)S
- 1278(-)S
- (allocate)336 1362 A
- (the)126 1740 A
- (memory)252 1908 A
- (for)126 2202 A
- (the)126 2370 A
- (new)126 2538 A
- (process)294 2706 A
- 3150 V
- (17105)210 648 A
- 1068(*)S
- 1278(-)S
- (copy)168 1362 A
- (the)126 1572 A
- (initial)294 1740 A
- (stack)210 2076 A
- (from)168 2328 A
- 2538(MM)S
- 2664(to)S
- (the)126 2790 A
- (process)294 2958 A
- 3240 V
- (17106)210 648 A
- 1068(*)S
- 1278(-)S
- (read)168 1362 A
- 1572(in)S
- (the)126 1698 A
- (text)168 1866 A
- (and)126 2076 A
- (data)168 2244 A
- (segments)336 2454 A
- (and)126 2832 A
- (copy)168 3000 A
- 3210(to)S
- (the)126 3336 A
- (process)294 3504 A
- 3330 V
- (17107)210 648 A
- 1068(*)S
- 1278(-)S
- (take)168 1362 A
- (care)168 1572 A
- 1782(of)S
- (setuid)252 1908 A
- (and)126 2202 A
- (setgid)252 2370 A
- (bits)168 2664 A
- 3420 V
- (17108)210 648 A
- 1068(*)S
- 1278(-)S
- (fix)126 1362 A
- 1530(up)S
- ('mproc')294 1656 A
- (table)210 1992 A
- 3510 V
- (17109)210 648 A
- 1068(*)S
- 1278(-)S
- (tell)168 1362 A
- (kernel)252 1572 A
- (about)210 1866 A
- (EXEC)168 2118 A
- 3600 V
- (17110)210 648 A
- 1068(*)S
- 1278(-)S
- (save)168 1362 A
- (offset)252 1572 A
- 1866(to)S
- (initial)294 1992 A
- (argc)168 2328 A
- ((for)168 2538 A
- (ps))126 2748 A
- 3690 V
- (17111)210 648 A
- 1068(*)S
- 3780 V
- (17112)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entry)210 1320 A
- (points)252 1572 A
- (into)168 1866 A
- (this)168 2076 A
- (file)168 2286 A
- (are:)168 2496 A
- 3870 V
- (17113)210 648 A
- 1068(*)S
- (do_exec:)336 1236 A
- (perform)294 1740 A
- (the)126 2076 A
- (EXEC)168 2244 A
- (system)252 2454 A
- (call)168 2748 A
- 3960 V
- (17114)210 648 A
- 1068(*)S
- (find_share:)462 1236 A
- (find)168 1740 A
- 1950(a)S
- (process)294 2034 A
- (whose)210 2370 A
- (text)168 2622 A
- (segment)294 2832 A
- (can)126 3168 A
- 3336(be)S
- (shared)252 3462 A
- 4050 V
- (17115)210 648 A
- 1068(*/)S
- 4140 V
- (17116)210 648 A
- 4230 V
- (17117)210 648 A
- (#include)336 1026 A
- ("mm.h")252 1404 A
- 4320 V
- (17118)210 648 A
- (#include)336 1026 A
- (<sys/stat.h>)504 1404 A
- 4410 V
- (17119)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 4500 V
- (17120)210 648 A
- (#include)336 1026 A
- (<a.out.h>)378 1404 A
- 4590 V
- (17121)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 4680 V
- (17122)210 648 A
- (#include)336 1026 A
- (<string.h>)420 1404 A
- 4770 V
- (17123)210 648 A
- (#include)336 1026 A
- ("mproc.h")378 1404 A
- 4860 V
- (17124)210 648 A
- (#include)336 1026 A
- ("param.h")378 1404 A
- 4950 V
- (17125)210 648 A
- 5040 V
- (17126)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (load_seg,)378 2076 A
- ((int)168 2496 A
- (fd,)126 2706 A
- (int)126 2874 A
- (seg,)168 3042 A
- (vir_bytes)378 3252 A
- (seg_bytes))420 3672 A
- 4134();)S
- 5130 V
- (17127)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (new_mem,)336 2034 A
- ((struct)294 2412 A
- (mproc)210 2748 A
- (*sh_mp,)294 3000 A
- (vir_bytes)378 3336 A
- (text_bytes,)462 3756 A
- 5220 V
- (17128)210 648 A
- (vir_bytes)378 1698 A
- (data_bytes,)462 2118 A
- (vir_bytes)378 2622 A
- (bss_bytes,)420 3042 A
- 5310 V
- (17129)210 648 A
- (vir_bytes)378 1698 A
- (stk_bytes,)420 2118 A
- (phys_bytes)420 2580 A
- (tot_bytes))420 3042 A
- 4050();)S
- 5400 V
- (17130)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (patch_ptr,)420 2076 A
- ((char)210 2538 A
- (stack)210 2790 A
- ([ARG_MAX)336 3042 A
- 3420(],)S
- (vir_bytes)378 3546 A
- (base))210 3966 A
- 4218();)S
- 5490 V
- (17131)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (read_header,)504 2034 A
- ((int)168 2580 A
- (fd,)126 2790 A
- (int)126 2958 A
- (*ft,)168 3126 A
- (vir_bytes)378 3336 A
- (*text_bytes,)504 3756 A
- 5580 V
- (17132)210 648 A
- (vir_bytes)378 1698 A
- (*data_bytes,)504 2118 A
- (vir_bytes)378 2664 A
- (*bss_bytes,)462 3084 A
- 5670 V
- (17133)210 648 A
- (phys_bytes)420 1698 A
- (*tot_bytes,)462 2160 A
- (long)168 2664 A
- (*sym_bytes,)462 2874 A
- (vir_clicks)420 3378 A
- (sc,)126 3840 A
- 5760 V
- (17134)210 648 A
- (vir_bytes)378 1698 A
- (*pc))168 2118 A
- 4050();)S
- 5850 V
- (17135)210 648 A
- 5940 V
- (17136)210 648 A
- 6030 V
- (17137)210 648 A
- (/*===========================================================================*)3276 1026 A
- 6120 V
- (17138)210 648 A
- 1068(*)S
- (do_exec)294 2370 A
- 4260(*)S
- 6210 V
- (17139)210 648 A
- (*===========================================================================*/)3276 1068 A
- 8418 V
- EP
- %%Page: 237 237
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 12 B
- (237)180 4248 A
- 900 V
- 7 LST
- (17140)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (do_exec())378 1488 A
- 990 V
- (17141)210 648 A
- 1026({)S
- 1080 V
- (17142)210 648 A
- 1026(/*)S
- (Perform)294 1152 A
- (the)126 1488 A
- (execve(name,)504 1656 A
- (argv,)210 2202 A
- (envp))210 2454 A
- (call.)210 2706 A
- (The)126 3000 A
- (user)168 3168 A
- (library)294 3378 A
- (builds)252 3714 A
- 4008(a)S
- 1170 V
- (17143)210 648 A
- 1068(*)S
- (complete)336 1152 A
- (stack)210 1530 A
- (image,)252 1782 A
- (including)378 2076 A
- (pointers,)378 2496 A
- (args,)210 2916 A
- (environ,)336 3168 A
- (etc.)168 3546 A
- (The)126 3798 A
- (stack)210 3966 A
- 1260 V
- (17144)210 648 A
- 1068(*)S
- 1152(is)S
- (copied)252 1278 A
- 1572(to)S
- 1698(a)S
- (buffer)252 1782 A
- (inside)252 2076 A
- (MM,)126 2370 A
- (and)126 2538 A
- (then)168 2706 A
- 2916(to)S
- (the)126 3042 A
- (new)126 3210 A
- (core)168 3378 A
- (image.)252 3588 A
- 1350 V
- (17145)210 648 A
- 1068(*/)S
- 1440 V
- (17146)210 648 A
- 1530 V
- (17147)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*rmp;)210 2034 A
- 1620 V
- (17148)210 648 A
- (struct)252 1110 A
- (mproc)210 1404 A
- (*sh_mp;)294 1656 A
- 1710 V
- (17149)210 648 A
- (int)126 1110 A
- 1278(m,)S
- 1404(r,)S
- (fd,)126 1530 A
- (ft,)126 1698 A
- (sn;)126 1866 A
- 1800 V
- (17150)210 648 A
- (static)252 1110 A
- (char)168 1404 A
- (mbuf[ARG_MAX];)588 1614 A
- 2370(/*)S
- (buffer)252 2496 A
- (for)126 2790 A
- (stack)210 2958 A
- (and)126 3210 A
- (zeroes)252 3378 A
- 3672(*/)S
- 1890 V
- (17151)210 648 A
- (static)252 1110 A
- (char)168 1404 A
- (name_buf[PATH_MAX];)798 1614 A
- 2454(/*)S
- (the)126 2580 A
- (name)168 2748 A
- 2958(of)S
- (the)126 3084 A
- (file)168 3252 A
- 3462(to)S
- (exec)168 3588 A
- 3798(*/)S
- 1980 V
- (17152)210 648 A
- (char)168 1110 A
- (*new_sp,)336 1320 A
- (*basename;)420 1698 A
- 2070 V
- (17153)210 648 A
- (vir_bytes)378 1110 A
- (src,)168 1530 A
- (dst,)168 1740 A
- (text_bytes,)462 1950 A
- (data_bytes,)462 2454 A
- (bss_bytes,)420 2958 A
- (stk_bytes,)420 3420 A
- (vsp;)168 3882 A
- 2160 V
- (17154)210 648 A
- (phys_bytes)420 1110 A
- (tot_bytes;)420 1572 A
- 2370(/*)S
- (total)210 2496 A
- (space)210 2748 A
- (for)126 3000 A
- (program,)336 3168 A
- (including)378 3546 A
- (gap)126 3966 A
- 4134(*/)S
- 2250 V
- (17155)210 648 A
- (long)168 1110 A
- (sym_bytes;)420 1320 A
- 2340 V
- (17156)210 648 A
- (vir_clicks)420 1110 A
- (sc;)126 1572 A
- 2430 V
- (17157)210 648 A
- (struct)252 1110 A
- (stat)168 1404 A
- (s_buf;)252 1614 A
- 2520 V
- (17158)210 648 A
- (vir_bytes)378 1110 A
- (pc;)126 1530 A
- 2610 V
- (17159)210 648 A
- 2700 V
- (17160)210 648 A
- 1110(/*)S
- 1236(Do)S
- (some)168 1362 A
- (validity)336 1572 A
- (checks.)294 1950 A
- 2286(*/)S
- 2790 V
- (17161)210 648 A
- (rmp)126 1110 A
- 1278(=)S
- (mp;)126 1362 A
- 2880 V
- (17162)210 648 A
- (stk_bytes)378 1110 A
- 1530(=)S
- ((vir_bytes))462 1614 A
- (stack_bytes;)504 2118 A
- 2970 V
- (17163)210 648 A
- 1110(if)S
- ((stk_bytes)420 1236 A
- 1698(>)S
- (ARG_MAX))336 1782 A
- (return(ENOMEM);)630 2160 A
- 3042(/*)S
- (stack)210 3168 A
- (too)126 3420 A
- (big)126 3588 A
- 3756(*/)S
- 3060 V
- (17164)210 648 A
- 1110(if)S
- ((exec_len)378 1236 A
- 1656(<=)S
- 1782(0)S
- 1866(||)S
- (exec_len)336 1992 A
- 2370(>)S
- (PATH_MAX))378 2454 A
- (return(EINVAL);)630 2874 A
- 3150 V
- (17165)210 648 A
- 3240 V
- (17166)210 648 A
- 1110(/*)S
- (Get)126 1236 A
- (the)126 1404 A
- (exec)168 1572 A
- (file)168 1782 A
- (name)168 1992 A
- (and)126 2202 A
- (see)126 2370 A
- 2538(if)S
- (the)126 2664 A
- (file)168 2832 A
- 3042(is)S
- (executable.)462 3168 A
- 3672(*/)S
- 3330 V
- (17167)210 648 A
- (src)126 1110 A
- 1278(=)S
- ((vir_bytes))462 1362 A
- (exec_name;)420 1866 A
- 3420 V
- (17168)210 648 A
- (dst)126 1110 A
- 1278(=)S
- ((vir_bytes))462 1362 A
- (name_buf;)378 1866 A
- 3510 V
- (17169)210 648 A
- 1110(r)S
- 1194(=)S
- (sys_copy(who,)546 1278 A
- 1866(D,)S
- ((phys_bytes))504 1992 A
- (src,)168 2538 A
- 3600 V
- (17170)210 648 A
- (MM_PROC_NR,)462 1698 A
- 2202(D,)S
- ((phys_bytes))504 2328 A
- (dst,)168 2874 A
- ((phys_bytes))504 3084 A
- (exec_len);)420 3630 A
- 3690 V
- (17171)210 648 A
- 1110(if)S
- 1236((r)S
- 1362(!=)S
- (OK))126 1488 A
- (return(r);)420 1656 A
- 2370(/*)S
- (file)168 2496 A
- (name)168 2706 A
- (not)126 2916 A
- 3084(in)S
- (user)168 3210 A
- (data)168 3420 A
- (segment)294 3630 A
- 3966(*/)S
- 3780 V
- (17172)210 648 A
- (tell_fs(CHDIR,)588 1110 A
- (who,)168 1740 A
- (FALSE,)252 1950 A
- (0);)126 2244 A
- 2706(/*)S
- (switch)252 2832 A
- 3126(to)S
- (the)126 3252 A
- (user's)252 3420 A
- 3714(FS)S
- (environ.)336 3840 A
- 4218(*/)S
- 3870 V
- (17173)210 648 A
- 1110(fd)S
- 1236(=)S
- (allowed(name_buf,)714 1320 A
- (&s_buf,)294 2076 A
- (X_BIT);)294 2412 A
- 3042(/*)S
- 3168(is)S
- (file)168 3294 A
- (executable?)462 3504 A
- 4008(*/)S
- 3960 V
- (17174)210 648 A
- 1110(if)S
- ((fd)126 1236 A
- 1404(<)S
- 1488(0))S
- (return(fd);)462 1614 A
- 2370(/*)S
- (file)168 2496 A
- (was)126 2706 A
- (not)126 2874 A
- (executable)420 3042 A
- 3504(*/)S
- 4050 V
- (17175)210 648 A
- 4140 V
- (17176)210 648 A
- 1110(/*)S
- (Read)168 1236 A
- (the)126 1446 A
- (file)168 1614 A
- (header)252 1824 A
- (and)126 2118 A
- (extract)294 2286 A
- (the)126 2622 A
- (segment)294 2790 A
- (sizes.)252 3126 A
- 3420(*/)S
- 4230 V
- (17177)210 648 A
- 1110(sc)S
- 1236(=)S
- ((stk_bytes)420 1320 A
- 1782(+)S
- (CLICK_SIZE)420 1866 A
- 2328(-)S
- 2412(1))S
- 2538(>>)S
- (CLICK_SHIFT;)504 2664 A
- 4320 V
- (17178)210 648 A
- 1110(m)S
- 1194(=)S
- (read_header(fd,)630 1278 A
- (&ft,)168 1950 A
- (&text_bytes,)504 2160 A
- (&data_bytes,)504 2706 A
- (&bss_bytes,)462 3252 A
- 4410 V
- (17179)210 648 A
- (&tot_bytes,)462 2706 A
- (&sym_bytes,)462 3210 A
- (sc,)126 3714 A
- (&pc);)210 3882 A
- 4500 V
- (17180)210 648 A
- 1110(if)S
- 1236((m)S
- 1362(<)S
- 1446(0))S
- 1572({)S
- 4590 V
- (17181)210 648 A
- (close(fd);)420 1362 A
- 2370(/*)S
- (something)378 2496 A
- (wrong)210 2916 A
- (with)168 3168 A
- (header)252 3378 A
- 3672(*/)S
- 4680 V
- (17182)210 648 A
- (return(ENOEXEC);)672 1362 A
- 4770 V
- (17183)210 648 A
- 1110(})S
- 4860 V
- (17184)210 648 A
- 4950 V
- (17185)210 648 A
- 1110(/*)S
- (Fetch)210 1236 A
- (the)126 1488 A
- (stack)210 1656 A
- (from)168 1908 A
- (the)126 2118 A
- (user)168 2286 A
- (before)252 2496 A
- (destroying)420 2790 A
- (the)126 3252 A
- (old)126 3420 A
- (core)168 3588 A
- (image.)252 3798 A
- 4092(*/)S
- 5040 V
- (17186)210 648 A
- (src)126 1110 A
- 1278(=)S
- ((vir_bytes))462 1362 A
- (stack_ptr;)420 1866 A
- 5130 V
- (17187)210 648 A
- (dst)126 1110 A
- 1278(=)S
- ((vir_bytes))462 1362 A
- (mbuf;)210 1866 A
- 5220 V
- (17188)210 648 A
- 1110(r)S
- 1194(=)S
- (sys_copy(who,)546 1278 A
- 1866(D,)S
- ((phys_bytes))504 1992 A
- (src,)168 2538 A
- 5310 V
- (17189)210 648 A
- (MM_PROC_NR,)462 2034 A
- 2538(D,)S
- ((phys_bytes))504 2664 A
- (dst,)168 3210 A
- ((phys_bytes)stk_bytes);)966 3420 A
- 5400 V
- (17190)210 648 A
- 1110(if)S
- 1236((r)S
- 1362(!=)S
- (OK))126 1488 A
- 1656({)S
- 5490 V
- (17191)210 648 A
- (close(fd);)420 1362 A
- 2370(/*)S
- (can't)210 2496 A
- (fetch)210 2748 A
- (stack)210 3000 A
- ((e.g.)210 3252 A
- (bad)126 3504 A
- (virtual)294 3672 A
- (addr))210 4008 A
- 4260(*/)S
- 5580 V
- (17192)210 648 A
- (return(EACCES);)630 1362 A
- 5670 V
- (17193)210 648 A
- 1110(})S
- 5760 V
- (17194)210 648 A
- 5850 V
- (17195)210 648 A
- 1110(/*)S
- (Can)126 1236 A
- (the)126 1404 A
- (process')336 1572 A
- (text)168 1950 A
- 2160(be)S
- (shared)252 2286 A
- (with)168 2580 A
- (that)168 2790 A
- 3000(of)S
- (one)126 3126 A
- (already)294 3294 A
- (running?)336 3630 A
- 4008(*/)S
- 5940 V
- (17196)210 648 A
- (sh_mp)210 1110 A
- 1362(=)S
- (find_share(rmp,)630 1446 A
- (s_buf.st_ino,)546 2118 A
- (s_buf.st_dev,)546 2706 A
- (s_buf.st_ctime);)672 3294 A
- 6030 V
- (17197)210 648 A
- 6120 V
- (17198)210 648 A
- 1110(/*)S
- (Allocate)336 1236 A
- (new)126 1614 A
- (memory)252 1782 A
- (and)126 2076 A
- (release)294 2244 A
- (old)126 2580 A
- (memory.)294 2748 A
- (Fix)126 3126 A
- (map)126 3294 A
- (and)126 3462 A
- (tell)168 3630 A
- (kernel.)294 3840 A
- 4176(*/)S
- 6210 V
- (17199)210 648 A
- 1110(r)S
- 1194(=)S
- (new_mem(sh_mp,)588 1278 A
- (text_bytes,)462 1908 A
- (data_bytes,)462 2412 A
- (bss_bytes,)420 2916 A
- (stk_bytes,)420 3378 A
- (tot_bytes);)462 3840 A
- 8418 V
- EP
- %%Page: 238 238
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (238)180 648 A
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (17200)210 648 A
- 1110(if)S
- 1236((r)S
- 1362(!=)S
- (OK))126 1488 A
- 1656({)S
- 990 V
- (17201)210 648 A
- (close(fd);)420 1362 A
- 2370(/*)S
- (insufficient)504 2496 A
- (core)168 3042 A
- 3252(or)S
- (program)294 3378 A
- (too)126 3714 A
- (big)126 3882 A
- 4050(*/)S
- 1080 V
- (17202)210 648 A
- (return(r);)420 1362 A
- 1170 V
- (17203)210 648 A
- 1110(})S
- 1260 V
- (17204)210 648 A
- 1350 V
- (17205)210 648 A
- 1110(/*)S
- (Save)168 1236 A
- (file)168 1446 A
- (identification)588 1656 A
- 2286(to)S
- (allow)210 2412 A
- 2664(it)S
- 2790(to)S
- 2916(be)S
- (shared.)294 3042 A
- 3378(*/)S
- 1440 V
- (17206)210 648 A
- (rmp->mp_ino)462 1110 A
- 1614(=)S
- (s_buf.st_ino;)546 1698 A
- 1530 V
- (17207)210 648 A
- (rmp->mp_dev)462 1110 A
- 1614(=)S
- (s_buf.st_dev;)546 1698 A
- 1620 V
- (17208)210 648 A
- (rmp->mp_ctime)546 1110 A
- 1698(=)S
- (s_buf.st_ctime;)630 1782 A
- 1710 V
- (17209)210 648 A
- 1800 V
- (17210)210 648 A
- 1110(/*)S
- (Patch)210 1236 A
- 1488(up)S
- (stack)210 1614 A
- (and)126 1866 A
- (copy)168 2034 A
- 2244(it)S
- (from)168 2370 A
- 2580(MM)S
- 2706(to)S
- (new)126 2832 A
- (core)168 3000 A
- (image.)252 3210 A
- 3504(*/)S
- 1890 V
- (17211)210 648 A
- (vsp)126 1110 A
- 1278(=)S
- ((vir_bytes))462 1362 A
- (rmp->mp_seg[S].mem_vir)924 1866 A
- 2832(<<)S
- (CLICK_SHIFT;)504 2958 A
- 1980 V
- (17212)210 648 A
- (vsp)126 1110 A
- 1278(+=)S
- ((vir_bytes))462 1404 A
- (rmp->mp_seg[S].mem_len)924 1908 A
- 2874(<<)S
- (CLICK_SHIFT;)504 3000 A
- 2070 V
- (17213)210 648 A
- (vsp)126 1110 A
- 1278(-=)S
- (stk_bytes;)420 1404 A
- 2160 V
- (17214)210 648 A
- (patch_ptr(mbuf,)630 1110 A
- (vsp);)210 1782 A
- 2250 V
- (17215)210 648 A
- (src)126 1110 A
- 1278(=)S
- ((vir_bytes))462 1362 A
- (mbuf;)210 1866 A
- 2340 V
- (17216)210 648 A
- 1110(r)S
- 1194(=)S
- (sys_copy(MM_PROC_NR,)840 1278 A
- 2160(D,)S
- ((phys_bytes))504 2286 A
- (src,)168 2832 A
- 2430 V
- (17217)210 648 A
- (who,)168 2034 A
- 2244(D,)S
- ((phys_bytes))504 2370 A
- (vsp,)168 2916 A
- ((phys_bytes)stk_bytes);)966 3126 A
- 2520 V
- (17218)210 648 A
- 1110(if)S
- 1236((r)S
- 1362(!=)S
- (OK))126 1488 A
- (panic("do_exec)588 1656 A
- (stack)210 2286 A
- (copy)168 2538 A
- (err",)210 2748 A
- (NO_NUM);)336 3000 A
- 2610 V
- (17219)210 648 A
- 2700 V
- (17220)210 648 A
- 1110(/*)S
- (Read)168 1236 A
- 1446(in)S
- (text)168 1572 A
- (and)126 1782 A
- (data)168 1950 A
- (segments.)378 2160 A
- 2580(*/)S
- 2790 V
- (17221)210 648 A
- 1110(if)S
- ((sh_mp)252 1236 A
- 1530(!=)S
- (NULL))210 1656 A
- 1908({)S
- 2880 V
- (17222)210 648 A
- (lseek(fd,)378 1362 A
- ((off_t))294 1782 A
- (text_bytes,)462 2118 A
- (SEEK_CUR);)420 2622 A
- 3126(/*)S
- (shared:)294 3252 A
- (skip)168 3588 A
- (text)168 3798 A
- 4008(*/)S
- 2970 V
- (17223)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 3060 V
- (17224)210 648 A
- (load_seg(fd,)504 1362 A
- 1908(T,)S
- (text_bytes);)504 2034 A
- 3150 V
- (17225)210 648 A
- 1110(})S
- 3240 V
- (17226)210 648 A
- (load_seg(fd,)504 1110 A
- 1656(D,)S
- (data_bytes);)504 1782 A
- 3330 V
- (17227)210 648 A
- 3420 V
- (17228)210 648 A
- 3510 V
- (17229)210 648 A
- (close(fd);)420 1110 A
- 2370(/*)S
- (don't)210 2496 A
- (need)168 2748 A
- (exec)168 2958 A
- (file)168 3168 A
- (any)126 3378 A
- (more)168 3546 A
- 3756(*/)S
- 3600 V
- (17230)210 648 A
- 3690 V
- (17231)210 648 A
- 1110(/*)S
- (Take)168 1236 A
- (care)168 1446 A
- 1656(of)S
- (setuid/setgid)546 1782 A
- (bits.)210 2370 A
- 2622(*/)S
- 3780 V
- (17232)210 648 A
- 1110(if)S
- (((rmp->mp_flags)630 1236 A
- 1908(&)S
- (TRACED))294 1992 A
- 2328(==)S
- 2454(0))S
- 2580({)S
- 2664(/*)S
- (suppress)336 2790 A
- 3168(if)S
- (tracing)294 3294 A
- 3630(*/)S
- 3870 V
- (17233)210 648 A
- 1362(if)S
- ((s_buf.st_mode)588 1488 A
- 2118(&)S
- (I_SET_UID_BIT))588 2202 A
- 2832({)S
- 3960 V
- (17234)210 648 A
- (rmp->mp_effuid)588 1698 A
- 2328(=)S
- (s_buf.st_uid;)546 2412 A
- 4050 V
- (17235)210 648 A
- (tell_fs(SETUID,who,)798 1698 A
- ((int)rmp->mp_realuid,)882 2538 A
- ((int)rmp->mp_effuid);)882 3462 A
- 4140 V
- (17236)210 648 A
- 1362(})S
- 4230 V
- (17237)210 648 A
- 1362(if)S
- ((s_buf.st_mode)588 1488 A
- 2118(&)S
- (I_SET_GID_BIT))588 2202 A
- 2832({)S
- 4320 V
- (17238)210 648 A
- (rmp->mp_effgid)588 1698 A
- 2328(=)S
- (s_buf.st_gid;)546 2412 A
- 4410 V
- (17239)210 648 A
- (tell_fs(SETGID,who,)798 1698 A
- ((int)rmp->mp_realgid,)882 2538 A
- ((int)rmp->mp_effgid);)882 3462 A
- 4500 V
- (17240)210 648 A
- 1362(})S
- 4590 V
- (17241)210 648 A
- 1110(})S
- 4680 V
- (17242)210 648 A
- 4770 V
- (17243)210 648 A
- 1110(/*)S
- (Save)168 1236 A
- (offset)252 1446 A
- 1740(to)S
- (initial)294 1866 A
- (argc)168 2202 A
- ((for)168 2412 A
- (ps))126 2622 A
- 2790(*/)S
- 4860 V
- (17244)210 648 A
- (rmp->mp_procargs)672 1110 A
- 1824(=)S
- (vsp;)168 1908 A
- 4950 V
- (17245)210 648 A
- 5040 V
- (17246)210 648 A
- 1110(/*)S
- (Fix)126 1236 A
- ('mproc')294 1404 A
- (fields,)294 1740 A
- (tell)168 2076 A
- (kernel)252 2286 A
- (that)168 2580 A
- (exec)168 2790 A
- 3000(is)S
- (done,)210 3126 A
- (reset)210 3420 A
- (caught)252 3672 A
- (sigs.)210 3966 A
- 4218(*/)S
- 5130 V
- (17247)210 648 A
- (for)126 1110 A
- ((sn)126 1278 A
- 1446(=)S
- 1530(1;)S
- 1656(sn)S
- 1782(<=)S
- (_NSIG;)252 1908 A
- (sn++))210 2202 A
- 2454({)S
- 5220 V
- (17248)210 648 A
- 1362(if)S
- ((sigismember(&rmp->mp_catch,)1176 1488 A
- (sn)))168 2706 A
- 2916({)S
- 5310 V
- (17249)210 648 A
- (sigdelset(&rmp->mp_catch,)1050 1698 A
- (sn);)168 2790 A
- 5400 V
- (17250)210 648 A
- (rmp->mp_sigact[sn].sa_handler)1218 1698 A
- 2958(=)S
- (SIG_DFL;)336 3042 A
- 5490 V
- (17251)210 648 A
- (sigemptyset(&rmp->mp_sigact[sn].sa_mask);)1722 1698 A
- 5580 V
- (17252)210 648 A
- 1362(})S
- 5670 V
- (17253)210 648 A
- 1110(})S
- 5760 V
- (17254)210 648 A
- 5850 V
- (17255)210 648 A
- (rmp->mp_flags)546 1110 A
- 1698(&=)S
- (304SEPARATE;)420 1824 A
- 2370(/*)S
- (turn)168 2496 A
- (off)126 2706 A
- (SEPARATE)336 2874 A
- (bit)126 3252 A
- 3420(*/)S
- 5940 V
- (17256)210 648 A
- (rmp->mp_flags)546 1110 A
- 1698(|=)S
- (ft;)126 1824 A
- 2370(/*)S
- (turn)168 2496 A
- 2706(it)S
- 2832(on)S
- (for)126 2958 A
- (separate)336 3126 A
- 3504(I)S
- 3588(&)S
- 3672(D)S
- (files)210 3756 A
- 4008(*/)S
- 6030 V
- (17257)210 648 A
- (new_sp)252 1110 A
- 1404(=)S
- ((char)210 1488 A
- 1740(*))S
- (vsp;)168 1866 A
- 6120 V
- (17258)210 648 A
- 6210 V
- (17259)210 648 A
- (tell_fs(EXEC,)546 1110 A
- (who,)168 1698 A
- 1908(0,)S
- (0);)126 2034 A
- 2370(/*)S
- (allow)210 2496 A
- 2748(FS)S
- 2874(to)S
- (handle)252 3000 A
- (FD_CLOEXEC)420 3294 A
- (files)210 3756 A
- 4008(*/)S
- 8418 V
- EP
- %%Page: 239 239
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 12 B
- (239)180 4248 A
- 900 V
- 7 LST
- (17260)210 648 A
- 990 V
- (17261)210 648 A
- 1110(/*)S
- (System)252 1236 A
- (will)168 1530 A
- (save)168 1740 A
- (command)294 1950 A
- (line)168 2286 A
- (for)126 2496 A
- (debugging,)420 2664 A
- (ps(1))210 3126 A
- (output,)294 3378 A
- (etc.)168 3714 A
- 3924(*/)S
- 1080 V
- (17262)210 648 A
- (basename)336 1110 A
- 1488(=)S
- (strrchr(name_buf,)714 1572 A
- ('/');)210 2328 A
- 1170 V
- (17263)210 648 A
- 1110(if)S
- ((basename)378 1236 A
- 1656(==)S
- (NULL))210 1782 A
- (basename)336 2034 A
- 2412(=)S
- (name_buf;)378 2496 A
- (else)168 2916 A
- (basename++;)462 3126 A
- 1260 V
- (17264)210 648 A
- (sys_exec(who,)546 1110 A
- (new_sp,)294 1698 A
- (rmp->mp_flags)546 2034 A
- 2622(&)S
- (TRACED,)294 2706 A
- (basename,)378 3042 A
- (pc);)168 3462 A
- 1350 V
- (17265)210 648 A
- (return(OK);)462 1110 A
- 1440 V
- (17266)210 648 A
- 1026(})S
- 1710 V
- (17269)210 648 A
- (/*===========================================================================*)3276 1026 A
- 1800 V
- (17270)210 648 A
- 1068(*)S
- (read_header)462 2370 A
- 4260(*)S
- 1890 V
- (17271)210 648 A
- (*===========================================================================*/)3276 1068 A
- 1980 V
- (17272)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (read_header(fd,)630 1530 A
- (ft,)126 2202 A
- (text_bytes,)462 2370 A
- (data_bytes,)462 2874 A
- (bss_bytes,)420 3378 A
- 2070 V
- (17273)210 648 A
- (tot_bytes,)420 3042 A
- (sym_bytes,)420 3504 A
- (sc,)126 3966 A
- (pc))126 4134 A
- 2160 V
- (17274)210 648 A
- (int)126 1026 A
- (fd;)126 1194 A
- 2370(/*)S
- (file)168 2496 A
- (descriptor)420 2706 A
- (for)126 3168 A
- (reading)294 3336 A
- (exec)168 3672 A
- (file)168 3882 A
- 4092(*/)S
- 2250 V
- (17275)210 648 A
- (int)126 1026 A
- (*ft;)168 1194 A
- 2370(/*)S
- (place)210 2496 A
- 2748(to)S
- (return)252 2874 A
- 3168(ft)S
- (number)252 3294 A
- 3588(*/)S
- 2340 V
- (17276)210 648 A
- (vir_bytes)378 1026 A
- (*text_bytes;)504 1446 A
- 2370(/*)S
- (place)210 2496 A
- 2748(to)S
- (return)252 2874 A
- (text)168 3168 A
- (size)168 3378 A
- 3588(*/)S
- 2430 V
- (17277)210 648 A
- (vir_bytes)378 1026 A
- (*data_bytes;)504 1446 A
- 2370(/*)S
- (place)210 2496 A
- 2748(to)S
- (return)252 2874 A
- (initialized)462 3168 A
- (data)168 3672 A
- (size)168 3882 A
- 4092(*/)S
- 2520 V
- (17278)210 648 A
- (vir_bytes)378 1026 A
- (*bss_bytes;)462 1446 A
- 2370(/*)S
- (place)210 2496 A
- 2748(to)S
- (return)252 2874 A
- (bss)126 3168 A
- (size)168 3336 A
- 3546(*/)S
- 2610 V
- (17279)210 648 A
- (phys_bytes)420 1026 A
- (*tot_bytes;)462 1488 A
- 2370(/*)S
- (place)210 2496 A
- 2748(to)S
- (return)252 2874 A
- (total)210 3168 A
- (size)168 3420 A
- 3630(*/)S
- 2700 V
- (17280)210 648 A
- (long)168 1026 A
- (*sym_bytes;)462 1236 A
- 2370(/*)S
- (place)210 2496 A
- 2748(to)S
- (return)252 2874 A
- (symbol)252 3168 A
- (table)210 3462 A
- (size)168 3714 A
- 3924(*/)S
- 2790 V
- (17281)210 648 A
- (vir_clicks)420 1026 A
- (sc;)126 1488 A
- 2370(/*)S
- (stack)210 2496 A
- (size)168 2748 A
- 2958(in)S
- (clicks)252 3084 A
- 3378(*/)S
- 2880 V
- (17282)210 648 A
- (vir_bytes)378 1026 A
- (*pc;)168 1446 A
- 2370(/*)S
- (program)294 2496 A
- (entry)210 2832 A
- (point)210 3084 A
- ((initial)336 3336 A
- (PC))126 3714 A
- 3882(*/)S
- 2970 V
- (17283)210 648 A
- 1026({)S
- 3060 V
- (17284)210 648 A
- 1026(/*)S
- (Read)168 1152 A
- (the)126 1362 A
- (header)252 1530 A
- (and)126 1824 A
- (extract)294 1992 A
- (the)126 2328 A
- (text,)210 2496 A
- (data,)210 2748 A
- (bss)126 3000 A
- (and)126 3168 A
- (total)210 3336 A
- (sizes)210 3588 A
- (from)168 3840 A
- (it.)126 4050 A
- 4218(*/)S
- 3150 V
- (17285)210 648 A
- 3240 V
- (17286)210 648 A
- (int)126 1110 A
- 1278(m,)S
- (ct;)126 1404 A
- 3330 V
- (17287)210 648 A
- (vir_clicks)420 1110 A
- (tc,)126 1572 A
- (dc,)126 1740 A
- (s_vir,)252 1908 A
- (dvir;)210 2202 A
- 3420 V
- (17288)210 648 A
- (phys_clicks)462 1110 A
- (totc;)210 1614 A
- 3510 V
- (17289)210 648 A
- (struct)252 1110 A
- (exec)168 1404 A
- (hdr;)168 1614 A
- 2370(/*)S
- (a.out)210 2496 A
- (header)252 2748 A
- 3042(is)S
- (read)168 3168 A
- 3378(in)S
- (here)168 3504 A
- 3714(*/)S
- 3600 V
- (17290)210 648 A
- 3690 V
- (17291)210 648 A
- 1110(/*)S
- (Read)168 1236 A
- (the)126 1446 A
- (header)252 1614 A
- (and)126 1908 A
- (check)210 2076 A
- (the)126 2328 A
- (magic)210 2496 A
- (number.)294 2748 A
- (The)126 3126 A
- (standard)336 3294 A
- (MINIX)210 3672 A
- (header)252 3924 A
- 3780 V
- (17292)210 648 A
- 1152(*)S
- 1236(is)S
- (defined)294 1362 A
- 1698(in)S
- (<a.out.h>.)420 1824 A
- 2328(It)S
- (consists)336 2454 A
- 2832(of)S
- 2958(8)S
- (chars)210 3042 A
- (followed)336 3294 A
- 3672(by)S
- 3798(6)S
- (longs.)252 3882 A
- 3870 V
- (17293)210 648 A
- 1152(*)S
- (Then)168 1236 A
- (come)168 1446 A
- 1656(4)S
- (more)168 1740 A
- (longs)210 1950 A
- (that)168 2202 A
- (are)126 2412 A
- (not)126 2580 A
- (used)168 2748 A
- (here.)210 2958 A
- 3960 V
- (17294)210 648 A
- 1152(*)S
- (Byte)168 1362 A
- 1572(0:)S
- (magic)210 1698 A
- (number)252 1950 A
- (0x01)168 2244 A
- 4050 V
- (17295)210 648 A
- 1152(*)S
- (Byte)168 1362 A
- 1572(1:)S
- (magic)210 1698 A
- (number)252 1950 A
- (0x03)168 2244 A
- 4140 V
- (17296)210 648 A
- 1152(*)S
- (Byte)168 1362 A
- 1572(2:)S
- (normal)252 1698 A
- 1992(=)S
- (0x10)168 2076 A
- ((not)168 2286 A
- (checked,)336 2496 A
- 2874(0)S
- 2958(is)S
- (OK),)168 3084 A
- (separate)336 3294 A
- (I/D)126 3672 A
- 3840(=)S
- (0x20)168 3924 A
- 4230 V
- (17297)210 648 A
- 1152(*)S
- (Byte)168 1362 A
- 1572(3:)S
- (CPU)126 1698 A
- (type,)210 1866 A
- (Intel)210 2118 A
- 2370(16)S
- (bit)126 2496 A
- 2664(=)S
- (0x04,)210 2748 A
- (Intel)210 3000 A
- 3252(32)S
- (bit)126 3378 A
- 3546(=)S
- (0x10,)210 3630 A
- 4320 V
- (17298)210 648 A
- 1152(*)S
- (Motorola)336 1698 A
- 2076(=)S
- (0x0B,)210 2160 A
- (Sun)126 2412 A
- (SPARC)210 2580 A
- 2832(=)S
- (0x17)168 2916 A
- 4410 V
- (17299)210 648 A
- 1152(*)S
- (Byte)168 1362 A
- 1572(4:)S
- (Header)252 1698 A
- (length)252 1992 A
- 2286(=)S
- (0x20)168 2370 A
- 4500 V
- (17300)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (5-7)126 1614 A
- (are)126 1782 A
- (not)126 1950 A
- (used.)210 2118 A
- 4590 V
- (17301)210 648 A
- 1152(*)S
- 4680 V
- (17302)210 648 A
- 1152(*)S
- (Now)126 1362 A
- (come)168 1530 A
- (the)126 1740 A
- 1908(6)S
- (longs)210 1992 A
- 4770 V
- (17303)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (8-11:)210 1656 A
- (size)168 1908 A
- 2118(of)S
- (text)168 2244 A
- (segments)336 2454 A
- 2832(in)S
- (bytes)210 2958 A
- 4860 V
- (17304)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (12-15:)252 1614 A
- (size)168 1908 A
- 2118(of)S
- (initialized)462 2244 A
- (data)168 2748 A
- (segment)294 2958 A
- 3294(in)S
- (bytes)210 3420 A
- 4950 V
- (17305)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (16-19:)252 1614 A
- (size)168 1908 A
- 2118(of)S
- (bss)126 2244 A
- 2412(in)S
- (bytes)210 2538 A
- 5040 V
- (17306)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (20-23:)252 1614 A
- (program)294 1908 A
- (entry)210 2244 A
- (point)210 2496 A
- 5130 V
- (17307)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (24-27:)252 1614 A
- (total)210 1908 A
- (memory)252 2160 A
- (allocated)378 2454 A
- 2874(to)S
- (program)294 3000 A
- ((text,)252 3336 A
- (data)168 3630 A
- 3840(+)S
- (stack))252 3924 A
- 5220 V
- (17308)210 648 A
- 1152(*)S
- (Bytes)210 1362 A
- (28-31:)252 1614 A
- (size)168 1908 A
- 2118(of)S
- (symbol)252 2244 A
- (table)210 2538 A
- 2790(in)S
- (bytes)210 2916 A
- 5310 V
- (17309)210 648 A
- 1152(*)S
- (The)126 1236 A
- (longs)210 1404 A
- (are)126 1656 A
- (represented)462 1824 A
- 2328(in)S
- 2454(a)S
- (machine)294 2538 A
- (dependent)378 2874 A
- (order,)252 3294 A
- 5400 V
- (17310)210 648 A
- 1152(*)S
- (little-endian)546 1236 A
- 1824(on)S
- (the)126 1950 A
- (8088,)210 2118 A
- (big-endian)420 2370 A
- 2832(on)S
- (the)126 2958 A
- (68000.)252 3126 A
- 5490 V
- (17311)210 648 A
- 1152(*)S
- (The)126 1236 A
- (header)252 1404 A
- 1698(is)S
- (followed)336 1824 A
- (directly)336 2202 A
- 2580(by)S
- (the)126 2706 A
- (text)168 2874 A
- (and)126 3084 A
- (data)168 3252 A
- (segments,)378 3462 A
- (and)126 3882 A
- (the)126 4050 A
- 5580 V
- (17312)210 648 A
- 1152(*)S
- (symbol)252 1236 A
- (table)210 1530 A
- ((if)126 1782 A
- (any).)210 1950 A
- (The)126 2202 A
- (sizes)210 2370 A
- (are)126 2622 A
- (given)210 2790 A
- 3042(in)S
- (the)126 3168 A
- (header.)294 3336 A
- (Only)168 3672 A
- (the)126 3882 A
- 5670 V
- (17313)210 648 A
- 1152(*)S
- (text)168 1236 A
- (and)126 1446 A
- (data)168 1614 A
- (segments)336 1824 A
- (are)126 2202 A
- (copied)252 2370 A
- (into)168 2664 A
- (memory)252 2874 A
- 3168(by)S
- (exec.)210 3294 A
- (The)126 3546 A
- (header)252 3714 A
- 4008(is)S
- 5760 V
- (17314)210 648 A
- 1152(*)S
- (used)168 1236 A
- (here)168 1446 A
- (only.)210 1656 A
- (The)126 1908 A
- (symbol)252 2076 A
- (table)210 2370 A
- 2622(is)S
- (for)126 2748 A
- (the)126 2916 A
- (benefit)294 3084 A
- 3420(of)S
- 3546(a)S
- (debugger)336 3630 A
- (and)126 4008 A
- 5850 V
- (17315)210 648 A
- 1152(*)S
- 1236(is)S
- (ignored)294 1362 A
- (here.)210 1698 A
- 5940 V
- (17316)210 648 A
- 1152(*/)S
- 6030 V
- (17317)210 648 A
- 6120 V
- (17318)210 648 A
- 1110(if)S
- ((read(fd,)378 1236 A
- ((char)210 1656 A
- 1908(*))S
- (&hdr,)210 2034 A
- (A_MINHDR))378 2286 A
- 2706(!=)S
- (A_MINHDR))378 2832 A
- (return(ENOEXEC);)672 3252 A
- 6210 V
- (17319)210 648 A
- 8418 V
- EP
- %%Page: 240 240
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (240)180 648 A
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (17320)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- (magic)210 1488 A
- (number,)294 1740 A
- (cpu)126 2076 A
- (type,)210 2244 A
- (and)126 2496 A
- (flags.)252 2664 A
- 2958(*/)S
- 990 V
- (17321)210 648 A
- 1110(if)S
- ((BADMAG(hdr)))546 1236 A
- (return(ENOEXEC);)672 1824 A
- 1080 V
- (17322)210 648 A
- (#if)126 1026 A
- ((CHIP)210 1194 A
- 1446(==)S
- (INTEL)210 1572 A
- 1824(&&)S
- (_WORD_SIZE)420 1950 A
- 2412(==)S
- 2538(2))S
- 1170 V
- (17323)210 648 A
- 1110(if)S
- ((hdr.a_cpu)420 1236 A
- 1698(!=)S
- (A_I8086))336 1824 A
- (return(ENOEXEC);)672 2202 A
- 1260 V
- (17324)210 648 A
- (#endif)252 1026 A
- 1350 V
- (17325)210 648 A
- (#if)126 1026 A
- ((CHIP)210 1194 A
- 1446(==)S
- (INTEL)210 1572 A
- 1824(&&)S
- (_WORD_SIZE)420 1950 A
- 2412(==)S
- 2538(4))S
- 1440 V
- (17326)210 648 A
- 1110(if)S
- ((hdr.a_cpu)420 1236 A
- 1698(!=)S
- (A_I80386))378 1824 A
- (return(ENOEXEC);)672 2244 A
- 1530 V
- (17327)210 648 A
- (#endif)252 1026 A
- 1620 V
- (17328)210 648 A
- 1110(if)S
- (((hdr.a_flags)546 1236 A
- 1824(&)S
- (304(A_NSYM)336 1908 A
- 2286(|)S
- (A_EXEC)252 2370 A
- 2664(|)S
- (A_SEP)))294 2748 A
- 3084(!=)S
- 3210(0))S
- (return(ENOEXEC);)672 3336 A
- 1710 V
- (17329)210 648 A
- 1800 V
- (17330)210 648 A
- (*ft)126 1110 A
- 1278(=)S
- 1362(()S
- ((hdr.a_flags)504 1446 A
- 1992(&)S
- (A_SEP))252 2076 A
- 2370(?)S
- (SEPARATE)336 2454 A
- 2832(:)S
- (0);)126 2916 A
- 3210(/*)S
- (separate)336 3336 A
- 3714(I)S
- 3798(&)S
- 3882(D)S
- 3966(or)S
- (not)126 4092 A
- 4260(*/)S
- 1890 V
- (17331)210 648 A
- 1980 V
- (17332)210 648 A
- 1110(/*)S
- (Get)126 1236 A
- (text)168 1404 A
- (and)126 1614 A
- (data)168 1782 A
- (sizes.)252 1992 A
- 2286(*/)S
- 2070 V
- (17333)210 648 A
- (*text_bytes)462 1110 A
- 1614(=)S
- ((vir_bytes))462 1698 A
- (hdr.a_text;)462 2202 A
- 2706(/*)S
- (text)168 2832 A
- (size)168 3042 A
- 3252(in)S
- (bytes)210 3378 A
- 3630(*/)S
- 2160 V
- (17334)210 648 A
- (*data_bytes)462 1110 A
- 1614(=)S
- ((vir_bytes))462 1698 A
- (hdr.a_data;)462 2202 A
- 2706(/*)S
- (data)168 2832 A
- (size)168 3042 A
- 3252(in)S
- (bytes)210 3378 A
- 3630(*/)S
- 2250 V
- (17335)210 648 A
- (*bss_bytes)420 1110 A
- 1614(=)S
- ((vir_bytes))462 1698 A
- (hdr.a_bss;)420 2202 A
- 2706(/*)S
- (bss)126 2832 A
- (size)168 3000 A
- 3210(in)S
- (bytes)210 3336 A
- 3588(*/)S
- 2340 V
- (17336)210 648 A
- (*tot_bytes)420 1110 A
- 1614(=)S
- (hdr.a_total;)504 1698 A
- 2706(/*)S
- (total)210 2832 A
- (bytes)210 3084 A
- 3336(to)S
- (allocate)336 3462 A
- (for)126 3840 A
- (prog)168 4008 A
- 4218(*/)S
- 2430 V
- (17337)210 648 A
- (*sym_bytes)420 1110 A
- 1614(=)S
- (hdr.a_syms;)462 1698 A
- 2706(/*)S
- (symbol)252 2832 A
- (table)210 3126 A
- (size)168 3378 A
- 3588(in)S
- (bytes)210 3714 A
- 3966(*/)S
- 2520 V
- (17338)210 648 A
- 1110(if)S
- ((*tot_bytes)462 1236 A
- 1740(==)S
- 1866(0))S
- (return(ENOEXEC);)672 1992 A
- 2610 V
- (17339)210 648 A
- 2700 V
- (17340)210 648 A
- 1110(if)S
- ((*ft)168 1236 A
- 1446(!=)S
- (SEPARATE))378 1572 A
- 1992({)S
- 2790 V
- (17341)210 648 A
- 2880 V
- (17342)210 648 A
- 1362(/*)S
- 1488(If)S
- 1614(I)S
- 1698(&)S
- 1782(D)S
- (space)210 1866 A
- 2118(is)S
- (not)126 2244 A
- (separated,)420 2412 A
- 2874(it)S
- 3000(is)S
- (all)126 3126 A
- (considered)420 3294 A
- (data.)210 3756 A
- (Text=0*/)336 4008 A
- 2970 V
- (17343)210 648 A
- (*data_bytes)462 1362 A
- 1866(+=)S
- (*text_bytes;)504 1992 A
- 3060 V
- (17344)210 648 A
- (*text_bytes)462 1362 A
- 1866(=)S
- 1950(0;)S
- 3150 V
- (17345)210 648 A
- 3240 V
- (17346)210 648 A
- 1110(})S
- 3330 V
- (17347)210 648 A
- (*pc)126 1110 A
- 1278(=)S
- (hdr.a_entry;)504 1362 A
- 2034(/*)S
- (initial)294 2160 A
- (address)294 2496 A
- 2832(to)S
- (start)210 2958 A
- (execution)378 3210 A
- 3630(*/)S
- 3420 V
- (17348)210 648 A
- 3510 V
- (17349)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- 1488(to)S
- (see)126 1614 A
- 1782(if)S
- (segment)294 1908 A
- (sizes)210 2244 A
- (are)126 2496 A
- (feasible.)378 2664 A
- 3084(*/)S
- 3600 V
- (17350)210 648 A
- 1110(tc)S
- 1236(=)S
- (((unsigned)420 1320 A
- (long))210 1782 A
- (*text_bytes)462 2034 A
- 2538(+)S
- (CLICK_SIZE)420 2622 A
- 3084(-)S
- 3168(1))S
- 3294(>>)S
- (CLICK_SHIFT;)504 3420 A
- 3690 V
- (17351)210 648 A
- 1110(dc)S
- 1236(=)S
- ((*data_bytes)504 1320 A
- 1866(+)S
- (*bss_bytes)420 1950 A
- 2412(+)S
- (CLICK_SIZE)420 2496 A
- 2958(-)S
- 3042(1))S
- 3168(>>)S
- (CLICK_SHIFT;)504 3294 A
- 3780 V
- (17352)210 648 A
- (totc)168 1110 A
- 1320(=)S
- ((*tot_bytes)462 1404 A
- 1908(+)S
- (CLICK_SIZE)420 1992 A
- 2454(-)S
- 2538(1))S
- 2664(>>)S
- (CLICK_SHIFT;)504 2790 A
- 3870 V
- (17353)210 648 A
- 1110(if)S
- ((dc)126 1236 A
- 1404(>=)S
- (totc))210 1530 A
- (return(ENOEXEC);)672 1782 A
- 2706(/*)S
- (stack)210 2832 A
- (must)168 3084 A
- 3294(be)S
- 3420(at)S
- (least)210 3546 A
- 3798(1)S
- (click)210 3882 A
- 4134(*/)S
- 3960 V
- (17354)210 648 A
- (dvir)168 1110 A
- 1320(=)S
- ((*ft)168 1404 A
- 1614(==)S
- (SEPARATE)336 1740 A
- 2118(?)S
- 2202(0)S
- 2286(:)S
- (tc);)168 2370 A
- 4050 V
- (17355)210 648 A
- (s_vir)210 1110 A
- 1362(=)S
- (dvir)168 1446 A
- 1656(+)S
- ((totc)210 1740 A
- 1992(-)S
- (sc);)168 2076 A
- 4140 V
- (17356)210 648 A
- 1110(m)S
- 1194(=)S
- (size_ok(*ft,)504 1278 A
- (tc,)126 1824 A
- (dc,)126 1992 A
- (sc,)126 2160 A
- (dvir,)210 2328 A
- (s_vir);)294 2580 A
- 4230 V
- (17357)210 648 A
- 1110(ct)S
- 1236(=)S
- (hdr.a_hdrlen)504 1320 A
- 1866(&)S
- (BYTE;)210 1950 A
- 2706(/*)S
- (header)252 2832 A
- (length)252 3126 A
- 3420(*/)S
- 4320 V
- (17358)210 648 A
- 1110(if)S
- ((ct)126 1236 A
- 1404(>)S
- (A_MINHDR))378 1488 A
- (lseek(fd,)378 1908 A
- ((off_t))294 2328 A
- (ct,)126 2664 A
- (SEEK_SET);)420 2832 A
- 3294(/*)S
- (skip)168 3420 A
- (unused)252 3630 A
- (hdr)126 3924 A
- 4092(*/)S
- 4410 V
- (17359)210 648 A
- (return(m);)420 1110 A
- 4500 V
- (17360)210 648 A
- 1026(})S
- 4770 V
- (17363)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4860 V
- (17364)210 648 A
- 1068(*)S
- (new_mem)294 2370 A
- 4260(*)S
- 4950 V
- (17365)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5040 V
- (17366)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (new_mem(sh_mp,)588 1530 A
- (text_bytes,)462 2160 A
- (data_bytes,bss_bytes,stk_bytes,tot_bytes))1722 2664 A
- 5130 V
- (17367)210 648 A
- (struct)252 1026 A
- (mproc)210 1320 A
- (*sh_mp;)294 1572 A
- 2370(/*)S
- (text)168 2496 A
- (can)126 2706 A
- 2874(be)S
- (shared)252 3000 A
- (with)168 3294 A
- (this)168 3504 A
- (process)294 3714 A
- 4050(*/)S
- 5220 V
- (17368)210 648 A
- (vir_bytes)378 1026 A
- (text_bytes;)462 1446 A
- 2370(/*)S
- (text)168 2496 A
- (segment)294 2706 A
- (size)168 3042 A
- 3252(in)S
- (bytes)210 3378 A
- 3630(*/)S
- 5310 V
- (17369)210 648 A
- (vir_bytes)378 1026 A
- (data_bytes;)462 1446 A
- 2370(/*)S
- (size)168 2496 A
- 2706(of)S
- (initialized)462 2832 A
- (data)168 3336 A
- 3546(in)S
- (bytes)210 3672 A
- 3924(*/)S
- 5400 V
- (17370)210 648 A
- (vir_bytes)378 1026 A
- (bss_bytes;)420 1446 A
- 2370(/*)S
- (size)168 2496 A
- 2706(of)S
- (bss)126 2832 A
- 3000(in)S
- (bytes)210 3126 A
- 3378(*/)S
- 5490 V
- (17371)210 648 A
- (vir_bytes)378 1026 A
- (stk_bytes;)420 1446 A
- 2370(/*)S
- (size)168 2496 A
- 2706(of)S
- (initial)294 2832 A
- (stack)210 3168 A
- (segment)294 3420 A
- 3756(in)S
- (bytes)210 3882 A
- 4134(*/)S
- 5580 V
- (17372)210 648 A
- (phys_bytes)420 1026 A
- (tot_bytes;)420 1488 A
- 2370(/*)S
- (total)210 2496 A
- (memory)252 2748 A
- 3042(to)S
- (allocate,)378 3168 A
- (including)378 3588 A
- (gap)126 4008 A
- 4176(*/)S
- 5670 V
- (17373)210 648 A
- 1026({)S
- 5760 V
- (17374)210 648 A
- 1026(/*)S
- (Allocate)336 1152 A
- (new)126 1530 A
- (memory)252 1698 A
- (and)126 1992 A
- (release)294 2160 A
- (the)126 2496 A
- (old)126 2664 A
- (memory.)294 2832 A
- (Change)252 3210 A
- (the)126 3504 A
- (map)126 3672 A
- (and)126 3840 A
- (report)252 4008 A
- 5850 V
- (17375)210 648 A
- 1068(*)S
- (the)126 1152 A
- (new)126 1320 A
- (map)126 1488 A
- 1656(to)S
- (the)126 1782 A
- (kernel.)294 1950 A
- (Zero)168 2328 A
- (the)126 2538 A
- (new)126 2706 A
- (core)168 2874 A
- (image's)294 3084 A
- (bss,)168 3420 A
- (gap)126 3630 A
- (and)126 3798 A
- (stack.)252 3966 A
- 5940 V
- (17376)210 648 A
- 1068(*/)S
- 6030 V
- (17377)210 648 A
- 6120 V
- (17378)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (mproc)210 1782 A
- (*rmp;)210 2034 A
- 6210 V
- (17379)210 648 A
- (vir_clicks)420 1110 A
- (text_clicks,)504 1572 A
- (data_clicks,)504 2118 A
- (gap_clicks,)462 2664 A
- (stack_clicks,)546 3168 A
- (tot_clicks;)462 3756 A
- 8418 V
- EP
- %%Page: 241 241
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 12 B
- (241)180 4248 A
- 900 V
- 7 LST
- (17380)210 648 A
- (phys_clicks)462 1110 A
- (new_base;)378 1614 A
- 990 V
- (17381)210 648 A
- 1080 V
- (17382)210 648 A
- (static)252 1110 A
- (char)168 1404 A
- (zero[1024];)462 1614 A
- 2706(/*)S
- (used)168 2832 A
- 3042(to)S
- (zero)168 3168 A
- (bss)126 3378 A
- 3546(*/)S
- 1170 V
- (17383)210 648 A
- (phys_bytes)420 1110 A
- (bytes,)252 1572 A
- (base,)210 1866 A
- (count,)252 2118 A
- (bss_offset;)462 2412 A
- 1260 V
- (17384)210 648 A
- 1350 V
- (17385)210 648 A
- 1110(/*)S
- 1236(No)S
- (need)168 1362 A
- 1572(to)S
- (allocate)336 1698 A
- (text)168 2076 A
- 2286(if)S
- 2412(it)S
- (can)126 2538 A
- 2706(be)S
- (shared.)294 2832 A
- 3168(*/)S
- 1440 V
- (17386)210 648 A
- 1110(if)S
- ((sh_mp)252 1236 A
- 1530(!=)S
- (NULL))210 1656 A
- (text_bytes)420 1908 A
- 2370(=)S
- 2454(0;)S
- 1530 V
- (17387)210 648 A
- 1620 V
- (17388)210 648 A
- 1110(/*)S
- (Acquire)294 1236 A
- (the)126 1572 A
- (new)126 1740 A
- (memory.)294 1908 A
- (Each)168 2286 A
- 2496(of)S
- (the)126 2622 A
- 2790(4)S
- (parts:)252 2874 A
- (text,)210 3168 A
- ((data+bss),)462 3420 A
- (gap,)168 3924 A
- 1710 V
- (17389)210 648 A
- 1152(*)S
- (and)126 1236 A
- (stack)210 1404 A
- (occupies)336 1656 A
- 2034(an)S
- (integral)336 2160 A
- (number)252 2538 A
- 2832(of)S
- (clicks,)294 2958 A
- (starting)336 3294 A
- 3672(at)S
- (click)210 3798 A
- 1800 V
- (17390)210 648 A
- 1152(*)S
- (boundary.)378 1236 A
- (The)126 1698 A
- (data)168 1866 A
- (and)126 2076 A
- (bss)126 2244 A
- (parts)210 2412 A
- (are)126 2664 A
- (run)126 2832 A
- (together)336 3000 A
- (with)168 3378 A
- 3588(no)S
- (space.)252 3714 A
- 1890 V
- (17391)210 648 A
- 1152(*/)S
- 1980 V
- (17392)210 648 A
- 2070 V
- (17393)210 648 A
- (text_clicks)462 1110 A
- 1614(=)S
- (((unsigned)420 1698 A
- (long))210 2160 A
- (text_bytes)420 2412 A
- 2874(+)S
- (CLICK_SIZE)420 2958 A
- 3420(-)S
- 3504(1))S
- 3630(>>)S
- (CLICK_SHIFT;)504 3756 A
- 2160 V
- (17394)210 648 A
- (data_clicks)462 1110 A
- 1614(=)S
- ((data_bytes)462 1698 A
- 2202(+)S
- (bss_bytes)378 2286 A
- 2706(+)S
- (CLICK_SIZE)420 2790 A
- 3252(-)S
- 3336(1))S
- 3462(>>)S
- (CLICK_SHIFT;)504 3588 A
- 2250 V
- (17395)210 648 A
- (stack_clicks)504 1110 A
- 1656(=)S
- ((stk_bytes)420 1740 A
- 2202(+)S
- (CLICK_SIZE)420 2286 A
- 2748(-)S
- 2832(1))S
- 2958(>>)S
- (CLICK_SHIFT;)504 3084 A
- 2340 V
- (17396)210 648 A
- (tot_clicks)420 1110 A
- 1572(=)S
- ((tot_bytes)420 1656 A
- 2118(+)S
- (CLICK_SIZE)420 2202 A
- 2664(-)S
- 2748(1))S
- 2874(>>)S
- (CLICK_SHIFT;)504 3000 A
- 2430 V
- (17397)210 648 A
- (gap_clicks)420 1110 A
- 1572(=)S
- (tot_clicks)420 1656 A
- 2118(-)S
- (data_clicks)462 2202 A
- 2706(-)S
- (stack_clicks;)546 2790 A
- 2520 V
- (17398)210 648 A
- 1110(if)S
- 1236(()S
- ((int))210 1320 A
- (gap_clicks)420 1572 A
- 2034(<)S
- 2118(0))S
- (return(ENOMEM);)630 2244 A
- 2610 V
- (17399)210 648 A
- 2700 V
- (17400)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- 1488(to)S
- (see)126 1614 A
- 1782(if)S
- (there)210 1908 A
- 2160(is)S
- 2286(a)S
- (hole)168 2370 A
- (big)126 2580 A
- (enough.)294 2748 A
- 3126(If)S
- (so,)126 3252 A
- 3420(we)S
- (can)126 3546 A
- (risk)168 3714 A
- (first)210 3924 A
- 2790 V
- (17401)210 648 A
- 1152(*)S
- (releasing)378 1236 A
- (the)126 1656 A
- (old)126 1824 A
- (core)168 1992 A
- (image)210 2202 A
- (before)252 2454 A
- (allocating)420 2748 A
- (the)126 3210 A
- (new)126 3378 A
- (one,)168 3546 A
- (since)210 3756 A
- 4008(we)S
- 2880 V
- (17402)210 648 A
- 1152(*)S
- (know)168 1236 A
- 1446(it)S
- (will)168 1572 A
- (succeed.)336 1782 A
- 2202(If)S
- (there)210 2328 A
- 2580(is)S
- (not)126 2706 A
- (enough,)294 2874 A
- (return)252 3210 A
- (failure.)336 3504 A
- 2970 V
- (17403)210 648 A
- 1152(*/)S
- 3060 V
- (17404)210 648 A
- 1110(if)S
- ((text_clicks)504 1236 A
- 1782(+)S
- (tot_clicks)420 1866 A
- 2328(>)S
- (max_hole()))462 2412 A
- (return(EAGAIN);)630 2916 A
- 3150 V
- (17405)210 648 A
- 3240 V
- (17406)210 648 A
- 1110(/*)S
- (There)210 1236 A
- 1488(is)S
- (enough)252 1614 A
- (memory)252 1908 A
- (for)126 2202 A
- (the)126 2370 A
- (new)126 2538 A
- (core)168 2706 A
- (image.)252 2916 A
- (Release)294 3252 A
- (the)126 3588 A
- (old)126 3756 A
- (one.)168 3924 A
- 4134(*/)S
- 3330 V
- (17407)210 648 A
- (rmp)126 1110 A
- 1278(=)S
- (mp;)126 1362 A
- 3420 V
- (17408)210 648 A
- 3510 V
- (17409)210 648 A
- 1110(if)S
- ((find_share(rmp,)672 1236 A
- (rmp->mp_ino,)504 1950 A
- (rmp->mp_dev,)504 2496 A
- (rmp->mp_ctime))588 3042 A
- 3672(==)S
- (NULL))210 3798 A
- 4050({)S
- 3600 V
- (17410)210 648 A
- 1362(/*)S
- 1488(No)S
- (other)210 1614 A
- (process)294 1866 A
- (shares)252 2202 A
- (the)126 2496 A
- (text)168 2664 A
- (segment,)336 2874 A
- 3252(so)S
- (free)168 3378 A
- (it.)126 3588 A
- 3756(*/)S
- 3690 V
- (17411)210 648 A
- (free_mem(rmp->mp_seg[T].mem_phys,)1386 1362 A
- (rmp->mp_seg[T].mem_len);)1008 2790 A
- 3780 V
- (17412)210 648 A
- 1110(})S
- 3870 V
- (17413)210 648 A
- 1110(/*)S
- (Free)168 1236 A
- (the)126 1446 A
- (data)168 1614 A
- (and)126 1824 A
- (stack)210 1992 A
- (segments.)378 2244 A
- 2664(*/)S
- 3960 V
- (17414)210 648 A
- (free_mem(rmp->mp_seg[D].mem_phys,)1386 1110 A
- 4050 V
- (17415)210 648 A
- (rmp->mp_seg[S].mem_vir)924 1278 A
- 2244(+)S
- (rmp->mp_seg[S].mem_len)924 2328 A
- 3294(-)S
- (rmp->mp_seg[D].mem_vir);)1008 3378 A
- 4140 V
- (17416)210 648 A
- 4230 V
- (17417)210 648 A
- 1110(/*)S
- 1236(We)S
- (have)168 1362 A
- (now)126 1572 A
- (passed)252 1740 A
- (the)126 2034 A
- (point)210 2202 A
- 2454(of)S
- 2580(no)S
- (return.)294 2706 A
- (The)126 3084 A
- (old)126 3252 A
- (core)168 3420 A
- (image)210 3630 A
- (has)126 3882 A
- (been)168 4050 A
- 4320 V
- (17418)210 648 A
- 1152(*)S
- (forever)294 1236 A
- (lost.)210 1572 A
- (The)126 1866 A
- (call)168 2034 A
- (must)168 2244 A
- 2454(go)S
- (through)294 2580 A
- (now.)168 2916 A
- (Set)126 3168 A
- 3336(up)S
- (and)126 3462 A
- (report)252 3630 A
- (new)126 3924 A
- (map.)168 4092 A
- 4410 V
- (17419)210 648 A
- 1152(*/)S
- 4500 V
- (17420)210 648 A
- (new_base)336 1110 A
- 1488(=)S
- (alloc_mem(text_clicks)882 1572 A
- 2496(+)S
- (tot_clicks);)504 2580 A
- 3378(/*)S
- (new)126 3504 A
- (core)168 3672 A
- (image)210 3882 A
- 4134(*/)S
- 4590 V
- (17421)210 648 A
- 1110(if)S
- ((new_base)378 1236 A
- 1656(==)S
- (NO_MEM))294 1782 A
- (panic("MM)378 2118 A
- (hole)168 2538 A
- (list)168 2748 A
- 2958(is)S
- (inconsistent",)588 3084 A
- (NO_NUM);)336 3714 A
- 4680 V
- (17422)210 648 A
- 4770 V
- (17423)210 648 A
- 1110(if)S
- ((sh_mp)252 1236 A
- 1530(!=)S
- (NULL))210 1656 A
- 1908({)S
- 4860 V
- (17424)210 648 A
- 1362(/*)S
- (Share)210 1488 A
- (the)126 1740 A
- (text)168 1908 A
- (segment.)336 2118 A
- 2496(*/)S
- 4950 V
- (17425)210 648 A
- (rmp->mp_seg[T])588 1362 A
- 1992(=)S
- (sh_mp->mp_seg[T];)714 2076 A
- 5040 V
- (17426)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 5130 V
- (17427)210 648 A
- (rmp->mp_seg[T].mem_phys)966 1362 A
- 2370(=)S
- (new_base;)378 2454 A
- 5220 V
- (17428)210 648 A
- (rmp->mp_seg[T].mem_vir)924 1362 A
- 2328(=)S
- 2412(0;)S
- 5310 V
- (17429)210 648 A
- (rmp->mp_seg[T].mem_len)924 1362 A
- 2328(=)S
- (text_clicks;)504 2412 A
- 5400 V
- (17430)210 648 A
- 1110(})S
- 5490 V
- (17431)210 648 A
- (rmp->mp_seg[D].mem_phys)966 1110 A
- 2118(=)S
- (new_base)336 2202 A
- 2580(+)S
- (text_clicks;)504 2664 A
- 5580 V
- (17432)210 648 A
- (rmp->mp_seg[D].mem_vir)924 1110 A
- 2076(=)S
- 2160(0;)S
- 5670 V
- (17433)210 648 A
- (rmp->mp_seg[D].mem_len)924 1110 A
- 2076(=)S
- (data_clicks;)504 2160 A
- 5760 V
- (17434)210 648 A
- (rmp->mp_seg[S].mem_phys)966 1110 A
- 2118(=)S
- (rmp->mp_seg[D].mem_phys)966 2202 A
- 3210(+)S
- (data_clicks)462 3294 A
- 3798(+)S
- (gap_clicks;)462 3882 A
- 5850 V
- (17435)210 648 A
- (rmp->mp_seg[S].mem_vir)924 1110 A
- 2076(=)S
- (rmp->mp_seg[D].mem_vir)924 2160 A
- 3126(+)S
- (data_clicks)462 3210 A
- 3714(+)S
- (gap_clicks;)462 3798 A
- 5940 V
- (17436)210 648 A
- (rmp->mp_seg[S].mem_len)924 1110 A
- 2076(=)S
- (stack_clicks;)546 2160 A
- 6030 V
- (17437)210 648 A
- 6120 V
- (17438)210 648 A
- 6210 V
- (17439)210 648 A
- (sys_newmap(who,)630 1110 A
- (rmp->mp_seg);)546 1782 A
- 2454(/*)S
- (report)252 2580 A
- (new)126 2874 A
- (map)126 3042 A
- 3210(to)S
- (the)126 3336 A
- (kernel)252 3504 A
- 3798(*/)S
- 8418 V
- EP
- %%Page: 242 242
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- (242)180 648 A
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (17440)210 648 A
- 990 V
- (17441)210 648 A
- 1110(/*)S
- (Zero)168 1236 A
- (the)126 1446 A
- (bss,)168 1614 A
- (gap,)168 1824 A
- (and)126 2034 A
- (stack)210 2202 A
- (segment.)336 2454 A
- 2832(*/)S
- 1080 V
- (17442)210 648 A
- (bytes)210 1110 A
- 1362(=)S
- ((phys_bytes)(data_clicks)1008 1446 A
- 2496(+)S
- (gap_clicks)420 2580 A
- 3042(+)S
- (stack_clicks))546 3126 A
- 3714(<<)S
- (CLICK_SHIFT;)504 3840 A
- 1170 V
- (17443)210 648 A
- (base)168 1110 A
- 1320(=)S
- ((phys_bytes))504 1404 A
- (rmp->mp_seg[D].mem_phys)966 1950 A
- 2958(<<)S
- (CLICK_SHIFT;)504 3084 A
- 1260 V
- (17444)210 648 A
- (bss_offset)420 1110 A
- 1572(=)S
- ((data_bytes)462 1656 A
- 2160(>>)S
- (CLICK_SHIFT))504 2286 A
- 2832(<<)S
- (CLICK_SHIFT;)504 2958 A
- 1350 V
- (17445)210 648 A
- (base)168 1110 A
- 1320(+=)S
- (bss_offset;)462 1446 A
- 1440 V
- (17446)210 648 A
- (bytes)210 1110 A
- 1362(-=)S
- (bss_offset;)462 1488 A
- 1530 V
- (17447)210 648 A
- 1620 V
- (17448)210 648 A
- (while)210 1110 A
- ((bytes)252 1362 A
- 1656(>)S
- 1740(0))S
- 1866({)S
- 1710 V
- (17449)210 648 A
- (count)210 1362 A
- 1614(=)S
- (MIN(bytes,)420 1698 A
- ((phys_bytes))504 2160 A
- (sizeof(zero));)588 2706 A
- 1800 V
- (17450)210 648 A
- 1362(if)S
- ((sys_copy(MM_PROC_NR,)882 1488 A
- 2412(D,)S
- ((phys_bytes))504 2538 A
- (zero,)210 3084 A
- 1890 V
- (17451)210 648 A
- (ABS,)168 3042 A
- 3252(0,)S
- (base,)210 3378 A
- (count))252 3630 A
- 3924(!=)S
- (OK))126 4050 A
- 4218({)S
- 1980 V
- (17452)210 648 A
- (panic("new_mem)588 1698 A
- (can't)210 2328 A
- (zero",)252 2580 A
- (NO_NUM);)336 2874 A
- 2070 V
- (17453)210 648 A
- 1362(})S
- 2160 V
- (17454)210 648 A
- (base)168 1362 A
- 1572(+=)S
- (count;)252 1698 A
- 2250 V
- (17455)210 648 A
- (bytes)210 1362 A
- 1614(-=)S
- (count;)252 1740 A
- 2340 V
- (17456)210 648 A
- 1110(})S
- 2430 V
- (17457)210 648 A
- 2520 V
- (17458)210 648 A
- (return(OK);)462 1110 A
- 2610 V
- (17459)210 648 A
- 1026(})S
- 2880 V
- (17462)210 648 A
- (/*===========================================================================*)3276 1026 A
- 2970 V
- (17463)210 648 A
- 1068(*)S
- (patch_ptr)378 2370 A
- 4260(*)S
- 3060 V
- (17464)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3150 V
- (17465)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (patch_ptr(stack,)672 1572 A
- (base))210 2286 A
- 3240 V
- (17466)210 648 A
- (char)168 1026 A
- (stack[ARG_MAX];)630 1236 A
- 2034(/*)S
- (pointer)294 2160 A
- 2496(to)S
- (stack)210 2622 A
- (image)210 2874 A
- (within)252 3126 A
- 3420(MM)S
- 3546(*/)S
- 3330 V
- (17467)210 648 A
- (vir_bytes)378 1026 A
- (base;)210 1446 A
- 2370(/*)S
- (virtual)294 2496 A
- (address)294 2832 A
- 3168(of)S
- (stack)210 3294 A
- (base)168 3546 A
- (inside)252 3756 A
- (user)168 4050 A
- 4260(*/)S
- 3420 V
- (17468)210 648 A
- 1026({)S
- 3510 V
- (17469)210 648 A
- 1026(/*)S
- (When)168 1152 A
- (doing)210 1362 A
- 1614(an)S
- (exec(name,)420 1740 A
- (argv,)210 2202 A
- (envp))210 2454 A
- (call,)210 2706 A
- (the)126 2958 A
- (user)168 3126 A
- (builds)252 3336 A
- 3630(up)S
- 3756(a)S
- (stack)210 3840 A
- 3600 V
- (17470)210 648 A
- 1068(*)S
- (image)210 1152 A
- (with)168 1404 A
- (arg)126 1614 A
- (and)126 1782 A
- (env)126 1950 A
- (pointers)336 2118 A
- (relative)336 2496 A
- 2874(to)S
- (the)126 3000 A
- (start)210 3168 A
- 3420(of)S
- (the)126 3546 A
- (stack.)252 3714 A
- (Now)126 4050 A
- 3690 V
- (17471)210 648 A
- 1068(*)S
- (these)210 1152 A
- (pointers)336 1404 A
- (must)168 1782 A
- 1992(be)S
- (relocated,)420 2118 A
- (since)210 2580 A
- (the)126 2832 A
- (stack)210 3000 A
- 3252(is)S
- (not)126 3378 A
- (positioned)420 3546 A
- 4008(at)S
- 3780 V
- (17472)210 648 A
- 1068(*)S
- (address)294 1152 A
- 1488(0)S
- 1572(in)S
- (the)126 1698 A
- (user's)252 1866 A
- (address)294 2160 A
- (space.)252 2496 A
- 3870 V
- (17473)210 648 A
- 1068(*/)S
- 3960 V
- (17474)210 648 A
- 4050 V
- (17475)210 648 A
- (char)168 1110 A
- (**ap,)210 1320 A
- (flag;)210 1572 A
- 4140 V
- (17476)210 648 A
- (vir_bytes)378 1110 A
- 1530(v;)S
- 4230 V
- (17477)210 648 A
- 4320 V
- (17478)210 648 A
- (flag)168 1110 A
- 1320(=)S
- 1404(0;)S
- 2370(/*)S
- (counts)252 2496 A
- (number)252 2790 A
- 3084(of)S
- (0-pointers)420 3210 A
- (seen)168 3672 A
- 3882(*/)S
- 4410 V
- (17479)210 648 A
- 1110(ap)S
- 1236(=)S
- ((char)210 1320 A
- (**))126 1572 A
- (stack;)252 1740 A
- 2370(/*)S
- (points)252 2496 A
- (initially)378 2790 A
- 3210(to)S
- ('nargs')294 3336 A
- 3672(*/)S
- 4500 V
- (17480)210 648 A
- (ap++;)210 1110 A
- 2370(/*)S
- (now)126 2496 A
- (points)252 2664 A
- 2958(to)S
- (argv[0])294 3084 A
- 3420(*/)S
- 4590 V
- (17481)210 648 A
- (while)210 1110 A
- ((flag)210 1362 A
- 1614(<)S
- 1698(2))S
- 1824({)S
- 4680 V
- (17482)210 648 A
- 1362(if)S
- ((ap)126 1488 A
- 1656(>=)S
- ((char)210 1782 A
- (**))126 2034 A
- (&stack[ARG_MAX]))672 2202 A
- (return;)294 2916 A
- 3378(/*)S
- (too)126 3504 A
- (bad)126 3672 A
- 3840(*/)S
- 4770 V
- (17483)210 648 A
- 1362(if)S
- ((*ap)168 1488 A
- 1698(!=)S
- (NIL_PTR))336 1824 A
- 2202({)S
- 4860 V
- (17484)210 648 A
- 1698(v)S
- 1782(=)S
- ((vir_bytes))462 1866 A
- (*ap;)168 2370 A
- 2706(/*)S
- 2832(v)S
- 2916(is)S
- (relative)336 3042 A
- (pointer)294 3420 A
- 3756(*/)S
- 4950 V
- (17485)210 648 A
- 1698(v)S
- 1782(+=)S
- (base;)210 1908 A
- 2706(/*)S
- (relocate)336 2832 A
- 3210(it)S
- 3336(*/)S
- 5040 V
- (17486)210 648 A
- (*ap)126 1698 A
- 1866(=)S
- ((char)210 1950 A
- 2202(*))S
- 2328(v;)S
- 2706(/*)S
- (put)126 2832 A
- 3000(it)S
- (back)168 3126 A
- 3336(*/)S
- 5130 V
- (17487)210 648 A
- 1362(})S
- (else)168 1446 A
- 1656({)S
- 5220 V
- (17488)210 648 A
- (flag++;)294 1698 A
- 5310 V
- (17489)210 648 A
- 1362(})S
- 5400 V
- (17490)210 648 A
- (ap++;)210 1362 A
- 5490 V
- (17491)210 648 A
- 1110(})S
- 5580 V
- (17492)210 648 A
- 1026(})S
- 5850 V
- (17495)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5940 V
- (17496)210 648 A
- 1068(*)S
- (load_seg)336 2370 A
- 4260(*)S
- 6030 V
- (17497)210 648 A
- (*===========================================================================*/)3276 1068 A
- 6120 V
- (17498)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (load_seg(fd,)504 1572 A
- (seg,)168 2118 A
- (seg_bytes))420 2328 A
- 6210 V
- (17499)210 648 A
- (int)126 1026 A
- (fd;)126 1194 A
- 2370(/*)S
- (file)168 2496 A
- (descriptor)420 2706 A
- 3168(to)S
- (read)168 3294 A
- (from)168 3504 A
- 3714(*/)S
- 8418 V
- EP
- %%Page: 243 243
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2098(File:)S
- 2331(src/mm/exec.c)S
- 12 B
- (243)180 4248 A
- 900 V
- 7 LST
- (17500)210 648 A
- (int)126 1026 A
- (seg;)168 1194 A
- 2370(/*)S
- 2496(T)S
- 2580(or)S
- 2706(D)S
- 2790(*/)S
- 990 V
- (17501)210 648 A
- (vir_bytes)378 1026 A