BOOK.PS
上传用户:jnzhq888
上传日期:2007-01-18
资源大小:51694k
文件大小:2328k
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (06315)210 648 A
- (cli)126 1362 A
- 2370(!)S
- (disable)294 2454 A
- (interrupts)420 2790 A
- 990 V
- (06316)210 648 A
- 1080 V
- (06317)210 648 A
- 1026(!)S
- (Fall)168 1110 A
- (into)168 1320 A
- (code)168 1530 A
- 1740(to)S
- (restart)294 1866 A
- (proc/task)378 2202 A
- (running.)336 2622 A
- 1170 V
- (06318)210 648 A
- 1260 V
- (06319)210 648 A
- (!*===========================================================================*)3276 1026 A
- 1350 V
- (06320)210 648 A
- 1026(!*)S
- (restart)294 2370 A
- 4260(*)S
- 1440 V
- (06321)210 648 A
- (!*===========================================================================*)3276 1026 A
- 1530 V
- (06322)210 648 A
- (_restart:)378 1026 A
- 1620 V
- (06323)210 648 A
- 1710 V
- (06324)210 648 A
- 1026(!)S
- (Flush)210 1110 A
- (any)126 1362 A
- (held-up)294 1530 A
- (interrupts.)462 1866 A
- 1800 V
- (06325)210 648 A
- 1026(!)S
- (This)168 1110 A
- (reenables)378 1320 A
- (interrupts,)462 1740 A
- 2244(so)S
- (the)126 2370 A
- (current)294 2538 A
- (interrupt)378 2874 A
- (handler)294 3294 A
- (may)126 3630 A
- (reenter.)336 3798 A
- 1890 V
- (06326)210 648 A
- 1026(!)S
- (This)168 1110 A
- (does)168 1320 A
- (not)126 1530 A
- (matter,)294 1698 A
- (because)294 2034 A
- (the)126 2370 A
- (current)294 2538 A
- (handler)294 2874 A
- 3210(is)S
- (about)210 3336 A
- 3588(to)S
- (exit)168 3714 A
- (and)126 3924 A
- 4092(no)S
- 1980 V
- (06327)210 648 A
- 1026(!)S
- (other)210 1110 A
- (handlers)336 1362 A
- (can)126 1740 A
- (reenter)294 1908 A
- (since)210 2244 A
- (flushing)336 2496 A
- 2874(is)S
- (only)168 3000 A
- (done)168 3210 A
- (when)168 3420 A
- (k_reenter)378 3630 A
- 4050(==)S
- 4176(0.)S
- 2070 V
- (06328)210 648 A
- 2160 V
- (06329)210 648 A
- (cmp)126 1362 A
- ((_held_head),)546 1698 A
- 2286(0)S
- 2370(!)S
- 2454(do)S
- (fast)168 2580 A
- (test)168 2790 A
- 3000(to)S
- (usually)294 3126 A
- (avoid)210 3462 A
- (function)336 3714 A
- (call)168 4092 A
- 2250 V
- (06330)210 648 A
- 1362(jz)S
- (over_call_unhold)672 1698 A
- 2340 V
- (06331)210 648 A
- (call)168 1362 A
- (_unhold)294 1698 A
- 2370(!)S
- (this)168 2454 A
- 2664(is)S
- (rare)168 2790 A
- 3000(so)S
- (overhead)336 3126 A
- (acceptable)420 3504 A
- 2430 V
- (06332)210 648 A
- (over_call_unhold:)714 1026 A
- 2520 V
- (06333)210 648 A
- (mov)126 1362 A
- (esp,)168 1698 A
- ((_proc_ptr))462 1908 A
- 2706(!)S
- (will)168 2790 A
- (assume)252 3000 A
- (P_STACKBASE)462 3294 A
- 3798(==)S
- 3924(0)S
- 2610 V
- (06334)210 648 A
- (lldt)168 1362 A
- (P_LDT_SEL(esp))588 1698 A
- 2706(!)S
- (enable)252 2790 A
- (segment)294 3084 A
- (descriptors)462 3420 A
- (for)126 3924 A
- (task)168 4092 A
- 2700 V
- (06335)210 648 A
- (lea)126 1362 A
- (eax,)168 1698 A
- (P_STACKTOP(esp))630 1908 A
- 2706(!)S
- (arrange)294 2790 A
- (for)126 3126 A
- (next)168 3294 A
- (interrupt)378 3504 A
- 2790 V
- (06336)210 648 A
- (mov)126 1362 A
- ((_tss+TSS3_S_SP0),)756 1698 A
- (eax)126 2496 A
- 2706(!)S
- 2790(to)S
- (save)168 2916 A
- (state)210 3126 A
- 3378(in)S
- (process)294 3504 A
- (table)210 3840 A
- 2880 V
- (06337)210 648 A
- (restart1:)378 1026 A
- 2970 V
- (06338)210 648 A
- (decb)168 1362 A
- ((_k_reenter))504 1698 A
- 3060 V
- (06339)210 648 A
- (o16)126 1194 A
- (pop)126 1362 A
- 1698(gs)S
- 3150 V
- (06340)210 648 A
- (o16)126 1194 A
- (pop)126 1362 A
- 1698(fs)S
- 3240 V
- (06341)210 648 A
- (o16)126 1194 A
- (pop)126 1362 A
- 1698(es)S
- 3330 V
- (06342)210 648 A
- (o16)126 1194 A
- (pop)126 1362 A
- 1698(ds)S
- 3420 V
- (06343)210 648 A
- (popad)210 1362 A
- 3510 V
- (06344)210 648 A
- (add)126 1362 A
- (esp,)168 1698 A
- 1908(4)S
- 2370(!)S
- (skip)168 2454 A
- (return)252 2664 A
- (adr)126 2958 A
- 3600 V
- (06345)210 648 A
- (iretd)210 1362 A
- 2370(!)S
- (continue)336 2454 A
- (process)294 2832 A
- 3690 V
- (06346)210 648 A
- 3780 V
- (06347)210 648 A
- (!*===========================================================================*)3276 1026 A
- 3870 V
- (06348)210 648 A
- 1026(!*)S
- (exception)378 2370 A
- (handlers)336 2790 A
- 4260(*)S
- 3960 V
- (06349)210 648 A
- (!*===========================================================================*)3276 1026 A
- 4050 V
- (06350)210 648 A
- (_divide_error:)588 1026 A
- 4140 V
- (06351)210 648 A
- (push)168 1362 A
- (DIVIDE_VECTOR)546 1698 A
- 4230 V
- (06352)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 4320 V
- (06353)210 648 A
- 4410 V
- (06354)210 648 A
- (_single_step_exception:)966 1026 A
- 4500 V
- (06355)210 648 A
- (push)168 1362 A
- (DEBUG_VECTOR)504 1698 A
- 4590 V
- (06356)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 4680 V
- (06357)210 648 A
- 4770 V
- (06358)210 648 A
- (_nmi:)210 1026 A
- 4860 V
- (06359)210 648 A
- (push)168 1362 A
- (NMI_VECTOR)420 1698 A
- 4950 V
- (06360)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 5040 V
- (06361)210 648 A
- 5130 V
- (06362)210 648 A
- (_breakpoint_exception:)924 1026 A
- 5220 V
- (06363)210 648 A
- (push)168 1362 A
- (BREAKPOINT_VECTOR)714 1698 A
- 5310 V
- (06364)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 5400 V
- (06365)210 648 A
- 5490 V
- (06366)210 648 A
- (_overflow:)420 1026 A
- 5580 V
- (06367)210 648 A
- (push)168 1362 A
- (OVERFLOW_VECTOR)630 1698 A
- 5670 V
- (06368)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 5760 V
- (06369)210 648 A
- 5850 V
- (06370)210 648 A
- (_bounds_check:)588 1026 A
- 5940 V
- (06371)210 648 A
- (push)168 1362 A
- (BOUNDS_VECTOR)546 1698 A
- 6030 V
- (06372)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 6120 V
- (06373)210 648 A
- 6210 V
- (06374)210 648 A
- (_inval_opcode:)588 1026 A
- 8418 V
- EP
- %%Page: 75 75
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 1970(File:)S
- (src/kernel/mpx386.s)902 2203 A
- 12 B
- 4308(75)S
- 900 V
- 7 LST
- (06375)210 648 A
- (push)168 1362 A
- (INVAL_OP_VECTOR)630 1698 A
- 990 V
- (06376)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 1080 V
- (06377)210 648 A
- 1170 V
- (06378)210 648 A
- (_copr_not_available:)840 1026 A
- 1260 V
- (06379)210 648 A
- (push)168 1362 A
- (COPROC_NOT_VECTOR)714 1698 A
- 1350 V
- (06380)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 1440 V
- (06381)210 648 A
- 1530 V
- (06382)210 648 A
- (_double_fault:)588 1026 A
- 1620 V
- (06383)210 648 A
- (push)168 1362 A
- (DOUBLE_FAULT_VECTOR)798 1698 A
- 1710 V
- (06384)210 648 A
- (jmp)126 1362 A
- (errexception)504 1698 A
- 1800 V
- (06385)210 648 A
- 1890 V
- (06386)210 648 A
- (_copr_seg_overrun:)756 1026 A
- 1980 V
- (06387)210 648 A
- (push)168 1362 A
- (COPROC_SEG_VECTOR)714 1698 A
- 2070 V
- (06388)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 2160 V
- (06389)210 648 A
- 2250 V
- (06390)210 648 A
- (_inval_tss:)462 1026 A
- 2340 V
- (06391)210 648 A
- (push)168 1362 A
- (INVAL_TSS_VECTOR)672 1698 A
- 2430 V
- (06392)210 648 A
- (jmp)126 1362 A
- (errexception)504 1698 A
- 2520 V
- (06393)210 648 A
- 2610 V
- (06394)210 648 A
- (_segment_not_present:)882 1026 A
- 2700 V
- (06395)210 648 A
- (push)168 1362 A
- (SEG_NOT_VECTOR)588 1698 A
- 2790 V
- (06396)210 648 A
- (jmp)126 1362 A
- (errexception)504 1698 A
- 2880 V
- (06397)210 648 A
- 2970 V
- (06398)210 648 A
- (_stack_exception:)714 1026 A
- 3060 V
- (06399)210 648 A
- (push)168 1362 A
- (STACK_FAULT_VECTOR)756 1698 A
- 3150 V
- (06400)210 648 A
- (jmp)126 1362 A
- (errexception)504 1698 A
- 3240 V
- (06401)210 648 A
- 3330 V
- (06402)210 648 A
- (_general_protection:)840 1026 A
- 3420 V
- (06403)210 648 A
- (push)168 1362 A
- (PROTECTION_VECTOR)714 1698 A
- 3510 V
- (06404)210 648 A
- (jmp)126 1362 A
- (errexception)504 1698 A
- 3600 V
- (06405)210 648 A
- 3690 V
- (06406)210 648 A
- (_page_fault:)504 1026 A
- 3780 V
- (06407)210 648 A
- (push)168 1362 A
- (PAGE_FAULT_VECTOR)714 1698 A
- 3870 V
- (06408)210 648 A
- (jmp)126 1362 A
- (errexception)504 1698 A
- 3960 V
- (06409)210 648 A
- 4050 V
- (06410)210 648 A
- (_copr_error:)504 1026 A
- 4140 V
- (06411)210 648 A
- (push)168 1362 A
- (COPROC_ERR_VECTOR)714 1698 A
- 4230 V
- (06412)210 648 A
- (jmp)126 1362 A
- (exception)378 1698 A
- 4320 V
- (06413)210 648 A
- 4410 V
- (06414)210 648 A
- (!*===========================================================================*)3276 1026 A
- 4500 V
- (06415)210 648 A
- 1026(!*)S
- (exception)378 2370 A
- 4260(*)S
- 4590 V
- (06416)210 648 A
- (!*===========================================================================*)3276 1026 A
- 4680 V
- (06417)210 648 A
- 1026(!)S
- (This)168 1110 A
- 1320(is)S
- (called)252 1446 A
- (for)126 1740 A
- (all)126 1908 A
- (exceptions)420 2076 A
- (which)210 2538 A
- 2790(do)S
- (not)126 2916 A
- (push)168 3084 A
- 3294(an)S
- (error)210 3420 A
- (code.)210 3672 A
- 4770 V
- (06418)210 648 A
- 4860 V
- (06419)210 648 A
- (.align)252 1362 A
- 1698(16)S
- 4950 V
- (06420)210 648 A
- (exception:)420 1026 A
- 5040 V
- (06421)210 648 A
- (sseg)168 1068 A
- (mov)126 1362 A
- ((trap_errno),)546 1698 A
- 2286(0)S
- 2706(!)S
- (clear)210 2790 A
- (trap_errno)420 3042 A
- 5130 V
- (06422)210 648 A
- (sseg)168 1068 A
- (pop)126 1362 A
- ((ex_number))462 1698 A
- 5220 V
- (06423)210 648 A
- (jmp)126 1362 A
- (exception1)420 1698 A
- 5310 V
- (06424)210 648 A
- 5400 V
- (06425)210 648 A
- (!*===========================================================================*)3276 1026 A
- 5490 V
- (06426)210 648 A
- 1026(!*)S
- (errexception)504 2370 A
- 4260(*)S
- 5580 V
- (06427)210 648 A
- (!*===========================================================================*)3276 1026 A
- 5670 V
- (06428)210 648 A
- 1026(!)S
- (This)168 1110 A
- 1320(is)S
- (called)252 1446 A
- (for)126 1740 A
- (all)126 1908 A
- (exceptions)420 2076 A
- (which)210 2538 A
- (push)168 2790 A
- 3000(an)S
- (error)210 3126 A
- (code.)210 3378 A
- 5760 V
- (06429)210 648 A
- 5850 V
- (06430)210 648 A
- (.align)252 1362 A
- 1698(16)S
- 5940 V
- (06431)210 648 A
- (errexception:)546 1026 A
- 6030 V
- (06432)210 648 A
- (sseg)168 1068 A
- (pop)126 1362 A
- ((ex_number))462 1698 A
- 6120 V
- (06433)210 648 A
- (sseg)168 1068 A
- (pop)126 1362 A
- ((trap_errno))504 1698 A
- 6210 V
- (06434)210 648 A
- (exception1:)462 1026 A
- 2706(!)S
- (Common)252 2790 A
- (for)126 3084 A
- (all)126 3252 A
- (exceptions.)462 3420 A
- 8418 V
- EP
- %%Page: 76 76
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(76)S
- 11 R
- 1970(File:)S
- (src/kernel/mpx386.s)902 2203 A
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (06435)210 648 A
- (push)168 1362 A
- (eax)126 1698 A
- 2706(!)S
- (eax)126 2790 A
- 2958(is)S
- (scratch)294 3084 A
- (register)336 3420 A
- 990 V
- (06436)210 648 A
- (mov)126 1362 A
- (eax,)168 1698 A
- (0+4(esp))336 1908 A
- 2706(!)S
- (old)126 2790 A
- (eip)126 2958 A
- 1080 V
- (06437)210 648 A
- (sseg)168 1068 A
- (mov)126 1362 A
- ((old_eip),)420 1698 A
- (eax)126 2160 A
- 1170 V
- (06438)210 648 A
- (movzx)210 1362 A
- (eax,)168 1698 A
- (4+4(esp))336 1908 A
- 2706(!)S
- (old)126 2790 A
- 2958(cs)S
- 1260 V
- (06439)210 648 A
- (sseg)168 1068 A
- (mov)126 1362 A
- ((old_cs),)378 1698 A
- (eax)126 2118 A
- 1350 V
- (06440)210 648 A
- (mov)126 1362 A
- (eax,)168 1698 A
- (8+4(esp))336 1908 A
- 2706(!)S
- (old)126 2790 A
- (eflags)252 2958 A
- 1440 V
- (06441)210 648 A
- (sseg)168 1068 A
- (mov)126 1362 A
- ((old_eflags),)546 1698 A
- (eax)126 2286 A
- 1530 V
- (06442)210 648 A
- (pop)126 1362 A
- (eax)126 1698 A
- 1620 V
- (06443)210 648 A
- (call)168 1362 A
- (save)168 1698 A
- 1710 V
- (06444)210 648 A
- (push)168 1362 A
- ((old_eflags))504 1698 A
- 1800 V
- (06445)210 648 A
- (push)168 1362 A
- ((old_cs))336 1698 A
- 1890 V
- (06446)210 648 A
- (push)168 1362 A
- ((old_eip))378 1698 A
- 1980 V
- (06447)210 648 A
- (push)168 1362 A
- ((trap_errno))504 1698 A
- 2070 V
- (06448)210 648 A
- (push)168 1362 A
- ((ex_number))462 1698 A
- 2160 V
- (06449)210 648 A
- (call)168 1362 A
- (_exception)420 1698 A
- 2706(!)S
- ((ex_number,)462 2790 A
- (trap_errno,)462 3294 A
- (old_eip,)336 3798 A
- 2250 V
- (06450)210 648 A
- 2706(!)S
- (old_cs,)294 3042 A
- (old_eflags))462 3378 A
- 2340 V
- (06451)210 648 A
- (add)126 1362 A
- (esp,)168 1698 A
- (5*4)126 1908 A
- 2430 V
- (06452)210 648 A
- (cli)126 1362 A
- 2520 V
- (06453)210 648 A
- (ret)126 1362 A
- 2610 V
- (06454)210 648 A
- 2700 V
- (06455)210 648 A
- (!*===========================================================================*)3276 1026 A
- 2790 V
- (06456)210 648 A
- 1026(!*)S
- (level0_call)462 2370 A
- 4260(*)S
- 2880 V
- (06457)210 648 A
- (!*===========================================================================*)3276 1026 A
- 2970 V
- (06458)210 648 A
- (_level0_call:)546 1026 A
- 3060 V
- (06459)210 648 A
- (call)168 1362 A
- (save)168 1698 A
- 3150 V
- (06460)210 648 A
- (jmp)126 1362 A
- ((_level0_func))588 1698 A
- 3240 V
- (06461)210 648 A
- 3330 V
- (06462)210 648 A
- (!*===========================================================================*)3276 1026 A
- 3420 V
- (06463)210 648 A
- 1026(!*)S
- (idle_task)378 2370 A
- 4260(*)S
- 3510 V
- (06464)210 648 A
- (!*===========================================================================*)3276 1026 A
- 3600 V
- (06465)210 648 A
- (_idle_task:)462 1026 A
- 2370(!)S
- (executed)336 2454 A
- (when)168 2832 A
- (there)210 3042 A
- 3294(is)S
- 3420(no)S
- (work)168 3546 A
- 3690 V
- (06466)210 648 A
- (jmp)126 1362 A
- (_idle_task)420 1698 A
- 2370(!)S
- 2454(a)S
- ("hlt")210 2538 A
- (before)252 2790 A
- (this)168 3084 A
- (fails)210 3294 A
- 3546(in)S
- (protected)378 3672 A
- (mode)168 4092 A
- 3780 V
- (06467)210 648 A
- 3870 V
- (06468)210 648 A
- (!*===========================================================================*)3276 1026 A
- 3960 V
- (06469)210 648 A
- 1026(!*)S
- (data)168 2370 A
- 4260(*)S
- 4050 V
- (06470)210 648 A
- (!*===========================================================================*)3276 1026 A
- 4140 V
- (06471)210 648 A
- 1026(!)S
- (These)210 1110 A
- (declarations)504 1362 A
- (assure)252 1908 A
- (that)168 2202 A
- (storage)294 2412 A
- (will)168 2748 A
- 2958(be)S
- (allocated)378 3084 A
- 3504(at)S
- (the)126 3630 A
- (very)168 3798 A
- 4230 V
- (06472)210 648 A
- 1026(!)S
- (beginning)378 1110 A
- 1530(of)S
- (the)126 1656 A
- (kernel)252 1824 A
- (data)168 2118 A
- (section,)336 2328 A
- 2706(so)S
- (the)126 2832 A
- (boot)168 3000 A
- (monitor)294 3210 A
- (can)126 3546 A
- 3714(be)S
- (easily)252 3840 A
- 4320 V
- (06473)210 648 A
- 1026(!)S
- (told)168 1110 A
- (how)126 1320 A
- 1488(to)S
- (patch)210 1614 A
- (these)210 1866 A
- (locations.)420 2118 A
- (Note)168 2580 A
- (that)168 2790 A
- (the)126 3000 A
- (magic)210 3168 A
- (number)252 3420 A
- 3714(is)S
- (put)126 3840 A
- 4410 V
- (06474)210 648 A
- 1026(!)S
- (here)168 1110 A
- 1320(by)S
- (the)126 1446 A
- (compiler,)378 1614 A
- (but)126 2034 A
- (will)168 2202 A
- 2412(be)S
- (read)168 2538 A
- (by,)126 2748 A
- (and)126 2916 A
- (then)168 3084 A
- (overwritten)462 3294 A
- (by,)126 3798 A
- 4500 V
- (06475)210 648 A
- 1026(!)S
- (the)126 1110 A
- (boot)168 1278 A
- (monitor.)336 1488 A
- (When)168 1866 A
- (the)126 2076 A
- (kernel)252 2244 A
- (starts)252 2538 A
- (the)126 2832 A
- (sizes)210 3000 A
- (array)210 3252 A
- (will)168 3504 A
- 3714(be)S
- 4590 V
- (06476)210 648 A
- 1026(!)S
- (found)210 1110 A
- (here,)210 1362 A
- 1614(as)S
- 1740(if)S
- 1866(it)S
- (had)126 1992 A
- (been)168 2160 A
- (initialized)462 2370 A
- 2874(by)S
- (the)126 3000 A
- (compiler.)378 3168 A
- 4680 V
- (06477)210 648 A
- 4770 V
- (06478)210 648 A
- (.sect)210 1026 A
- (.rom)168 1278 A
- 1698(!)S
- (Before)252 1782 A
- (the)126 2076 A
- (string)252 2244 A
- (table)210 2538 A
- (please)252 2790 A
- 4860 V
- (06479)210 648 A
- (_sizes:)294 1026 A
- 2370(!)S
- (sizes)210 2454 A
- 2706(of)S
- (kernel,)294 2832 A
- (mm,)126 3168 A
- 3336(fs)S
- (filled)252 3462 A
- 3756(in)S
- 3882(by)S
- (boot)168 4008 A
- 4950 V
- (06480)210 648 A
- (.data2)252 1362 A
- (0x526F)252 1698 A
- 2370(!)S
- (this)168 2454 A
- (must)168 2664 A
- 2874(be)S
- (the)126 3000 A
- (first)210 3168 A
- (data)168 3420 A
- (entry)210 3630 A
- ((magic)252 3882 A
- 4176(#))S
- 5040 V
- (06481)210 648 A
- (.space)252 1362 A
- (16*2*2-2)336 1698 A
- 2370(!)S
- (monitor)294 2454 A
- (uses)168 2790 A
- (previous)336 3000 A
- (word)168 3378 A
- (and)126 3588 A
- (this)168 3756 A
- (space)210 3966 A
- 5130 V
- (06482)210 648 A
- 2370(!)S
- (extra)210 2454 A
- (space)210 2706 A
- (allows)252 2958 A
- (for)126 3252 A
- (additional)420 3420 A
- (servers)294 3882 A
- 5220 V
- (06483)210 648 A
- (.sect)210 1026 A
- (.bss)168 1278 A
- 5310 V
- (06484)210 648 A
- (k_stack:)336 1026 A
- 5400 V
- (06485)210 648 A
- (.space)252 1362 A
- (K_STACK_BYTES)546 1698 A
- 2370(!)S
- (kernel)252 2454 A
- (stack)210 2748 A
- 5490 V
- (06486)210 648 A
- (k_stktop:)378 1026 A
- 2370(!)S
- (top)126 2454 A
- 2622(of)S
- (kernel)252 2748 A
- (stack)210 3042 A
- 5580 V
- (06487)210 648 A
- (.comm)210 1362 A
- (ex_number,)420 1698 A
- 2160(4)S
- 5670 V
- (06488)210 648 A
- (.comm)210 1362 A
- (trap_errno,)462 1698 A
- 2202(4)S
- 5760 V
- (06489)210 648 A
- (.comm)210 1362 A
- (old_eip,)336 1698 A
- 2076(4)S
- 5850 V
- (06490)210 648 A
- (.comm)210 1362 A
- (old_cs,)294 1698 A
- 2034(4)S
- 5940 V
- (06491)210 648 A
- (.comm)210 1362 A
- (old_eflags,)462 1698 A
- 2202(4)S
- 8418 V
- EP
- %%Page: 77 77
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2051(File:)S
- 2284(src/kernel/start.c)S
- 12 B
- 4308(77)S
- 990 V
- 7 LST
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1080 V
- (src/kernel/start.c)756 2034 A
- 1170 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1350 V
- (06500)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (the)126 1950 A
- 2118(C)S
- (startup)294 2202 A
- (code)168 2538 A
- (for)126 2748 A
- (Minix)210 2916 A
- 3168(on)S
- (Intel)210 3294 A
- (processors.)462 3546 A
- 1440 V
- (06501)210 648 A
- 1068(*)S
- 1152(It)S
- (cooperates)420 1278 A
- (with)168 1740 A
- (mpx.s)210 1950 A
- 2202(to)S
- (set)126 2328 A
- 2496(up)S
- 2622(a)S
- (good)168 2706 A
- (environment)462 2916 A
- (for)126 3420 A
- (main().)294 3588 A
- 1530 V
- (06502)210 648 A
- 1068(*)S
- 1620 V
- (06503)210 648 A
- 1068(*)S
- (This)168 1152 A
- (code)168 1362 A
- (runs)168 1572 A
- 1782(in)S
- (real)168 1908 A
- (mode)168 2118 A
- (for)126 2328 A
- 2496(a)S
- 2580(16)S
- (bit)126 2706 A
- (kernel)252 2874 A
- (and)126 3168 A
- (may)126 3336 A
- (have)168 3504 A
- 3714(to)S
- (switch)252 3840 A
- 1710 V
- (06504)210 648 A
- 1068(*)S
- 1152(to)S
- (protected)378 1278 A
- (mode)168 1698 A
- (for)126 1908 A
- 2076(a)S
- (286.)168 2160 A
- 1800 V
- (06505)210 648 A
- 1068(*)S
- 1890 V
- (06506)210 648 A
- 1068(*)S
- (For)126 1152 A
- 1320(a)S
- 1404(32)S
- (bit)126 1530 A
- (kernel)252 1698 A
- (this)168 1992 A
- (already)294 2202 A
- (runs)168 2538 A
- 2748(in)S
- (protected)378 2874 A
- (mode,)210 3294 A
- (but)126 3546 A
- (the)126 3714 A
- (selectors)378 3882 A
- 1980 V
- (06507)210 648 A
- 1068(*)S
- (are)126 1152 A
- (still)210 1320 A
- (those)210 1572 A
- (given)210 1824 A
- 2076(by)S
- (the)126 2202 A
- (BIOS)168 2370 A
- (with)168 2580 A
- (interrupts)420 2790 A
- (disabled,)378 3252 A
- 3672(so)S
- (the)126 3798 A
- 2070 V
- (06508)210 648 A
- 1068(*)S
- (descriptors)462 1152 A
- (need)168 1656 A
- 1866(to)S
- 1992(be)S
- (reloaded)336 2118 A
- (and)126 2496 A
- (interrupt)378 2664 A
- (descriptors)462 3084 A
- (made.)210 3588 A
- 2160 V
- (06509)210 648 A
- 1068(*/)S
- 2250 V
- (06510)210 648 A
- 2340 V
- (06511)210 648 A
- (#include)336 1026 A
- ("kernel.h")420 1404 A
- 2430 V
- (06512)210 648 A
- (#include)336 1026 A
- (<stdlib.h>)420 1404 A
- 2520 V
- (06513)210 648 A
- (#include)336 1026 A
- (<minix/boot.h>)588 1404 A
- 2610 V
- (06514)210 648 A
- (#include)336 1026 A
- ("protect.h")462 1404 A
- 2700 V
- (06515)210 648 A
- 2790 V
- (06516)210 648 A
- (PRIVATE)294 1026 A
- (char)168 1362 A
- (k_environ[256];)630 1572 A
- 2370(/*)S
- (environment)462 2496 A
- (strings)294 3000 A
- (passed)252 3336 A
- 3630(by)S
- (loader)252 3756 A
- 4050(*/)S
- 2880 V
- (06517)210 648 A
- 2970 V
- (06518)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (k_atoi,)294 2034 A
- ((char)210 2370 A
- (*s))126 2622 A
- 2790();)S
- 3060 V
- (06519)210 648 A
- 3150 V
- (06520)210 648 A
- 3240 V
- (06521)210 648 A
- (/*==========================================================================*)3234 1026 A
- 3330 V
- (06522)210 648 A
- 1068(*)S
- (cstart)252 2370 A
- 4218(*)S
- 3420 V
- (06523)210 648 A
- (*==========================================================================*/)3234 1068 A
- 3510 V
- (06524)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (cstart(cs,)420 1530 A
- (ds,)126 1992 A
- (mcs,)168 2160 A
- (mds,)168 2370 A
- (parmoff,)336 2580 A
- (parmsize))378 2958 A
- 3600 V
- (06525)210 648 A
- (U16_t)210 1026 A
- (cs,)126 1278 A
- (ds;)126 1446 A
- 2370(/*)S
- (Kernel)252 2496 A
- (code)168 2790 A
- (and)126 3000 A
- (data)168 3168 A
- (segment)294 3378 A
- 3714(*/)S
- 3690 V
- (06526)210 648 A
- (U16_t)210 1026 A
- (mcs,)168 1278 A
- (mds;)168 1488 A
- 2370(/*)S
- (Monitor)294 2496 A
- (code)168 2832 A
- (and)126 3042 A
- (data)168 3210 A
- (segment)294 3420 A
- 3756(*/)S
- 3780 V
- (06527)210 648 A
- (U16_t)210 1026 A
- (parmoff,)336 1278 A
- (parmsize;)378 1656 A
- 2370(/*)S
- (boot)168 2496 A
- (parameters)420 2706 A
- (offset)252 3168 A
- (and)126 3462 A
- (length)252 3630 A
- 3924(*/)S
- 3870 V
- (06528)210 648 A
- 1026({)S
- 3960 V
- (06529)210 648 A
- 1026(/*)S
- (Perform)294 1152 A
- (system)252 1488 A
- (initializations)630 1782 A
- (prior)210 2454 A
- 2706(to)S
- (calling)294 2832 A
- (main().)294 3168 A
- 3504(*/)S
- 4050 V
- (06530)210 648 A
- 4140 V
- (06531)210 648 A
- (register)336 1110 A
- (char)168 1488 A
- (*envp;)252 1698 A
- 4230 V
- (06532)210 648 A
- (phys_bytes)420 1110 A
- (mcode_base,)462 1572 A
- (mdata_base;)462 2076 A
- 4320 V
- (06533)210 648 A
- (unsigned)336 1110 A
- (mon_start;)420 1488 A
- 4410 V
- (06534)210 648 A
- 4500 V
- (06535)210 648 A
- 1110(/*)S
- (Record)252 1236 A
- (where)210 1530 A
- (the)126 1782 A
- (kernel)252 1950 A
- (and)126 2244 A
- (the)126 2412 A
- (monitor)294 2580 A
- (are.)168 2916 A
- 3126(*/)S
- 4590 V
- (06536)210 648 A
- (code_base)378 1110 A
- 1530(=)S
- (seg2phys(cs);)546 1614 A
- 4680 V
- (06537)210 648 A
- (data_base)378 1110 A
- 1530(=)S
- (seg2phys(ds);)546 1614 A
- 4770 V
- (06538)210 648 A
- (mcode_base)420 1110 A
- 1572(=)S
- (seg2phys(mcs);)588 1656 A
- 4860 V
- (06539)210 648 A
- (mdata_base)420 1110 A
- 1572(=)S
- (seg2phys(mds);)588 1656 A
- 4950 V
- (06540)210 648 A
- 5040 V
- (06541)210 648 A
- 1110(/*)S
- (Initialize)420 1236 A
- (protected)378 1698 A
- (mode)168 2118 A
- (descriptors.)504 2328 A
- 2874(*/)S
- 5130 V
- (06542)210 648 A
- (prot_init();)504 1110 A
- 5220 V
- (06543)210 648 A
- 5310 V
- (06544)210 648 A
- 1110(/*)S
- (Copy)168 1236 A
- (the)126 1446 A
- (boot)168 1614 A
- (parameters)420 1824 A
- 2286(to)S
- (kernel)252 2412 A
- (memory.)294 2706 A
- 3042(*/)S
- 5400 V
- (06545)210 648 A
- 1110(if)S
- ((parmsize)378 1236 A
- 1656(>)S
- (sizeof)252 1740 A
- (k_environ)378 2034 A
- 2454(-)S
- 2538(2))S
- (parmsize)336 2664 A
- 3042(=)S
- (sizeof)252 3126 A
- (k_environ)378 3420 A
- 3840(-)S
- 3924(2;)S
- 5490 V
- (06546)210 648 A
- (phys_copy(mdata_base)840 1110 A
- 1992(+)S
- (parmoff,)336 2076 A
- (vir2phys(k_environ),)840 2454 A
- ((phys_bytes))504 3336 A
- (parmsize);)420 3882 A
- 5580 V
- (06547)210 648 A
- 5670 V
- (06548)210 648 A
- 1110(/*)S
- (Convert)294 1236 A
- (important)378 1572 A
- (boot)168 1992 A
- (environment)462 2202 A
- (variables.)420 2706 A
- 3168(*/)S
- 5760 V
- (06549)210 648 A
- (boot_parameters.bp_rootdev)1092 1110 A
- 2244(=)S
- (k_atoi(k_getenv("rootdev"));)1176 2328 A
- 5850 V
- (06550)210 648 A
- (boot_parameters.bp_ramimagedev)1260 1110 A
- 2412(=)S
- (k_atoi(k_getenv("ramimagedev"));)1344 2496 A
- 5940 V
- (06551)210 648 A
- (boot_parameters.bp_ramsize)1092 1110 A
- 2244(=)S
- (k_atoi(k_getenv("ramsize"));)1176 2328 A
- 6030 V
- (06552)210 648 A
- (boot_parameters.bp_processor)1176 1110 A
- 2328(=)S
- (k_atoi(k_getenv("processor"));)1260 2412 A
- 6120 V
- (06553)210 648 A
- 6210 V
- (06554)210 648 A
- 1110(/*)S
- (Type)168 1236 A
- 1446(of)S
- (VDU:)168 1572 A
- 1782(*/)S
- 8418 V
- EP
- %%Page: 78 78
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(78)S
- 11 R
- 2051(File:)S
- 2284(src/kernel/start.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (06555)210 648 A
- (envp)168 1110 A
- 1320(=)S
- (k_getenv("video");)756 1404 A
- 990 V
- (06556)210 648 A
- 1110(if)S
- ((strcmp(envp,)546 1236 A
- ("ega"))252 1824 A
- 2118(==)S
- 2244(0))S
- (ega)126 2370 A
- 2538(=)S
- (TRUE;)210 2622 A
- 1080 V
- (06557)210 648 A
- 1110(if)S
- ((strcmp(envp,)546 1236 A
- ("vga"))252 1824 A
- 2118(==)S
- 2244(0))S
- (vga)126 2370 A
- 2538(=)S
- (ega)126 2622 A
- 2790(=)S
- (TRUE;)210 2874 A
- 1170 V
- (06558)210 648 A
- 1260 V
- (06559)210 648 A
- 1110(/*)S
- (Memory)252 1236 A
- (sizes:)252 1530 A
- 1824(*/)S
- 1350 V
- (06560)210 648 A
- (low_memsize)462 1110 A
- 1614(=)S
- (k_atoi(k_getenv("memsize"));)1176 1698 A
- 1440 V
- (06561)210 648 A
- (ext_memsize)462 1110 A
- 1614(=)S
- (k_atoi(k_getenv("emssize"));)1176 1698 A
- 1530 V
- (06562)210 648 A
- 1620 V
- (06563)210 648 A
- 1110(/*)S
- (Processor?)420 1236 A
- 1698(*/)S
- 1710 V
- (06564)210 648 A
- (processor)378 1110 A
- 1530(=)S
- (boot_parameters.bp_processor;)1218 1614 A
- 3042(/*)S
- (86,)126 3168 A
- (186,)168 3336 A
- (286,)168 3546 A
- (386,)168 3756 A
- (...)126 3966 A
- 4134(*/)S
- 1800 V
- (06565)210 648 A
- 1890 V
- (06566)210 648 A
- 1110(/*)S
- (XT,)126 1236 A
- 1404(AT)S
- 1530(or)S
- (MCA)126 1656 A
- (bus?)168 1824 A
- 2034(*/)S
- 1980 V
- (06567)210 648 A
- (envp)168 1110 A
- 1320(=)S
- (k_getenv("bus");)672 1404 A
- 2070 V
- (06568)210 648 A
- 1110(if)S
- ((envp)210 1236 A
- 1488(==)S
- (NIL_PTR)294 1614 A
- 1950(||)S
- (strcmp(envp,)504 2076 A
- ("at"))210 2622 A
- 2874(==)S
- 3000(0))S
- 3126({)S
- 2160 V
- (06569)210 648 A
- (pc_at)210 1362 A
- 1614(=)S
- (TRUE;)210 1698 A
- 2250 V
- (06570)210 648 A
- 1110(})S
- (else)168 1194 A
- 2340 V
- (06571)210 648 A
- 1110(if)S
- ((strcmp(envp,)546 1236 A
- ("mca"))252 1824 A
- 2118(==)S
- 2244(0))S
- 2370({)S
- 2430 V
- (06572)210 648 A
- (pc_at)210 1362 A
- 1614(=)S
- (ps_mca)252 1698 A
- 1992(=)S
- (TRUE;)210 2076 A
- 2520 V
- (06573)210 648 A
- 1110(})S
- 2610 V
- (06574)210 648 A
- 2700 V
- (06575)210 648 A
- 1110(/*)S
- (Decide)252 1236 A
- 1530(if)S
- (mode)168 1656 A
- 1866(is)S
- (protected.)420 1992 A
- 2454(*/)S
- 2790 V
- (06576)210 648 A
- (#if)126 1026 A
- (_WORD_SIZE)420 1194 A
- 1656(==)S
- 1782(2)S
- 2880 V
- (06577)210 648 A
- (protected_mode)588 1110 A
- 1740(=)S
- (processor)378 1824 A
- 2244(>=)S
- (286;)168 2370 A
- 2970 V
- (06578)210 648 A
- (#endif)252 1026 A
- 3060 V
- (06579)210 648 A
- 3150 V
- (06580)210 648 A
- 1110(/*)S
- 1236(Is)S
- (there)210 1362 A
- 1614(a)S
- (monitor)294 1698 A
- 2034(to)S
- (return)252 2160 A
- (to?)126 2454 A
- 2664(If)S
- 2790(so)S
- (then)168 2916 A
- (keep)168 3126 A
- 3336(it)S
- (safe.)210 3462 A
- 3714(*/)S
- 3240 V
- (06581)210 648 A
- 1110(if)S
- ((!protected_mode))714 1236 A
- (mon_return)420 1992 A
- 2454(=)S
- 2538(0;)S
- 3330 V
- (06582)210 648 A
- (mon_start)378 1110 A
- 1530(=)S
- (mcode_base)420 1614 A
- 2076(/)S
- (1024;)210 2160 A
- 3420 V
- (06583)210 648 A
- 1110(if)S
- ((mon_return)462 1236 A
- 1740(&&)S
- (low_memsize)462 1866 A
- 2370(>)S
- (mon_start))420 2454 A
- (low_memsize)462 2916 A
- 3420(=)S
- (mon_start;)420 3504 A
- 3510 V
- (06584)210 648 A
- 3600 V
- (06585)210 648 A
- 1110(/*)S
- (Return)252 1236 A
- 1530(to)S
- (assembler)378 1656 A
- (code)168 2076 A
- 2286(to)S
- (switch)252 2412 A
- 2706(to)S
- (protected)378 2832 A
- (mode)168 3252 A
- ((if)126 3462 A
- (286),)210 3630 A
- (reload)252 3882 A
- 3690 V
- (06586)210 648 A
- 1152(*)S
- (selectors)378 1236 A
- (and)126 1656 A
- (call)168 1824 A
- (main().)294 2034 A
- 3780 V
- (06587)210 648 A
- 1152(*/)S
- 3870 V
- (06588)210 648 A
- 1026(})S
- 4140 V
- (06591)210 648 A
- (/*==========================================================================*)3234 1026 A
- 4230 V
- (06592)210 648 A
- 1068(*)S
- (k_atoi)252 2370 A
- 4218(*)S
- 4320 V
- (06593)210 648 A
- (*==========================================================================*/)3234 1068 A
- 4410 V
- (06594)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (k_atoi(s))378 1530 A
- 4500 V
- (06595)210 648 A
- (register)336 1026 A
- (char)168 1404 A
- (*s;)126 1614 A
- 4590 V
- (06596)210 648 A
- 1026({)S
- 4680 V
- (06597)210 648 A
- 1026(/*)S
- (Convert)294 1152 A
- (string)252 1488 A
- 1782(to)S
- (integer.)336 1908 A
- 2286(*/)S
- 4770 V
- (06598)210 648 A
- 4860 V
- (06599)210 648 A
- (return)252 1110 A
- (strtol(s,)378 1404 A
- ((char)210 1824 A
- (**))126 2076 A
- (NULL,)210 2244 A
- (10);)168 2496 A
- 4950 V
- (06600)210 648 A
- 1026(})S
- 5220 V
- (06603)210 648 A
- (/*==========================================================================*)3234 1026 A
- 5310 V
- (06604)210 648 A
- 1068(*)S
- (k_getenv)336 2370 A
- 4218(*)S
- 5400 V
- (06605)210 648 A
- (*==========================================================================*/)3234 1068 A
- 5490 V
- (06606)210 648 A
- (PUBLIC)252 1026 A
- (char)168 1320 A
- (*k_getenv(name))630 1530 A
- 5580 V
- (06607)210 648 A
- (char)168 1026 A
- (*name;)252 1236 A
- 5670 V
- (06608)210 648 A
- 1026({)S
- 5760 V
- (06609)210 648 A
- 1026(/*)S
- (Get)126 1152 A
- (environment)462 1320 A
- (value)210 1824 A
- 2076(-)S
- (kernel)252 2160 A
- (version)294 2454 A
- 2790(of)S
- (getenv)252 2916 A
- 3210(to)S
- (avoid)210 3336 A
- (setting)294 3588 A
- 3924(up)S
- (the)126 4050 A
- 5850 V
- (06610)210 648 A
- 1068(*)S
- (usual)210 1152 A
- (environment)462 1404 A
- (array.)252 1908 A
- 5940 V
- (06611)210 648 A
- 1068(*/)S
- 6030 V
- (06612)210 648 A
- 6120 V
- (06613)210 648 A
- (register)336 1110 A
- (char)168 1488 A
- (*namep;)294 1698 A
- 6210 V
- (06614)210 648 A
- (register)336 1110 A
- (char)168 1488 A
- (*envp;)252 1698 A
- 8418 V
- EP
- %%Page: 79 79
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2051(File:)S
- 2284(src/kernel/start.c)S
- 12 B
- 4308(79)S
- 900 V
- 7 LST
- (06615)210 648 A
- 990 V
- (06616)210 648 A
- (for)126 1110 A
- ((envp)210 1278 A
- 1530(=)S
- (k_environ;)420 1614 A
- (*envp)210 2076 A
- 2328(!=)S
- (0;))126 2454 A
- 2622({)S
- 1080 V
- (06617)210 648 A
- (for)126 1362 A
- ((namep)252 1530 A
- 1824(=)S
- (name;)210 1908 A
- (*namep)252 2160 A
- 2454(!=)S
- 2580(0)S
- 2664(&&)S
- (*namep)252 2790 A
- 3084(==)S
- (*envp;)252 3210 A
- (namep++,)336 3504 A
- (envp++))294 3882 A
- 1170 V
- (06618)210 648 A
- 1698(;)S
- 1260 V
- (06619)210 648 A
- 1362(if)S
- ((*namep)294 1488 A
- 1824(==)S
- ('\0')168 1950 A
- 2160(&&)S
- (*envp)210 2286 A
- 2538(==)S
- ('='))168 2664 A
- (return(envp)462 2874 A
- 3378(+)S
- (1);)126 3462 A
- 1350 V
- (06620)210 648 A
- (while)210 1362 A
- ((*envp++)336 1614 A
- 1992(!=)S
- 2118(0))S
- 1440 V
- (06621)210 648 A
- 1698(;)S
- 1530 V
- (06622)210 648 A
- 1110(})S
- 1620 V
- (06623)210 648 A
- (return(NIL_PTR);)672 1110 A
- 1710 V
- (06624)210 648 A
- 1026(})S
- 2340 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 2430 V
- (src/kernel/main.c)714 2034 A
- 2520 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 2700 V
- (06700)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
- (MINIX.)252 2790 A
- (The)126 3126 A
- (routine)294 3294 A
- (main())252 3630 A
- 2790 V
- (06701)210 648 A
- 1068(*)S
- (initializes)462 1152 A
- (the)126 1656 A
- (system)252 1824 A
- (and)126 2118 A
- (starts)252 2286 A
- (the)126 2580 A
- (ball)168 2748 A
- (rolling)294 2958 A
- 3294(by)S
- (setting)294 3420 A
- 3756(up)S
- (the)126 3882 A
- (proc)168 4050 A
- 2880 V
- (06702)210 648 A
- 1068(*)S
- (table,)252 1152 A
- (interrupt)378 1446 A
- (vectors,)336 1866 A
- (and)126 2244 A
- (scheduling)420 2412 A
- (each)168 2874 A
- (task)168 3084 A
- 3294(to)S
- (run)126 3420 A
- 3588(to)S
- (initialize)420 3714 A
- 2970 V
- (06703)210 648 A
- 1068(*)S
- (itself.)294 1152 A
- 3060 V
- (06704)210 648 A
- 1068(*)S
- 3150 V
- (06705)210 648 A
- 1068(*)S
- (The)126 1152 A
- (entries)294 1320 A
- (into)168 1656 A
- (this)168 1866 A
- (file)168 2076 A
- (are:)168 2286 A
- 3240 V
- (06706)210 648 A
- 1068(*)S
- (main:)210 1236 A
- (MINIX)210 2034 A
- (main)168 2286 A
- (program)294 2496 A
- 3330 V
- (06707)210 648 A
- 1068(*)S
- (panic:)252 1236 A
- (abort)210 2034 A
- (MINIX)210 2286 A
- (due)126 2538 A
- 2706(to)S
- 2832(a)S
- (fatal)210 2916 A
- (error)210 3168 A
- 3420 V
- (06708)210 648 A
- 1068(*/)S
- 3510 V
- (06709)210 648 A
- 3600 V
- (06710)210 648 A
- (#include)336 1026 A
- ("kernel.h")420 1404 A
- 3690 V
- (06711)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 3780 V
- (06712)210 648 A
- (#include)336 1026 A
- (<unistd.h>)420 1404 A
- 3870 V
- (06713)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 3960 V
- (06714)210 648 A
- (#include)336 1026 A
- (<minix/com.h>)546 1404 A
- 4050 V
- (06715)210 648 A
- (#include)336 1026 A
- ("proc.h")336 1404 A
- 4140 V
- (06716)210 648 A
- 4230 V
- (06717)210 648 A
- 4320 V
- (06718)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4410 V
- (06719)210 648 A
- 1068(*)S
- (main)168 2580 A
- 4260(*)S
- 4500 V
- (06720)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4590 V
- (06721)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (main())252 1530 A
- 4680 V
- (06722)210 648 A
- 1026({)S
- 4770 V
- (06723)210 648 A
- 1026(/*)S
- (Start)210 1152 A
- (the)126 1404 A
- (ball)168 1572 A
- (rolling.)336 1782 A
- 2160(*/)S
- 4860 V
- (06724)210 648 A
- 4950 V
- (06725)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*rp;)168 1992 A
- 5040 V
- (06726)210 648 A
- (register)336 1110 A
- (int)126 1488 A
- 1656(t;)S
- 5130 V
- (06727)210 648 A
- (int)126 1110 A
- (sizeindex;)420 1278 A
- 5220 V
- (06728)210 648 A
- (phys_clicks)462 1110 A
- (text_base;)420 1614 A
- 5310 V
- (06729)210 648 A
- (vir_clicks)420 1110 A
- (text_clicks;)504 1572 A
- 5400 V
- (06730)210 648 A
- (vir_clicks)420 1110 A
- (data_clicks;)504 1572 A
- 5490 V
- (06731)210 648 A
- (phys_bytes)420 1110 A
- (phys_b;)294 1572 A
- 5580 V
- (06732)210 648 A
- (reg_t)210 1110 A
- (ktsb;)210 1362 A
- 2370(/*)S
- (kernel)252 2496 A
- (task)168 2790 A
- (stack)210 3000 A
- (base)168 3252 A
- 3462(*/)S
- 5670 V
- (06733)210 648 A
- (struct)252 1110 A
- (memory)252 1404 A
- (*memp;)252 1698 A
- 5760 V
- (06734)210 648 A
- (struct)252 1110 A
- (tasktab)294 1404 A
- (*ttp;)210 1740 A
- 5850 V
- (06735)210 648 A
- 5940 V
- (06736)210 648 A
- 1110(/*)S
- (Initialize)420 1236 A
- (the)126 1698 A
- (interrupt)378 1866 A
- (controller.)462 2286 A
- 2790(*/)S
- 6030 V
- (06737)210 648 A
- (intr_init(1);)546 1110 A
- 6120 V
- (06738)210 648 A
- 6210 V
- (06739)210 648 A
- 1110(/*)S
- (Interpret)378 1236 A
- (memory)252 1656 A
- (sizes.)252 1950 A
- 2244(*/)S
- 8418 V
- EP
- %%Page: 80 80
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(80)S
- 11 R
- 2036(File:)S
- 2269(src/kernel/main.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (06740)210 648 A
- (mem_init();)462 1110 A
- 990 V
- (06741)210 648 A
- 1080 V
- (06742)210 648 A
- 1110(/*)S
- (Clear)210 1236 A
- (the)126 1488 A
- (process)294 1656 A
- (table.)252 1992 A
- 1170 V
- (06743)210 648 A
- 1152(*)S
- (Set)126 1236 A
- 1404(up)S
- (mappings)336 1530 A
- (for)126 1908 A
- (proc_addr())462 2076 A
- (and)126 2580 A
- (proc_number())546 2748 A
- (macros.)294 3336 A
- 1260 V
- (06744)210 648 A
- 1152(*/)S
- 1350 V
- (06745)210 648 A
- (for)126 1110 A
- ((rp)126 1278 A
- 1446(=)S
- (BEG_PROC_ADDR,)588 1530 A
- 2160(t)S
- 2244(=)S
- (-NR_TASKS;)420 2328 A
- 2790(rp)S
- 2916(<)S
- (END_PROC_ADDR;)588 3000 A
- (++rp,)210 3630 A
- (++t))168 3882 A
- 4092({)S
- 1440 V
- (06746)210 648 A
- (rp->p_flags)462 1362 A
- 1866(=)S
- (P_SLOT_FREE;)504 1950 A
- 1530 V
- (06747)210 648 A
- (rp->p_nr)336 1362 A
- 1740(=)S
- 1824(t;)S
- 2370(/*)S
- (proc)168 2496 A
- (number)252 2706 A
- (from)168 3000 A
- (ptr)126 3210 A
- 3378(*/)S
- 1620 V
- (06748)210 648 A
- ((pproc_addr)462 1362 A
- 1866(+)S
- (NR_TASKS)[t])504 1950 A
- 2496(=)S
- (rp;)126 2580 A
- 3042(/*)S
- (proc)168 3168 A
- (ptr)126 3378 A
- (from)168 3546 A
- (number)252 3756 A
- 4050(*/)S
- 1710 V
- (06749)210 648 A
- 1110(})S
- 1800 V
- (06750)210 648 A
- 1890 V
- (06751)210 648 A
- 1110(/*)S
- (Set)126 1236 A
- 1404(up)S
- (proc)168 1530 A
- (table)210 1740 A
- (entries)294 1992 A
- (for)126 2328 A
- (tasks)210 2496 A
- (and)126 2748 A
- (servers.)336 2916 A
- (The)126 3336 A
- (stacks)252 3504 A
- 3798(of)S
- (the)126 3924 A
- 1980 V
- (06752)210 648 A
- 1152(*)S
- (kernel)252 1236 A
- (tasks)210 1530 A
- (are)126 1782 A
- (initialized)462 1950 A
- 2454(to)S
- 2580(an)S
- (array)210 2706 A
- 2958(in)S
- (data)168 3084 A
- (space.)252 3294 A
- (The)126 3630 A
- (stacks)252 3798 A
- 2070 V
- (06753)210 648 A
- 1152(*)S
- 1236(of)S
- (the)126 1362 A
- (servers)294 1530 A
- (have)168 1866 A
- (been)168 2076 A
- (added)210 2286 A
- 2538(to)S
- (the)126 2664 A
- (data)168 2832 A
- (segment)294 3042 A
- 3378(by)S
- (the)126 3504 A
- (monitor,)336 3672 A
- 4050(so)S
- 2160 V
- (06754)210 648 A
- 1152(*)S
- (the)126 1236 A
- (stack)210 1404 A
- (pointer)294 1656 A
- 1992(is)S
- (set)126 2118 A
- 2286(to)S
- (the)126 2412 A
- (end)126 2580 A
- 2748(of)S
- (the)126 2874 A
- (data)168 3042 A
- (segment.)336 3252 A
- (All)126 3672 A
- (the)126 3840 A
- 2250 V
- (06755)210 648 A
- 1152(*)S
- (processes)378 1236 A
- (are)126 1656 A
- 1824(in)S
- (low)126 1950 A
- (memory)252 2118 A
- 2412(on)S
- (the)126 2538 A
- (8086.)210 2706 A
- 3000(On)S
- (the)126 3126 A
- (386)126 3294 A
- (only)168 3462 A
- (the)126 3672 A
- (kernel)252 3840 A
- 2340 V
- (06756)210 648 A
- 1152(*)S
- 1236(is)S
- 1362(in)S
- (low)126 1488 A
- (memory,)294 1656 A
- (the)126 1992 A
- (rest)168 2160 A
- 2370(if)S
- (loaded)252 2496 A
- 2790(in)S
- (extended)336 2916 A
- (memory.)294 3294 A
- 2430 V
- (06757)210 648 A
- 1152(*/)S
- 2520 V
- (06758)210 648 A
- 2610 V
- (06759)210 648 A
- 1110(/*)S
- (Task)168 1236 A
- (stacks.)294 1446 A
- 1782(*/)S
- 2700 V
- (06760)210 648 A
- (ktsb)168 1110 A
- 1320(=)S
- ((reg_t))294 1404 A
- (t_stack;)336 1740 A
- 2790 V
- (06761)210 648 A
- 2880 V
- (06762)210 648 A
- (for)126 1110 A
- 1278((t)S
- 1404(=)S
- (-NR_TASKS;)420 1488 A
- 1950(t)S
- 2034(<=)S
- (LOW_USER;)378 2160 A
- (++t))168 2580 A
- 2790({)S
- 2970 V
- (06763)210 648 A
- 1362(rp)S
- 1488(=)S
- (proc_addr(t);)546 1572 A
- 3042(/*)S
- (t's)126 3168 A
- (process)294 3336 A
- (slot)168 3672 A
- 3882(*/)S
- 3060 V
- (06764)210 648 A
- (ttp)126 1362 A
- 1530(=)S
- (&tasktab[t)420 1614 A
- 2076(+)S
- (NR_TASKS];)420 2160 A
- 3042(/*)S
- (t's)126 3168 A
- (task)168 3336 A
- (attributes)420 3546 A
- 4008(*/)S
- 3150 V
- (06765)210 648 A
- (strcpy(rp->p_name,)756 1362 A
- (ttp->name);)462 2160 A
- 3240 V
- (06766)210 648 A
- 1362(if)S
- 1488((t)S
- 1614(<)S
- 1698(0))S
- 1824({)S
- 3330 V
- (06767)210 648 A
- 1698(if)S
- ((ttp->stksize)546 1824 A
- 2412(>)S
- 2496(0))S
- 2622({)S
- 3420 V
- (06768)210 648 A
- (rp->p_stguard)546 2034 A
- 2622(=)S
- ((reg_t)252 2706 A
- 3000(*))S
- (ktsb;)210 3126 A
- 3510 V
- (06769)210 648 A
- (*rp->p_stguard)588 2034 A
- 2664(=)S
- (STACK_GUARD;)504 2748 A
- 3600 V
- (06770)210 648 A
- 1698(})S
- 3690 V
- (06771)210 648 A
- (ktsb)168 1698 A
- 1908(+=)S
- (ttp->stksize;)546 2034 A
- 3780 V
- (06772)210 648 A
- (rp->p_reg.sp)504 1698 A
- 2244(=)S
- (ktsb;)210 2328 A
- 3870 V
- (06773)210 648 A
- (text_base)378 1698 A
- 2118(=)S
- (code_base)378 2202 A
- 2622(>>)S
- (CLICK_SHIFT;)504 2748 A
- 3960 V
- (06774)210 648 A
- 2706(/*)S
- (tasks)210 2832 A
- (are)126 3084 A
- (all)126 3252 A
- 3420(in)S
- (the)126 3546 A
- (kernel)252 3714 A
- 4008(*/)S
- 4050 V
- (06775)210 648 A
- (sizeindex)378 1698 A
- 2118(=)S
- 2202(0;)S
- 2706(/*)S
- (and)126 2832 A
- (use)126 3000 A
- (the)126 3168 A
- (full)168 3336 A
- (kernel)252 3546 A
- (sizes)210 3840 A
- 4092(*/)S
- 4140 V
- (06776)210 648 A
- (memp)168 1698 A
- 1908(=)S
- (&mem[0];)336 1992 A
- 2706(/*)S
- (remove)252 2832 A
- (from)168 3126 A
- (this)168 3336 A
- (memory)252 3546 A
- (chunk)210 3840 A
- 4092(*/)S
- 4230 V
- (06777)210 648 A
- 1362(})S
- (else)168 1446 A
- 1656({)S
- 4320 V
- (06778)210 648 A
- (sizeindex)378 1698 A
- 2118(=)S
- 2202(2)S
- 2286(*)S
- 2370(t)S
- 2454(+)S
- 2538(2;)S
- 2706(/*)S
- (MM,)126 2832 A
- (FS,)126 3000 A
- (INIT)168 3168 A
- (have)168 3378 A
- (their)210 3588 A
- (own)126 3840 A
- (sizes)210 4008 A
- 4260(*/)S
- 4410 V
- (06779)210 648 A
- 1362(})S
- 4500 V
- (06780)210 648 A
- (rp->p_reg.pc)504 1362 A
- 1908(=)S
- ((reg_t))294 1992 A
- (ttp->initial_pc;)672 2328 A
- 4590 V
- (06781)210 648 A
- (rp->p_reg.psw)546 1362 A
- 1950(=)S
- (istaskp(rp))462 2034 A
- 2538(?)S
- (INIT_TASK_PSW)546 2622 A
- 3210(:)S
- (INIT_PSW;)378 3294 A
- 4680 V
- (06782)210 648 A
- 4770 V
- (06783)210 648 A
- (text_clicks)462 1362 A
- 1866(=)S
- (sizes[sizeindex];)714 1950 A
- 4860 V
- (06784)210 648 A
- (data_clicks)462 1362 A
- 1866(=)S
- (sizes[sizeindex)630 1950 A
- 2622(+)S
- (1];)126 2706 A
- 4950 V
- (06785)210 648 A
- (rp->p_map[T].mem_phys)882 1362 A
- 2286(=)S
- (text_base;)420 2370 A
- 5040 V
- (06786)210 648 A
- (rp->p_map[T].mem_len)840 1362 A
- 2286(=)S
- (text_clicks;)504 2370 A
- 5130 V
- (06787)210 648 A
- (rp->p_map[D].mem_phys)882 1362 A
- 2286(=)S
- (text_base)378 2370 A
- 2790(+)S
- (text_clicks;)504 2874 A
- 5220 V
- (06788)210 648 A
- (rp->p_map[D].mem_len)840 1362 A
- 2286(=)S
- (data_clicks;)504 2370 A
- 5310 V
- (06789)210 648 A
- (rp->p_map[S].mem_phys)882 1362 A
- 2286(=)S
- (text_base)378 2370 A
- 2790(+)S
- (text_clicks)462 2874 A
- 3378(+)S
- (data_clicks;)504 3462 A
- 5400 V
- (06790)210 648 A
- (rp->p_map[S].mem_vir)840 1362 A
- 2286(=)S
- (data_clicks;)504 2370 A
- 3042(/*)S
- (empty)210 3168 A
- 3420(-)S
- (stack)210 3504 A
- 3756(is)S
- 3882(in)S
- (data)168 4008 A
- 4218(*/)S
- 5490 V
- (06791)210 648 A
- (text_base)378 1362 A
- 1782(+=)S
- (text_clicks)462 1908 A
- 2412(+)S
- (data_clicks;)504 2496 A
- 3042(/*)S
- (ready)210 3168 A
- (for)126 3420 A
- (next,)210 3588 A
- 3840(if)S
- (server)252 3966 A
- 4260(*/)S
- 5580 V
- (06792)210 648 A
- (memp->size)420 1362 A
- 1824(-=)S
- ((text_base)420 1950 A
- 2412(-)S
- (memp->base);)504 2496 A
- 5670 V
- (06793)210 648 A
- (memp->base)420 1362 A
- 1824(=)S
- (text_base;)420 1908 A
- 3042(/*)S
- (memory)252 3168 A
- 3462(no)S
- (longer)252 3588 A
- (free)168 3882 A
- 4092(*/)S
- 5760 V
- (06794)210 648 A
- 5850 V
- (06795)210 648 A
- 1362(if)S
- 1488((t)S
- 1614(>=)S
- 1740(0))S
- 1866({)S
- 5940 V
- (06796)210 648 A
- 1698(/*)S
- (Initialize)420 1824 A
- (the)126 2286 A
- (server)252 2454 A
- (stack)210 2748 A
- (pointer.)336 3000 A
- (Take)168 3420 A
- 3630(it)S
- (down)168 3756 A
- (one)126 3966 A
- (word)168 4134 A
- 6030 V
- (06797)210 648 A
- 1740(*)S
- 1824(to)S
- (give)168 1950 A
- (crtso.s)294 2160 A
- (something)378 2496 A
- 2916(to)S
- (use)126 3042 A
- 3210(as)S
- ("argc".)294 3336 A
- 6120 V
- (06798)210 648 A
- 1740(*/)S
- 6210 V
- (06799)210 648 A
- (rp->p_reg.sp)504 1698 A
- 2244(=)S
- ((rp->p_map[S].mem_vir)882 2328 A
- 3252(+)S
- 8418 V
- EP
- %%Page: 81 81
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2036(File:)S
- 2269(src/kernel/main.c)S
- 12 B
- 4308(81)S
- 900 V
- 7 LST
- (06800)210 648 A
- (rp->p_map[S].mem_len))882 2370 A
- 3294(<<)S
- (CLICK_SHIFT;)504 3420 A
- 990 V
- (06801)210 648 A
- (rp->p_reg.sp)504 1698 A
- 2244(-=)S
- (sizeof(reg_t);)588 2370 A
- 1080 V
- (06802)210 648 A
- 1362(})S
- 1170 V
- (06803)210 648 A
- 1260 V
- (06804)210 648 A
- (#if)126 1026 A
- (_WORD_SIZE)420 1194 A
- 1656(==)S
- 1782(4)S
- 1350 V
- (06805)210 648 A
- 1362(/*)S
- (Servers)294 1488 A
- (are)126 1824 A
- (loaded)252 1992 A
- 2286(in)S
- (extended)336 2412 A
- (memory)252 2790 A
- 3084(if)S
- 3210(in)S
- (386)126 3336 A
- (mode.)210 3504 A
- 3756(*/)S
- 1440 V
- (06806)210 648 A
- 1362(if)S
- 1488((t)S
- 1614(<)S
- 1698(0))S
- 1824({)S
- 1530 V
- (06807)210 648 A
- (memp)168 1698 A
- 1908(=)S
- (&mem[1];)336 1992 A
- 1620 V
- (06808)210 648 A
- (text_base)378 1698 A
- 2118(=)S
- (0x100000)336 2202 A
- 2580(>>)S
- (CLICK_SHIFT;)504 2706 A
- 1710 V
- (06809)210 648 A
- 1362(})S
- 1800 V
- (06810)210 648 A
- (#endif)252 1026 A
- 1890 V
- (06811)210 648 A
- 1362(if)S
- ((!isidlehardware(t)))840 1488 A
- (lock_ready(rp);)630 2370 A
- 3042(/*)S
- (IDLE,)210 3168 A
- (HARDWARE)336 3420 A
- (neveready)378 3798 A
- 4218(*/)S
- 1980 V
- (06812)210 648 A
- (rp->p_flags)462 1362 A
- 1866(=)S
- 1950(0;)S
- 2070 V
- (06813)210 648 A
- 2160 V
- (06814)210 648 A
- (alloc_segments(rp);)798 1362 A
- 2250 V
- (06815)210 648 A
- 1110(})S
- 2340 V
- (06816)210 648 A
- 2430 V
- (06817)210 648 A
- (proc[NR_TASKS+INIT_PROC_NR].p_pid)1386 1110 A
- 2538(=)S
- (1;/*)168 2622 A
- (INIT)168 2832 A
- 3042(of)S
- (course)252 3168 A
- (has)126 3462 A
- (pid)126 3630 A
- 3798(1)S
- 3882(*/)S
- 2520 V
- (06818)210 648 A
- (bill_ptr)336 1110 A
- 1488(=)S
- (proc_addr(IDLE);)672 1572 A
- 2706(/*)S
- 2832(it)S
- (has)126 2958 A
- 3126(to)S
- (point)210 3252 A
- (somewhere)378 3504 A
- 3924(*/)S
- 2610 V
- (06819)210 648 A
- (lock_pick_proc();)714 1110 A
- 2700 V
- (06820)210 648 A
- 2790 V
- (06821)210 648 A
- 1110(/*)S
- (Now)126 1236 A
- 1404(go)S
- 1530(to)S
- (the)126 1656 A
- (assembly)336 1824 A
- (code)168 2202 A
- 2412(to)S
- (start)210 2538 A
- (running)294 2790 A
- (the)126 3126 A
- (current)294 3294 A
- (process.)336 3630 A
- 4008(*/)S
- 2880 V
- (06822)210 648 A
- (restart();)420 1110 A
- 2970 V
- (06823)210 648 A
- 1026(})S
- 3240 V
- (06826)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3330 V
- (06827)210 648 A
- 1068(*)S
- (panic)210 2580 A
- 4260(*)S
- 3420 V
- (06828)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3510 V
- (06829)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (panic(s,n))420 1530 A
- 3600 V
- (06830)210 648 A
- (_CONST)252 1026 A
- (char)168 1320 A
- (*s;)126 1530 A
- 3690 V
- (06831)210 648 A
- (int)126 1026 A
- 1194(n;)S
- 3780 V
- (06832)210 648 A
- 1026({)S
- 3870 V
- (06833)210 648 A
- 1026(/*)S
- (The)126 1152 A
- (system)252 1320 A
- (has)126 1614 A
- (run)126 1782 A
- (aground)294 1950 A
- 2286(of)S
- 2412(a)S
- (fatal)210 2496 A
- (error.)252 2748 A
- (Terminate)378 3084 A
- (execution.)420 3504 A
- 3960 V
- (06834)210 648 A
- 1068(*)S
- 1152(If)S
- (the)126 1278 A
- (panic)210 1446 A
- (originated)420 1698 A
- 2160(in)S
- 2286(MM)S
- 2412(or)S
- (FS,)126 2538 A
- (the)126 2706 A
- (string)252 2874 A
- (will)168 3168 A
- 3378(be)S
- (empty)210 3504 A
- (and)126 3756 A
- (the)126 3924 A
- 4050 V
- (06835)210 648 A
- 1068(*)S
- (file)168 1152 A
- (system)252 1362 A
- (already)294 1656 A
- (syncked.)336 1992 A
- 2412(If)S
- (the)126 2538 A
- (panic)210 2706 A
- (originates)420 2958 A
- 3420(in)S
- (the)126 3546 A
- (kernel,)294 3714 A
- 4050(we)S
- (are)126 4176 A
- 4140 V
- (06836)210 648 A
- 1068(*)S
- (kind)168 1152 A
- 1362(of)S
- (stuck.)252 1488 A
- 4230 V
- (06837)210 648 A
- 1068(*/)S
- 4320 V
- (06838)210 648 A
- 4410 V
- (06839)210 648 A
- 1110(if)S
- ((*s)126 1236 A
- 1404(!=)S
- 1530(0))S
- 1656({)S
- 4500 V
- (06840)210 648 A
- (printf("\nKernel)672 1362 A
- (panic:)252 2076 A
- (%s",s);)294 2370 A
- 4590 V
- (06841)210 648 A
- 1362(if)S
- 1488((n)S
- 1614(!=)S
- (NO_NUM))294 1740 A
- (printf(")336 2076 A
- (%d",)168 2454 A
- (n);)126 2664 A
- 4680 V
- (06842)210 648 A
- (printf("\n");)546 1362 A
- 4770 V
- (06843)210 648 A
- 1110(})S
- 4860 V
- (06844)210 648 A
- (wreboot(RBT_PANIC);)798 1110 A
- 4950 V
- (06845)210 648 A
- 1026(})S
- 8418 V
- EP
- %%Page: 82 82
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(82)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 990 V
- 7 LST
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1080 V
- (src/kernel/proc.c)714 2034 A
- 1170 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1350 V
- (06900)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (essentially)462 1950 A
- (all)126 2454 A
- 2622(of)S
- (the)126 2748 A
- (process)294 2916 A
- (and)126 3252 A
- (message)294 3420 A
- (handling.)378 3756 A
- 1440 V
- (06901)210 648 A
- 1068(*)S
- 1152(It)S
- (has)126 1278 A
- (two)126 1446 A
- (main)168 1614 A
- (entry)210 1824 A
- (points)252 2076 A
- (from)168 2370 A
- (the)126 2580 A
- (outside:)336 2748 A
- 1530 V
- (06902)210 648 A
- 1068(*)S
- 1620 V
- (06903)210 648 A
- 1068(*)S
- (sys_call:)378 1236 A
- (called)252 1740 A
- (when)168 2034 A
- 2244(a)S
- (process)294 2328 A
- 2664(or)S
- (task)168 2790 A
- (does)168 3000 A
- (SEND,)210 3210 A
- (RECEIVE)294 3462 A
- 3798(or)S
- (SENDREC)294 3924 A
- 1710 V
- (06904)210 648 A
- 1068(*)S
- (interrupt:)420 1236 A
- (called)252 1698 A
- 1992(by)S
- (interrupt)378 2118 A
- (routines)336 2538 A
- 2916(to)S
- (send)168 3042 A
- 3252(a)S
- (message)294 3336 A
- 3672(to)S
- (task)168 3798 A
- 1800 V
- (06905)210 648 A
- 1068(*)S
- 1890 V
- (06906)210 648 A
- 1068(*)S
- 1152(It)S
- (also)168 1278 A
- (has)126 1488 A
- (several)294 1656 A
- (minor)210 1992 A
- (entry)210 2244 A
- (points:)294 2496 A
- 1980 V
- (06907)210 648 A
- 1068(*)S
- 2070 V
- (06908)210 648 A
- 1068(*)S
- (lock_ready:)462 1236 A
- (put)126 1950 A
- 2118(a)S
- (process)294 2202 A
- 2538(on)S
- (one)126 2664 A
- 2832(of)S
- (the)126 2958 A
- (ready)210 3126 A
- (queues)252 3378 A
- 3672(so)S
- 3798(it)S
- (can)126 3924 A
- 4092(be)S
- (run)126 4218 A
- 2160 V
- (06909)210 648 A
- 1068(*)S
- (lock_unready:)546 1236 A
- (remove)252 1950 A
- 2244(a)S
- (process)294 2328 A
- (from)168 2664 A
- (the)126 2874 A
- (ready)210 3042 A
- (queues)252 3294 A
- 2250 V
- (06910)210 648 A
- 1068(*)S
- (lock_sched:)462 1236 A
- 1950(a)S
- (process)294 2034 A
- (has)126 2370 A
- (run)126 2538 A
- (too)126 2706 A
- (long;)210 2874 A
- (schedule)336 3126 A
- (another)294 3504 A
- (one)126 3840 A
- 2340 V
- (06911)210 648 A
- 1068(*)S
- (lock_mini_send:)630 1236 A
- (send)168 1950 A
- 2160(a)S
- (message)294 2244 A
- ((used)210 2580 A
- 2832(by)S
- (interrupt)378 2958 A
- (signals,)336 3378 A
- (etc.))210 3756 A
- 2430 V
- (06912)210 648 A
- 1068(*)S
- (lock_pick_proc:)630 1236 A
- (pick)168 1950 A
- 2160(a)S
- (process)294 2244 A
- 2580(to)S
- (run)126 2706 A
- ((used)210 2874 A
- 3126(by)S
- (system)252 3252 A
- (initialization))630 3546 A
- 2520 V
- (06913)210 648 A
- 1068(*)S
- (unhold:)294 1236 A
- (repeat)252 1950 A
- (all)126 2244 A
- (held-up)294 2412 A
- (interrupts)420 2748 A
- 2610 V
- (06914)210 648 A
- 1068(*/)S
- 2700 V
- (06915)210 648 A
- 2790 V
- (06916)210 648 A
- (#include)336 1026 A
- ("kernel.h")420 1404 A
- 2880 V
- (06917)210 648 A
- (#include)336 1026 A
- (<minix/callnr.h>)672 1404 A
- 2970 V
- (06918)210 648 A
- (#include)336 1026 A
- (<minix/com.h>)546 1404 A
- 3060 V
- (06919)210 648 A
- (#include)336 1026 A
- ("proc.h")336 1404 A
- 3150 V
- (06920)210 648 A
- 3240 V
- (06921)210 648 A
- (PRIVATE)294 1026 A
- (unsigned)336 1362 A
- (char)168 1740 A
- (switching;)420 1950 A
- 2706(/*)S
- (nonzero)294 2832 A
- 3168(to)S
- (inhibit)294 3294 A
- (interrupt())462 3630 A
- 4134(*/)S
- 3330 V
- (06922)210 648 A
- 3420 V
- (06923)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (mini_send,)420 2034 A
- ((struct)294 2496 A
- (proc)168 2832 A
- (*caller_ptr,)504 3042 A
- (int)126 3588 A
- (dest,)210 3756 A
- 3510 V
- (06924)210 648 A
- (message)294 1698 A
- (*m_ptr))294 2034 A
- 2370();)S
- 3600 V
- (06925)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (mini_rec,)378 2034 A
- ((struct)294 2454 A
- (proc)168 2790 A
- (*caller_ptr,)504 3000 A
- (int)126 3546 A
- (src,)168 3714 A
- 3690 V
- (06926)210 648 A
- (message)294 1698 A
- (*m_ptr))294 2034 A
- 2370();)S
- 3780 V
- (06927)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (ready,)252 2076 A
- ((struct)294 2370 A
- (proc)168 2706 A
- (*rp))168 2916 A
- 3126();)S
- 3870 V
- (06928)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (sched,)252 2076 A
- ((void))252 2370 A
- 2664();)S
- 3960 V
- (06929)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (unready,)336 2076 A
- ((struct)294 2454 A
- (proc)168 2790 A
- (*rp))168 3000 A
- 3210();)S
- 4050 V
- (06930)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (pick_proc,)420 2076 A
- ((void))252 2538 A
- 2832();)S
- 4140 V
- (06931)210 648 A
- 4230 V
- (06932)210 648 A
- (#define)294 1026 A
- (CopyMess(s,sp,sm,dp,dm))966 1362 A
- 2370(\)S
- 4320 V
- (06933)210 648 A
- (cp_mess(s,)420 1362 A
- ((sp)->p_map[D].mem_phys,)1008 1824 A
- ((vir_bytes)sm,)588 2874 A
- ((dp)->p_map[D].mem_phys,)1008 3504 A
- ((vir_bytes)dm))588 4554 A
- 4410 V
- (06934)210 648 A
- 4500 V
- (06935)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4590 V
- (06936)210 648 A
- 1068(*)S
- (interrupt)378 2370 A
- 4260(*)S
- 4680 V
- (06937)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4770 V
- (06938)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (interrupt(task))630 1530 A
- 4860 V
- (06939)210 648 A
- (int)126 1026 A
- (task;)210 1194 A
- 2370(/*)S
- (number)252 2496 A
- 2790(of)S
- (task)168 2916 A
- 3126(to)S
- 3252(be)S
- (started)294 3378 A
- 3714(*/)S
- 4950 V
- (06940)210 648 A
- 1026({)S
- 5040 V
- (06941)210 648 A
- 1026(/*)S
- 1152(An)S
- (interrupt)378 1278 A
- (has)126 1698 A
- (occurred.)378 1866 A
- (Schedule)336 2328 A
- (the)126 2706 A
- (task)168 2874 A
- (that)168 3084 A
- (handles)294 3294 A
- (it.)126 3630 A
- 3798(*/)S
- 5130 V
- (06942)210 648 A
- 5220 V
- (06943)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*rp;)168 1992 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (task's)252 2958 A
- (proc)168 3252 A
- (entry)210 3462 A
- 3714(*/)S
- 5310 V
- (06944)210 648 A
- 5400 V
- (06945)210 648 A
- 1110(rp)S
- 1236(=)S
- (proc_addr(task);)672 1320 A
- 5490 V
- (06946)210 648 A
- 5580 V
- (06947)210 648 A
- 1110(/*)S
- 1236(If)S
- (this)168 1362 A
- (call)168 1572 A
- (would)210 1782 A
- (compete)294 2034 A
- (with)168 2370 A
- (other)210 2580 A
- (process-switching)714 2832 A
- (functions,)420 3588 A
- (put)126 4050 A
- 5670 V
- (06948)210 648 A
- 1152(*)S
- 1236(it)S
- 1362(on)S
- (the)126 1488 A
- ('held')252 1656 A
- (queue)210 1950 A
- 2202(to)S
- 2328(be)S
- (flushed)294 2454 A
- 2790(at)S
- (the)126 2916 A
- (next)168 3084 A
- (non-competing)546 3294 A
- (restart().)420 3882 A
- 5760 V
- (06949)210 648 A
- 1152(*)S
- (The)126 1236 A
- (competing)378 1404 A
- (conditions)420 1824 A
- (are:)168 2286 A
- 5850 V
- (06950)210 648 A
- 1152(*)S
- ((1))126 1236 A
- (k_reenter)378 1404 A
- 1824(==)S
- ((typeof)294 1950 A
- (k_reenter))420 2286 A
- (-1:)126 2748 A
- 5940 V
- (06951)210 648 A
- 1152(*)S
- (Call)168 1404 A
- (from)168 1614 A
- (the)126 1824 A
- (task)168 1992 A
- (level,)252 2202 A
- (typically)378 2496 A
- (from)168 2916 A
- 3126(an)S
- (output)252 3252 A
- (interrupt)378 3546 A
- 6030 V
- (06952)210 648 A
- 1152(*)S
- (routine.)336 1404 A
- 1824(An)S
- (interrupt)378 1950 A
- (handler)294 2370 A
- (might)210 2706 A
- (reenter)294 2958 A
- (interrupt().)504 3294 A
- (Rare,)210 3882 A
- 6120 V
- (06953)210 648 A
- 1152(*)S
- 1404(so)S
- (not)126 1530 A
- (worth)210 1698 A
- (special)294 1950 A
- (treatment.)420 2286 A
- 6210 V
- (06954)210 648 A
- 1152(*)S
- ((2))126 1236 A
- (k_reenter)378 1404 A
- 1824(>)S
- 1908(0:)S
- 8418 V
- EP
- %%Page: 83 83
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 12 B
- 4308(83)S
- 900 V
- 7 LST
- (06955)210 648 A
- 1152(*)S
- (Call)168 1404 A
- (from)168 1614 A
- 1824(a)S
- (nested)252 1908 A
- (interrupt)378 2202 A
- (handler.)336 2622 A
- 3042(A)S
- (previous)336 3126 A
- (interrupt)378 3504 A
- (handler)294 3924 A
- 990 V
- (06956)210 648 A
- 1152(*)S
- (might)210 1404 A
- 1656(be)S
- (inside)252 1782 A
- (interrupt())462 2076 A
- 2580(or)S
- (sys_call().)462 2706 A
- 1080 V
- (06957)210 648 A
- 1152(*)S
- ((3))126 1236 A
- (switching)378 1404 A
- 1824(!=)S
- 1950(0:)S
- 1170 V
- (06958)210 648 A
- 1152(*)S
- (Some)168 1404 A
- (process-switching)714 1614 A
- (function)336 2370 A
- (other)210 2748 A
- (than)168 3000 A
- (interrupt())462 3210 A
- 3714(is)S
- (being)210 3840 A
- 1260 V
- (06959)210 648 A
- 1152(*)S
- (called)252 1404 A
- (from)168 1698 A
- (the)126 1908 A
- (task)168 2076 A
- (level,)252 2286 A
- (typically)378 2580 A
- (sched())294 3000 A
- (from)168 3336 A
- (CLOCK.)252 3546 A
- 3882(An)S
- 1350 V
- (06960)210 648 A
- 1152(*)S
- (interrupt)378 1404 A
- (handler)294 1824 A
- (might)210 2160 A
- (call)168 2412 A
- (interrupt)378 2622 A
- (and)126 3042 A
- (pass)168 3210 A
- (the)126 3420 A
- (k_reenter)378 3588 A
- (test.)210 4008 A
- 1440 V
- (06961)210 648 A
- 1152(*/)S
- 1530 V
- (06962)210 648 A
- 1110(if)S
- ((k_reenter)420 1236 A
- 1698(!=)S
- 1824(0)S
- 1908(||)S
- (switching))420 2034 A
- 2496({)S
- 1620 V
- (06963)210 648 A
- (lock();)294 1362 A
- 1710 V
- (06964)210 648 A
- 1362(if)S
- ((!rp->p_int_held))714 1488 A
- 2244({)S
- 1800 V
- (06965)210 648 A
- (rp->p_int_held)588 1698 A
- 2328(=)S
- (TRUE;)210 2412 A
- 1890 V
- (06966)210 648 A
- 1698(if)S
- ((held_head)420 1824 A
- 2286(!=)S
- (NIL_PROC))378 2412 A
- 1980 V
- (06967)210 648 A
- (held_tail->p_nextheld)882 2034 A
- 2958(=)S
- (rp;)126 3042 A
- 2070 V
- (06968)210 648 A
- (else)168 1698 A
- 2160 V
- (06969)210 648 A
- (held_head)378 2034 A
- 2454(=)S
- (rp;)126 2538 A
- 2250 V
- (06970)210 648 A
- (held_tail)378 1698 A
- 2118(=)S
- (rp;)126 2202 A
- 2340 V
- (06971)210 648 A
- (rp->p_nextheld)588 1698 A
- 2328(=)S
- (NIL_PROC;)378 2412 A
- 2430 V
- (06972)210 648 A
- 1362(})S
- 2520 V
- (06973)210 648 A
- (unlock();)378 1362 A
- 2610 V
- (06974)210 648 A
- (return;)294 1362 A
- 2700 V
- (06975)210 648 A
- 1110(})S
- 2790 V
- (06976)210 648 A
- 2880 V
- (06977)210 648 A
- 1110(/*)S
- 1236(If)S
- (task)168 1362 A
- 1572(is)S
- (not)126 1698 A
- (waiting)294 1866 A
- (for)126 2202 A
- 2370(an)S
- (interrupt,)420 2496 A
- (record)252 2958 A
- (the)126 3252 A
- (blockage.)378 3420 A
- 3840(*/)S
- 2970 V
- (06978)210 648 A
- 1110(if)S
- 1236(()S
- ((rp->p_flags)504 1320 A
- 1866(&)S
- ((RECEIVING)420 1950 A
- 2412(|)S
- (SENDING)))378 2496 A
- 2916(!=)S
- (RECEIVING)378 3042 A
- 3462(||)S
- 3060 V
- (06979)210 648 A
- (!isrxhardware(rp->p_getfrom)))1218 1278 A
- 2538({)S
- 3150 V
- (06980)210 648 A
- (rp->p_int_blocked)714 1362 A
- 2118(=)S
- (TRUE;)210 2202 A
- 3240 V
- (06981)210 648 A
- (return;)294 1362 A
- 3330 V
- (06982)210 648 A
- 1110(})S
- 3420 V
- (06983)210 648 A
- 3510 V
- (06984)210 648 A
- 1110(/*)S
- (Destination)462 1236 A
- 1740(is)S
- (waiting)294 1866 A
- (for)126 2202 A
- 2370(an)S
- (interrupt.)420 2496 A
- 3600 V
- (06985)210 648 A
- 1152(*)S
- (Send)168 1236 A
- 1446(it)S
- 1572(a)S
- (message)294 1656 A
- (with)168 1992 A
- (source)252 2202 A
- (HARDWARE)336 2496 A
- (and)126 2874 A
- (type)168 3042 A
- (HARD_INT.)378 3252 A
- 3690 V
- (06986)210 648 A
- 1152(*)S
- 1236(No)S
- (more)168 1362 A
- (information)462 1572 A
- (can)126 2076 A
- 2244(be)S
- (reliably)336 2370 A
- (provided)336 2748 A
- (since)210 3126 A
- (interrupt)378 3378 A
- (messages)336 3798 A
- 3780 V
- (06987)210 648 A
- 1152(*)S
- (are)126 1236 A
- (not)126 1404 A
- (queued.)294 1572 A
- 3870 V
- (06988)210 648 A
- 1152(*/)S
- 3960 V
- (06989)210 648 A
- (rp->p_messbuf->m_source)966 1110 A
- 2118(=)S
- (HARDWARE;)378 2202 A
- 4050 V
- (06990)210 648 A
- (rp->p_messbuf->m_type)882 1110 A
- 2034(=)S
- (HARD_INT;)378 2118 A
- 4140 V
- (06991)210 648 A
- (rp->p_flags)462 1110 A
- 1614(&=)S
- (304RECEIVING;)462 1740 A
- 4230 V
- (06992)210 648 A
- (rp->p_int_blocked)714 1110 A
- 1866(=)S
- (FALSE;)252 1950 A
- 4320 V
- (06993)210 648 A
- 4410 V
- (06994)210 648 A
- 1152(/*)S
- (Make)168 1278 A
- 1488(rp)S
- (ready)210 1614 A
- (and)126 1866 A
- (run)126 2034 A
- 2202(it)S
- (unless)252 2328 A
- 2622(a)S
- (task)168 2706 A
- 2916(is)S
- (already)294 3042 A
- (running.)336 3378 A
- (This)168 3798 A
- 4008(is)S
- 4500 V
- (06995)210 648 A
- 1194(*)S
- (ready(rp))378 1278 A
- (in-line)294 1698 A
- (for)126 2034 A
- (speed.)252 2202 A
- 4590 V
- (06996)210 648 A
- 1194(*/)S
- 4680 V
- (06997)210 648 A
- 1110(if)S
- ((rdy_head[TASK_Q])714 1236 A
- 1992(!=)S
- (NIL_PROC))378 2118 A
- 4770 V
- (06998)210 648 A
- (rdy_tail[TASK_Q]->p_nextready)1218 1362 A
- 2622(=)S
- (rp;)126 2706 A
- 4860 V
- (06999)210 648 A
- (else)168 1110 A
- 4950 V
- (07000)210 648 A
- (proc_ptr)336 1362 A
- 1740(=)S
- (rdy_head[TASK_Q])672 1824 A
- 2538(=)S
- (rp;)126 2622 A
- 5040 V
- (07001)210 648 A
- (rdy_tail[TASK_Q])672 1110 A
- 1824(=)S
- (rp;)126 1908 A
- 5130 V
- (07002)210 648 A
- (rp->p_nextready)630 1110 A
- 1782(=)S
- (NIL_PROC;)378 1866 A
- 5220 V
- (07003)210 648 A
- 1026(})S
- 5400 V
- (07005)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5490 V
- (07006)210 648 A
- 1068(*)S
- (sys_call)336 2370 A
- 4260(*)S
- 5580 V
- (07007)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5670 V
- (07008)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (sys_call(function,)756 1488 A
- (src_dest,)378 2286 A
- (m_ptr))252 2706 A
- 5760 V
- (07009)210 648 A
- (int)126 1026 A
- (function;)378 1194 A
- 2370(/*)S
- (SEND,)210 2496 A
- (RECEIVE,)336 2748 A
- 3126(or)S
- (BOTH)168 3252 A
- 3462(*/)S
- 5850 V
- (07010)210 648 A
- (int)126 1026 A
- (src_dest;)378 1194 A
- 2370(/*)S
- (source)252 2496 A
- 2790(to)S
- (receive)294 2916 A
- (from)168 3252 A
- 3462(or)S
- (dest)168 3588 A
- 3798(to)S
- (send)168 3924 A
- 4134(to)S
- 4260(*/)S
- 5940 V
- (07011)210 648 A
- (message)294 1026 A
- (*m_ptr;)294 1362 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (message)294 2958 A
- 3294(*/)S
- 6030 V
- (07012)210 648 A
- 1026({)S
- 6120 V
- (07013)210 648 A
- 1026(/*)S
- (The)126 1152 A
- (only)168 1320 A
- (system)252 1530 A
- (calls)210 1824 A
- (that)168 2076 A
- (exist)210 2286 A
- 2538(in)S
- (MINIX)210 2664 A
- (are)126 2916 A
- (sending)294 3084 A
- (and)126 3420 A
- (receiving)378 3588 A
- 6210 V
- (07014)210 648 A
- 1068(*)S
- (messages.)378 1152 A
- (These)210 1614 A
- (are)126 1866 A
- (done)168 2034 A
- 2244(by)S
- (trapping)336 2370 A
- 2748(to)S
- (the)126 2874 A
- (kernel)252 3042 A
- (with)168 3336 A
- 3546(an)S
- (INT)126 3672 A
- (instruction.)504 3840 A
- 8418 V
- EP
- %%Page: 84 84
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(84)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (07015)210 648 A
- 1068(*)S
- (The)126 1152 A
- (trap)168 1320 A
- 1530(is)S
- (caught)252 1656 A
- (and)126 1950 A
- (sys_call())420 2118 A
- 2580(is)S
- (called)252 2706 A
- 3000(to)S
- (send)168 3126 A
- 3336(or)S
- (receive)294 3462 A
- 3798(a)S
- (message)294 3882 A
- 990 V
- (07016)210 648 A
- 1068(*)S
- ((or)126 1152 A
- (both).)252 1320 A
- (The)126 1614 A
- (caller)252 1782 A
- 2076(is)S
- (always)252 2202 A
- (given)210 2496 A
- 2748(by)S
- (proc_ptr.)378 2874 A
- 1080 V
- (07017)210 648 A
- 1068(*/)S
- 1170 V
- (07018)210 648 A
- 1260 V
- (07019)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*rp;)168 1992 A
- 1350 V
- (07020)210 648 A
- (int)126 1110 A
- 1278(n;)S
- 1440 V
- (07021)210 648 A
- 1530 V
- (07022)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- (for)126 1488 A
- (bad)126 1656 A
- (system)252 1824 A
- (call)168 2118 A
- (parameters.)462 2328 A
- 2832(*/)S
- 1620 V
- (07023)210 648 A
- 1110(if)S
- ((!isoksrc_dest(src_dest)))1050 1236 A
- (return(E_BAD_SRC);)756 2328 A
- 1710 V
- (07024)210 648 A
- 1110(rp)S
- 1236(=)S
- (proc_ptr;)378 1320 A
- 1800 V
- (07025)210 648 A
- 1890 V
- (07026)210 648 A
- 1110(if)S
- ((isuserp(rp))504 1236 A
- 1782(&&)S
- (function)336 1908 A
- 2286(!=)S
- (BOTH))210 2412 A
- (return(E_NO_PERM);)756 2664 A
- 1980 V
- (07027)210 648 A
- 2070 V
- (07028)210 648 A
- 1110(/*)S
- (The)126 1236 A
- (parameters)420 1404 A
- (are)126 1866 A
- (ok.)126 2034 A
- 2202(Do)S
- (the)126 2328 A
- (call.)210 2496 A
- 2748(*/)S
- 2160 V
- (07029)210 648 A
- 1110(if)S
- ((function)378 1236 A
- 1656(&)S
- (SEND))210 1740 A
- 1992({)S
- 2250 V
- (07030)210 648 A
- 1362(/*)S
- (Function)336 1488 A
- 1866(=)S
- (SEND)168 1950 A
- 2160(or)S
- (BOTH.)210 2286 A
- 2538(*/)S
- 2340 V
- (07031)210 648 A
- 1362(n)S
- 1446(=)S
- (mini_send(rp,)546 1530 A
- (src_dest,)378 2118 A
- (m_ptr);)294 2538 A
- 2430 V
- (07032)210 648 A
- 1362(if)S
- ((function)378 1488 A
- 1908(==)S
- (SEND)168 2034 A
- 2244(||)S
- 2370(n)S
- 2454(!=)S
- (OK))126 2580 A
- 2520 V
- (07033)210 648 A
- (return(n);)420 1698 A
- 2370(/*)S
- (done,)210 2496 A
- 2748(or)S
- (SEND)168 2874 A
- (failed)252 3084 A
- 3378(*/)S
- 2610 V
- (07034)210 648 A
- 1110(})S
- 2700 V
- (07035)210 648 A
- 2790 V
- (07036)210 648 A
- 1110(/*)S
- (Function)336 1236 A
- 1614(=)S
- (RECEIVE)294 1698 A
- 2034(or)S
- (BOTH.)210 2160 A
- 2880 V
- (07037)210 648 A
- 1152(*)S
- 1236(We)S
- (have)168 1362 A
- (checked)294 1572 A
- (user)168 1908 A
- (calls)210 2118 A
- (are)126 2370 A
- (BOTH,)210 2538 A
- (and)126 2790 A
- (trust)210 2958 A
- ('function')420 3210 A
- (otherwise.)420 3672 A
- 2970 V
- (07038)210 648 A
- 1152(*/)S
- 3060 V
- (07039)210 648 A
- (return(mini_rec(rp,)798 1110 A
- (src_dest,)378 1950 A
- (m_ptr));)336 2370 A
- 3150 V
- (07040)210 648 A
- 1026(})S
- 3330 V
- (07042)210 648 A
- (/*===========================================================================*)3276 1026 A
- 3420 V
- (07043)210 648 A
- 1068(*)S
- (mini_send)378 2370 A
- 4260(*)S
- 3510 V
- (07044)210 648 A
- (*===========================================================================*/)3276 1068 A
- 3600 V
- (07045)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (mini_send(caller_ptr,)882 1530 A
- (dest,)210 2454 A
- (m_ptr))252 2706 A
- 3690 V
- (07046)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (proc)168 1698 A
- (*caller_ptr;)504 1908 A
- 2706(/*)S
- (who)126 2832 A
- 3000(is)S
- (trying)252 3126 A
- 3420(to)S
- (send)168 3546 A
- 3756(a)S
- (message?)336 3840 A
- 4218(*/)S
- 3780 V
- (07047)210 648 A
- (int)126 1026 A
- (dest;)210 1194 A
- 2370(/*)S
- 2496(to)S
- (whom)168 2622 A
- 2832(is)S
- (message)294 2958 A
- (being)210 3294 A
- (sent?)210 3546 A
- 3798(*/)S
- 3870 V
- (07048)210 648 A
- (message)294 1026 A
- (*m_ptr;)294 1362 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (message)294 2958 A
- (buffer)252 3294 A
- 3588(*/)S
- 3960 V
- (07049)210 648 A
- 1026({)S
- 4050 V
- (07050)210 648 A
- 1026(/*)S
- (Send)168 1152 A
- 1362(a)S
- (message)294 1446 A
- (from)168 1782 A
- ('caller_ptr')504 1992 A
- 2538(to)S
- ('dest'.)294 2664 A
- 3000(If)S
- ('dest')252 3126 A
- 3420(is)S
- (blocked)294 3546 A
- (waiting)294 3882 A
- 4140 V
- (07051)210 648 A
- 1068(*)S
- (for)126 1152 A
- (this)168 1320 A
- (message,)336 1530 A
- (copy)168 1908 A
- (the)126 2118 A
- (message)294 2286 A
- 2622(to)S
- 2748(it)S
- (and)126 2874 A
- (unblock)294 3042 A
- ('dest'.)294 3378 A
- 3714(If)S
- ('dest')252 3840 A
- 4134(is)S
- 4230 V
- (07052)210 648 A
- 1068(*)S
- (not)126 1152 A
- (waiting)294 1320 A
- 1656(at)S
- (all,)168 1782 A
- 1992(or)S
- 2118(is)S
- (waiting)294 2244 A
- (for)126 2580 A
- (another)294 2748 A
- (source,)294 3084 A
- (queue)210 3420 A
- ('caller_ptr'.)546 3672 A
- 4320 V
- (07053)210 648 A
- 1068(*/)S
- 4410 V
- (07054)210 648 A
- 4500 V
- (07055)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*dest_ptr,)420 1992 A
- (*next_ptr;)420 2454 A
- 4590 V
- (07056)210 648 A
- (vir_bytes)378 1110 A
- (vb;)126 1530 A
- 2370(/*)S
- (message)294 2496 A
- (buffer)252 2832 A
- (pointer)294 3126 A
- 3462(as)S
- (vir_bytes)378 3588 A
- 4008(*/)S
- 4680 V
- (07057)210 648 A
- (vir_clicks)420 1110 A
- (vlo,)168 1572 A
- (vhi;)168 1782 A
- 2370(/*)S
- (virtual)294 2496 A
- (clicks)252 2832 A
- (containing)420 3126 A
- (message)294 3588 A
- 3924(to)S
- (send)168 4050 A
- 4260(*/)S
- 4770 V
- (07058)210 648 A
- 4860 V
- (07059)210 648 A
- 1110(/*)S
- (User)168 1236 A
- (processes)378 1446 A
- (are)126 1866 A
- (only)168 2034 A
- (allowed)294 2244 A
- 2580(to)S
- (send)168 2706 A
- 2916(to)S
- 3042(FS)S
- (and)126 3168 A
- (MM.)126 3336 A
- (Check)210 3546 A
- (for)126 3798 A
- (this.)210 3966 A
- 4218(*/)S
- 4950 V
- (07060)210 648 A
- 1110(if)S
- ((isuserp(caller_ptr))840 1236 A
- 2118(&&)S
- (!issysentn(dest)))714 2244 A
- (return(E_BAD_DEST);)798 3000 A
- 5040 V
- (07061)210 648 A
- (dest_ptr)336 1110 A
- 1488(=)S
- (proc_addr(dest);)672 1572 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (destination's)546 2958 A
- (proc)168 3546 A
- (entry)210 3756 A
- 4008(*/)S
- 5130 V
- (07062)210 648 A
- 1110(if)S
- ((dest_ptr->p_flags)756 1236 A
- 2034(&)S
- (P_SLOT_FREE))504 2118 A
- (return(E_BAD_DEST);)798 2664 A
- 3714(/*)S
- (dead)168 3840 A
- (dest)168 4050 A
- 4260(*/)S
- 5220 V
- (07063)210 648 A
- 5310 V
- (07064)210 648 A
- 1110(/*)S
- (This)168 1236 A
- (check)210 1446 A
- (allows)252 1698 A
- 1992(a)S
- (message)294 2076 A
- 2412(to)S
- 2538(be)S
- (anywhere)336 2664 A
- 3042(in)S
- (data)168 3168 A
- 3378(or)S
- (stack)210 3504 A
- 3756(or)S
- (gap.)168 3882 A
- 5400 V
- (07065)210 648 A
- 1152(*)S
- 1236(It)S
- (will)168 1362 A
- (have)168 1572 A
- 1782(to)S
- 1908(be)S
- (made)168 2034 A
- (more)168 2244 A
- (elaborate)378 2454 A
- (later)210 2874 A
- (for)126 3126 A
- (machines)336 3294 A
- (which)210 3672 A
- 5490 V
- (07066)210 648 A
- 1152(*)S
- (don't)210 1236 A
- (have)168 1488 A
- (the)126 1698 A
- (gap)126 1866 A
- (mapped.)294 2034 A
- 5580 V
- (07067)210 648 A
- 1152(*/)S
- 5670 V
- (07068)210 648 A
- 1110(vb)S
- 1236(=)S
- ((vir_bytes))462 1320 A
- (m_ptr;)252 1824 A
- 5760 V
- (07069)210 648 A
- (vlo)126 1110 A
- 1278(=)S
- 1362(vb)S
- 1488(>>)S
- (CLICK_SHIFT;)504 1614 A
- 2370(/*)S
- (vir)126 2496 A
- (click)210 2664 A
- (for)126 2916 A
- (bottom)252 3084 A
- 3378(of)S
- (message)294 3504 A
- 3840(*/)S
- 5850 V
- (07070)210 648 A
- (vhi)126 1110 A
- 1278(=)S
- ((vb)126 1362 A
- 1530(+)S
- (MESS_SIZE)378 1614 A
- 2034(-)S
- 2118(1))S
- 2244(>>)S
- (CLICK_SHIFT;)504 2370 A
- 3042(/*)S
- (vir)126 3168 A
- (click)210 3336 A
- (for)126 3588 A
- (top)126 3756 A
- 3924(of)S
- (msg)126 4050 A
- 4218(*/)S
- 5940 V
- (07071)210 648 A
- 1110(if)S
- ((vlo)168 1236 A
- 1446(<)S
- (caller_ptr->p_map[D].mem_vir)1176 1530 A
- 2748(||)S
- (vlo)126 2874 A
- 3042(>)S
- (vhi)126 3126 A
- 3294(||)S
- 6030 V
- (07072)210 648 A
- (vhi)126 1278 A
- 1446(>=)S
- (caller_ptr->p_map[S].mem_vir)1176 1572 A
- 2790(+)S
- (caller_ptr->p_map[S].mem_len))1218 2874 A
- 6120 V
- (07073)210 648 A
- (return(EFAULT);)630 1362 A
- 6210 V
- (07074)210 648 A
- 8418 V
- EP
- %%Page: 85 85
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 12 B
- 4308(85)S
- 900 V
- 7 LST
- (07075)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- (for)126 1488 A
- (deadlock)336 1656 A
- 2034(by)S
- ('caller_ptr')504 2160 A
- (and)126 2706 A
- ('dest')252 2874 A
- (sending)294 3168 A
- 3504(to)S
- (each)168 3630 A
- (other.)252 3840 A
- 4134(*/)S
- 990 V
- (07076)210 648 A
- 1110(if)S
- ((dest_ptr->p_flags)756 1236 A
- 2034(&)S
- (SENDING))336 2118 A
- 2496({)S
- 1080 V
- (07077)210 648 A
- (next_ptr)336 1362 A
- 1740(=)S
- (proc_addr(dest_ptr->p_sendto);)1260 1824 A
- 1170 V
- (07078)210 648 A
- (while)210 1362 A
- ((TRUE))252 1614 A
- 1908({)S
- 1260 V
- (07079)210 648 A
- 1698(if)S
- ((next_ptr)378 1824 A
- 2244(==)S
- (caller_ptr))462 2370 A
- (return(ELOCKED);)672 2874 A
- 1350 V
- (07080)210 648 A
- 1698(if)S
- ((next_ptr->p_flags)756 1824 A
- 2622(&)S
- (SENDING))336 2706 A
- 1440 V
- (07081)210 648 A
- (next_ptr)336 2034 A
- 2412(=)S
- (proc_addr(next_ptr->p_sendto);)1260 2496 A
- 1530 V
- (07082)210 648 A
- (else)168 1698 A
- 1620 V
- (07083)210 648 A
- (break;)252 2034 A
- 1710 V
- (07084)210 648 A
- 1362(})S
- 1800 V
- (07085)210 648 A
- 1110(})S
- 1890 V
- (07086)210 648 A
- 1980 V
- (07087)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- 1488(to)S
- (see)126 1614 A
- 1782(if)S
- ('dest')252 1908 A
- 2202(is)S
- (blocked)294 2328 A
- (waiting)294 2664 A
- (for)126 3000 A
- (this)168 3168 A
- (message.)336 3378 A
- 3756(*/)S
- 2070 V
- (07088)210 648 A
- 1110(if)S
- 1236(()S
- ((dest_ptr->p_flags)756 1320 A
- 2118(&)S
- ((RECEIVING)420 2202 A
- 2664(|)S
- (SENDING)))378 2748 A
- 3168(==)S
- (RECEIVING)378 3294 A
- 3714(&&)S
- 2160 V
- (07089)210 648 A
- ((dest_ptr->p_getfrom)840 1320 A
- 2202(==)S
- (ANY)126 2328 A
- 2496(||)S
- 2250 V
- (07090)210 648 A
- (dest_ptr->p_getfrom)798 1362 A
- 2202(==)S
- (proc_number(caller_ptr))))1050 2328 A
- 3420({)S
- 2340 V
- (07091)210 648 A
- 1362(/*)S
- (Destination)462 1488 A
- 1992(is)S
- (indeed)252 2118 A
- (waiting)294 2412 A
- (for)126 2748 A
- (this)168 2916 A
- (message.)336 3126 A
- 3504(*/)S
- 2430 V
- (07092)210 648 A
- (CopyMess(proc_number(caller_ptr),)1386 1362 A
- (caller_ptr,)462 2790 A
- (m_ptr,)252 3294 A
- (dest_ptr,)378 3588 A
- 2520 V
- (07093)210 648 A
- (dest_ptr->p_messbuf);)882 1740 A
- 2610 V
- (07094)210 648 A
- (dest_ptr->p_flags)714 1362 A
- 2118(&=)S
- (304RECEIVING;)462 2244 A
- 3042(/*)S
- (deblock)294 3168 A
- (destination)462 3504 A
- 4008(*/)S
- 2700 V
- (07095)210 648 A
- 1362(if)S
- ((dest_ptr->p_flags)756 1488 A
- 2286(==)S
- 2412(0))S
- (ready(dest_ptr);)672 2538 A
- 2790 V
- (07096)210 648 A
- 1110(})S
- (else)168 1194 A
- 1404({)S
- 2880 V
- (07097)210 648 A
- 1362(/*)S
- (Destination)462 1488 A
- 1992(is)S
- (not)126 2118 A
- (waiting.)336 2286 A
- (Block)210 2706 A
- (and)126 2958 A
- (queue)210 3126 A
- (caller.)294 3378 A
- 3714(*/)S
- 2970 V
- (07098)210 648 A
- (caller_ptr->p_messbuf)882 1362 A
- 2286(=)S
- (m_ptr;)252 2370 A
- 3060 V
- (07099)210 648 A
- 1362(if)S
- ((caller_ptr->p_flags)840 1488 A
- 2370(==)S
- 2496(0))S
- (unready(caller_ptr);)840 2622 A
- 3150 V
- (07100)210 648 A
- (caller_ptr->p_flags)798 1362 A
- 2202(|=)S
- (SENDING;)336 2328 A
- 3240 V
- (07101)210 648 A
- (caller_ptr->p_sendto=)882 1362 A
- (dest;)210 2286 A
- 3330 V
- (07102)210 648 A
- 3420 V
- (07103)210 648 A
- 1362(/*)S
- (Process)294 1488 A
- 1824(is)S
- (now)126 1950 A
- (blocked.)336 2118 A
- (Put)126 2538 A
- 2706(in)S
- 2832(on)S
- (the)126 2958 A
- (destination's)546 3126 A
- (queue.)252 3714 A
- 4008(*/)S
- 3510 V
- (07104)210 648 A
- 1362(if)S
- 1488(()S
- ((next_ptr)378 1572 A
- 1992(=)S
- (dest_ptr->p_callerq))840 2076 A
- 2958(==)S
- (NIL_PROC))378 3084 A
- 3600 V
- (07105)210 648 A
- (dest_ptr->p_callerq)798 1698 A
- 2538(=)S
- (caller_ptr;)462 2622 A
- 3690 V
- (07106)210 648 A
- (else)168 1362 A
- 1572({)S
- 3780 V
- (07107)210 648 A
- (while)210 1698 A
- ((next_ptr->p_sendlink)882 1950 A
- 2874(!=)S
- (NIL_PROC))378 3000 A
- 3870 V
- (07108)210 648 A
- (next_ptr)336 2034 A
- 2412(=)S
- (next_ptr->p_sendlink;)882 2496 A
- 3960 V
- (07109)210 648 A
- (next_ptr->p_sendlink)840 1698 A
- 2580(=)S
- (caller_ptr;)462 2664 A
- 4050 V
- (07110)210 648 A
- 1362(})S
- 4140 V
- (07111)210 648 A
- (caller_ptr->p_sendlink)924 1362 A
- 2328(=)S
- (NIL_PROC;)378 2412 A
- 4230 V
- (07112)210 648 A
- 1110(})S
- 4320 V
- (07113)210 648 A
- (return(OK);)462 1110 A
- 4410 V
- (07114)210 648 A
- 1026(})S
- 4590 V
- (07116)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4680 V
- (07117)210 648 A
- 1068(*)S
- (mini_rec)336 2370 A
- 4260(*)S
- 4770 V
- (07118)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4860 V
- (07119)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (mini_rec(caller_ptr,)840 1530 A
- (src,)168 2412 A
- (m_ptr))252 2622 A
- 4950 V
- (07120)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (proc)168 1698 A
- (*caller_ptr;)504 1908 A
- 2706(/*)S
- (process)294 2832 A
- (trying)252 3168 A
- 3462(to)S
- (get)126 3588 A
- (message)294 3756 A
- 4092(*/)S
- 5040 V
- (07121)210 648 A
- (int)126 1026 A
- (src;)168 1194 A
- 2370(/*)S
- (which)210 2496 A
- (message)294 2748 A
- (source)252 3084 A
- 3378(is)S
- (wanted)252 3504 A
- ((or)126 3798 A
- (ANY))168 3966 A
- 4176(*/)S
- 5130 V
- (07122)210 648 A
- (message)294 1026 A
- (*m_ptr;)294 1362 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (message)294 2958 A
- (buffer)252 3294 A
- 3588(*/)S
- 5220 V
- (07123)210 648 A
- 1026({)S
- 5310 V
- (07124)210 648 A
- 1026(/*)S
- 1152(A)S
- (process)294 1236 A
- 1572(or)S
- (task)168 1698 A
- (wants)210 1908 A
- 2160(to)S
- (get)126 2286 A
- 2454(a)S
- (message.)336 2538 A
- 2958(If)S
- (one)126 3084 A
- 3252(is)S
- (already)294 3378 A
- (queued,)294 3714 A
- 5400 V
- (07125)210 648 A
- 1068(*)S
- (acquire)294 1152 A
- 1488(it)S
- (and)126 1614 A
- (deblock)294 1782 A
- (the)126 2118 A
- (sender.)294 2286 A
- 2664(If)S
- 2790(no)S
- (message)294 2916 A
- (from)168 3252 A
- (the)126 3462 A
- (desired)294 3630 A
- (source)252 3966 A
- 5490 V
- (07126)210 648 A
- 1068(*)S
- 1152(is)S
- (available,)420 1278 A
- (block)210 1740 A
- (the)126 1992 A
- (caller.)294 2160 A
- 2538(No)S
- (need)168 2664 A
- 2874(to)S
- (check)210 3000 A
- (parameters)420 3252 A
- (for)126 3714 A
- (validity.)378 3882 A
- 5580 V
- (07127)210 648 A
- 1068(*)S
- (Users)210 1152 A
- (calls)210 1404 A
- (are)126 1656 A
- (always)252 1824 A
- (sendrec(),)420 2118 A
- (and)126 2580 A
- (mini_send())462 2748 A
- (has)126 3252 A
- (checked)294 3420 A
- (already.)336 3756 A
- 5670 V
- (07128)210 648 A
- 1068(*)S
- (Calls)210 1152 A
- (from)168 1404 A
- (the)126 1614 A
- (tasks,)252 1782 A
- (MM,)126 2076 A
- (and)126 2244 A
- 2412(FS)S
- (are)126 2538 A
- (trusted.)336 2706 A
- 5760 V
- (07129)210 648 A
- 1068(*/)S
- 5850 V
- (07130)210 648 A
- 5940 V
- (07131)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*sender_ptr;)504 1992 A
- 6030 V
- (07132)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*previous_ptr;)588 1992 A
- 6120 V
- (07133)210 648 A
- 6210 V
- (07134)210 648 A
- 1110(/*)S
- (Check)210 1236 A
- 1488(to)S
- (see)126 1614 A
- 1782(if)S
- 1908(a)S
- (message)294 1992 A
- (from)168 2328 A
- (desired)294 2538 A
- (source)252 2874 A
- 3168(is)S
- (already)294 3294 A
- (available.)420 3630 A
- 4092(*/)S
- 8418 V
- EP
- %%Page: 86 86
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(86)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (07135)210 648 A
- 1110(if)S
- ((!(caller_ptr->p_flags)924 1236 A
- 2202(&)S
- (SENDING)))378 2286 A
- 2706({)S
- 990 V
- (07136)210 648 A
- 1362(/*)S
- (Check)210 1488 A
- (caller)252 1740 A
- (queue.)252 2034 A
- 2328(*/)S
- 1080 V
- (07137)210 648 A
- (for)126 1194 A
- ((sender_ptr)462 1362 A
- 1866(=)S
- (caller_ptr->p_callerq;)924 1950 A
- (sender_ptr)420 2916 A
- 3378(!=)S
- (NIL_PROC;)378 3504 A
- 1170 V
- (07138)210 648 A
- (previous_ptr)504 1404 A
- 1950(=)S
- (sender_ptr,)462 2034 A
- (sender_ptr)420 2538 A
- 3000(=)S
- (sender_ptr->p_sendlink))966 3084 A
- 4092({)S
- 1260 V
- (07139)210 648 A
- 1362(if)S
- ((src)168 1488 A
- 1698(==)S
- (ANY)126 1824 A
- 1992(||)S
- (src)126 2118 A
- 2286(==)S
- (proc_number(sender_ptr)))1008 2412 A
- 3462({)S
- 1350 V
- (07140)210 648 A
- 1698(/*)S
- 1824(An)S
- (acceptable)420 1950 A
- (message)294 2412 A
- (has)126 2748 A
- (been)168 2916 A
- (found.)252 3126 A
- 3420(*/)S
- 1440 V
- (07141)210 648 A
- (CopyMess(proc_number(sender_ptr),)1386 1698 A
- (sender_ptr,)462 3126 A
- 1530 V
- (07142)210 648 A
- (sender_ptr->p_messbuf,)924 2076 A
- (caller_ptr,)462 3042 A
- (m_ptr);)294 3546 A
- 1620 V
- (07143)210 648 A
- 1698(if)S
- ((sender_ptr)462 1824 A
- 2328(==)S
- (caller_ptr->p_callerq))924 2454 A
- 1710 V
- (07144)210 648 A
- (caller_ptr->p_callerq)882 2034 A
- 2958(=)S
- (sender_ptr->p_sendlink;)966 3042 A
- 1800 V
- (07145)210 648 A
- (else)168 1698 A
- 1890 V
- (07146)210 648 A
- (previous_ptr->p_sendlink)1008 2034 A
- 3084(=)S
- (sender_ptr->p_sendlink;)966 3168 A
- 1980 V
- (07147)210 648 A
- 1698(if)S
- (((sender_ptr->p_flags)882 1824 A
- 2748(&=)S
- (304SENDING))378 2874 A
- 3294(==)S
- 3420(0))S
- 2070 V
- (07148)210 648 A
- (ready(sender_ptr);)756 2034 A
- 3042(/*)S
- (deblock)294 3168 A
- (sender)252 3504 A
- 3798(*/)S
- 2160 V
- (07149)210 648 A
- (return(OK);)462 1698 A
- 2250 V
- (07150)210 648 A
- 1362(})S
- 2340 V
- (07151)210 648 A
- 1194(})S
- 2430 V
- (07152)210 648 A
- 2520 V
- (07153)210 648 A
- 1194(/*)S
- (Check)210 1320 A
- (for)126 1572 A
- (blocked)294 1740 A
- (interrupt.)420 2076 A
- 2538(*/)S
- 2610 V
- (07154)210 648 A
- 1194(if)S
- ((caller_ptr->p_int_blocked)1092 1320 A
- 2454(&&)S
- (isrxhardware(src)))756 2580 A
- 3378({)S
- 2700 V
- (07155)210 648 A
- (m_ptr->m_source)630 1362 A
- 2034(=)S
- (HARDWARE;)378 2118 A
- 2790 V
- (07156)210 648 A
- (m_ptr->m_type)546 1362 A
- 1950(=)S
- (HARD_INT;)378 2034 A
- 2880 V
- (07157)210 648 A
- (caller_ptr->p_int_blocked)1050 1362 A
- 2454(=)S
- (FALSE;)252 2538 A
- 2970 V
- (07158)210 648 A
- (return(OK);)462 1362 A
- 3060 V
- (07159)210 648 A
- 1194(})S
- 3150 V
- (07160)210 648 A
- 1110(})S
- 3240 V
- (07161)210 648 A
- 3330 V
- (07162)210 648 A
- 1110(/*)S
- 1236(No)S
- (suitable)336 1362 A
- (message)294 1740 A
- 2076(is)S
- (available.)420 2202 A
- (Block)210 2706 A
- (the)126 2958 A
- (process)294 3126 A
- (trying)252 3462 A
- 3756(to)S
- (receive.)336 3882 A
- 4260(*/)S
- 3420 V
- (07163)210 648 A
- (caller_ptr->p_getfrom)882 1110 A
- 2034(=)S
- (src;)168 2118 A
- 3510 V
- (07164)210 648 A
- (caller_ptr->p_messbuf)882 1110 A
- 2034(=)S
- (m_ptr;)252 2118 A
- 3600 V
- (07165)210 648 A
- 1110(if)S
- ((caller_ptr->p_flags)840 1236 A
- 2118(==)S
- 2244(0))S
- (unready(caller_ptr);)840 2370 A
- 3690 V
- (07166)210 648 A
- (caller_ptr->p_flags)798 1110 A
- 1950(|=)S
- (RECEIVING;)420 2076 A
- 3780 V
- (07167)210 648 A
- 3870 V
- (07168)210 648 A
- 1110(/*)S
- 1236(If)S
- 1362(MM)S
- (has)126 1488 A
- (just)168 1656 A
- (blocked)294 1866 A
- (and)126 2202 A
- (there)210 2370 A
- (are)126 2622 A
- (kernel)252 2790 A
- (signals)294 3084 A
- (pending,)336 3420 A
- (now)126 3798 A
- 3966(is)S
- (the)126 4092 A
- 3960 V
- (07169)210 648 A
- 1152(*)S
- (time)168 1236 A
- 1446(to)S
- (tell)168 1572 A
- 1782(MM)S
- (about)210 1908 A
- (them,)210 2160 A
- (since)210 2412 A
- 2664(it)S
- (will)168 2790 A
- 3000(be)S
- (able)168 3126 A
- 3336(to)S
- (accept)252 3462 A
- (the)126 3756 A
- (message.)336 3924 A
- 4050 V
- (07170)210 648 A
- 1152(*/)S
- 4140 V
- (07171)210 648 A
- 1110(if)S
- ((sig_procs)420 1236 A
- 1698(>)S
- 1782(0)S
- 1866(&&)S
- (proc_number(caller_ptr))966 1992 A
- 3000(==)S
- (MM_PROC_NR)420 3126 A
- 3588(&&)S
- (src)126 3714 A
- 3882(==)S
- (ANY))168 4008 A
- 4230 V
- (07172)210 648 A
- (inform();)378 1362 A
- 4320 V
- (07173)210 648 A
- (return(OK);)462 1110 A
- 4410 V
- (07174)210 648 A
- 1026(})S
- 4590 V
- (07176)210 648 A
- (/*===========================================================================*)3276 1026 A
- 4680 V
- (07177)210 648 A
- 1068(*)S
- (pick_proc)378 2370 A
- 4260(*)S
- 4770 V
- (07178)210 648 A
- (*===========================================================================*/)3276 1068 A
- 4860 V
- (07179)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (pick_proc())462 1572 A
- 4950 V
- (07180)210 648 A
- 1026({)S
- 5040 V
- (07181)210 648 A
- 1026(/*)S
- (Decide)252 1152 A
- (who)126 1446 A
- 1614(to)S
- (run)126 1740 A
- (now.)168 1908 A
- 2160(A)S
- (new)126 2244 A
- (process)294 2412 A
- 2748(is)S
- (selected)336 2874 A
- 3252(by)S
- (setting)294 3378 A
- ('proc_ptr'.)462 3714 A
- 5130 V
- (07182)210 648 A
- 1068(*)S
- (When)168 1152 A
- 1362(a)S
- (fresh)210 1446 A
- (user)168 1698 A
- ((or)126 1908 A
- (idle))210 2076 A
- (process)294 2328 A
- 2664(is)S
- (selected,)378 2790 A
- (record)252 3210 A
- 3504(it)S
- 3630(in)S
- ('bill_ptr',)462 3756 A
- 5220 V
- (07183)210 648 A
- 1068(*)S
- 1152(so)S
- (the)126 1278 A
- (clock)210 1446 A
- (task)168 1698 A
- (can)126 1908 A
- (tell)168 2076 A
- (who)126 2286 A
- 2454(to)S
- (bill)168 2580 A
- (for)126 2790 A
- (system)252 2958 A
- (time.)210 3252 A
- 5310 V
- (07184)210 648 A
- 1068(*/)S
- 5400 V
- (07185)210 648 A
- 5490 V
- (07186)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*rp;)168 1992 A
- 2370(/*)S
- (process)294 2496 A
- 2832(to)S
- (run)126 2958 A
- 3126(*/)S
- 5580 V
- (07187)210 648 A
- 5670 V
- (07188)210 648 A
- 1110(if)S
- 1236(()S
- ((rp)126 1320 A
- 1488(=)S
- (rdy_head[TASK_Q]))714 1572 A
- 2328(!=)S
- (NIL_PROC))378 2454 A
- 2874({)S
- 5760 V
- (07189)210 648 A
- (proc_ptr)336 1362 A
- 1740(=)S
- (rp;)126 1824 A
- 5850 V
- (07190)210 648 A
- (return;)294 1362 A
- 5940 V
- (07191)210 648 A
- 1110(})S
- 6030 V
- (07192)210 648 A
- 1110(if)S
- 1236(()S
- ((rp)126 1320 A
- 1488(=)S
- (rdy_head[SERVER_Q]))798 1572 A
- 2412(!=)S
- (NIL_PROC))378 2538 A
- 2958({)S
- 6120 V
- (07193)210 648 A
- (proc_ptr)336 1362 A
- 1740(=)S
- (rp;)126 1824 A
- 6210 V
- (07194)210 648 A
- (return;)294 1362 A
- 8418 V
- EP
- %%Page: 87 87
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 12 B
- 4308(87)S
- 900 V
- 7 LST
- (07195)210 648 A
- 1110(})S
- 990 V
- (07196)210 648 A
- 1110(if)S
- 1236(()S
- ((rp)126 1320 A
- 1488(=)S
- (rdy_head[USER_Q]))714 1572 A
- 2328(!=)S
- (NIL_PROC))378 2454 A
- 2874({)S
- 1080 V
- (07197)210 648 A
- (proc_ptr)336 1362 A
- 1740(=)S
- (rp;)126 1824 A
- 1170 V
- (07198)210 648 A
- (bill_ptr)336 1362 A
- 1740(=)S
- (rp;)126 1824 A
- 1260 V
- (07199)210 648 A
- (return;)294 1362 A
- 1350 V
- (07200)210 648 A
- 1110(})S
- 1440 V
- (07201)210 648 A
- 1110(/*)S
- 1236(No)S
- (one)126 1362 A
- 1530(is)S
- (ready.)252 1656 A
- (Run)126 1992 A
- (the)126 2160 A
- (idle)168 2328 A
- (task.)210 2538 A
- (The)126 2832 A
- (idle)168 3000 A
- (task)168 3210 A
- (might)210 3420 A
- 3672(be)S
- (made)168 3798 A
- 4008(an)S
- 1530 V
- (07202)210 648 A
- 1152(*)S
- (always-ready)504 1236 A
- (user)168 1782 A
- (task)168 1992 A
- 2202(to)S
- (avoid)210 2328 A
- (this)168 2580 A
- (special)294 2790 A
- (case.)210 3126 A
- 1620 V
- (07203)210 648 A
- 1152(*/)S
- 1710 V
- (07204)210 648 A
- (bill_ptr)336 1110 A
- 1488(=)S
- (proc_ptr)336 1572 A
- 1950(=)S
- (proc_addr(IDLE);)672 2034 A
- 1800 V
- (07205)210 648 A
- 1026(})S
- 1980 V
- (07207)210 648 A
- (/*===========================================================================*)3276 1026 A
- 2070 V
- (07208)210 648 A
- 1068(*)S
- (ready)210 2370 A
- 4260(*)S
- 2160 V
- (07209)210 648 A
- (*===========================================================================*/)3276 1068 A
- 2250 V
- (07210)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (ready(rp))378 1572 A
- 2340 V
- (07211)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (proc)168 1698 A
- (*rp;)168 1908 A
- 2370(/*)S
- (this)168 2496 A
- (process)294 2706 A
- 3042(is)S
- (now)126 3168 A
- (runnable)336 3336 A
- 3714(*/)S
- 2430 V
- (07212)210 648 A
- 1026({)S
- 2520 V
- (07213)210 648 A
- 1026(/*)S
- (Add)126 1152 A
- ('rp')168 1320 A
- 1530(to)S
- (the)126 1656 A
- (end)126 1824 A
- 1992(of)S
- (one)126 2118 A
- 2286(of)S
- (the)126 2412 A
- (queues)252 2580 A
- 2874(of)S
- (runnable)336 3000 A
- (processes.)420 3378 A
- (Three)210 3840 A
- 2610 V
- (07214)210 648 A
- 1068(*)S
- (queues)252 1152 A
- (are)126 1446 A
- (maintained:)462 1614 A
- 2700 V
- (07215)210 648 A
- 1068(*)S
- (TASK_Q)252 1236 A
- 1614(-)S
- ((highest)336 1698 A
- (priority))378 2076 A
- (for)126 2496 A
- (runnable)336 2664 A
- (tasks)210 3042 A
- 2790 V
- (07216)210 648 A
- 1068(*)S
- (SERVER_Q)336 1236 A
- 1614(-)S
- ((middle)294 1698 A
- (priority))378 2034 A
- (for)126 2454 A
- 2622(MM)S
- (and)126 2748 A
- 2916(FS)S
- (only)168 3042 A
- 2880 V
- (07217)210 648 A
- 1068(*)S
- (USER_Q)252 1236 A
- 1614(-)S
- ((lowest)294 1698 A
- (priority))378 2034 A
- (for)126 2454 A
- (user)168 2622 A
- (processes)378 2832 A
- 2970 V
- (07218)210 648 A
- 1068(*/)S
- 3060 V
- (07219)210 648 A
- 3150 V
- (07220)210 648 A
- 1110(if)S
- ((istaskp(rp)))546 1236 A
- 1824({)S
- 3240 V
- (07221)210 648 A
- 1362(if)S
- ((rdy_head[TASK_Q])714 1488 A
- 2244(!=)S
- (NIL_PROC))378 2370 A
- 3330 V
- (07222)210 648 A
- 1698(/*)S
- (Add)126 1824 A
- 1992(to)S
- (tail)168 2118 A
- 2328(of)S
- (nonempty)336 2454 A
- (queue.)252 2832 A
- 3126(*/)S
- 3420 V
- (07223)210 648 A
- (rdy_tail[TASK_Q]->p_nextready)1218 1698 A
- 2958(=)S
- (rp;)126 3042 A
- 3510 V
- (07224)210 648 A
- (else)168 1362 A
- 1572({)S
- 3600 V
- (07225)210 648 A
- (proc_ptr)336 1698 A
- 2076(=)S
- 2706(/*)S
- (run)126 2832 A
- (fresh)210 3000 A
- (task)168 3252 A
- (next)168 3462 A
- 3672(*/)S
- 3690 V
- (07226)210 648 A
- (rdy_head[TASK_Q])672 1698 A
- 2412(=)S
- (rp;)126 2496 A
- 2706(/*)S
- (add)126 2832 A
- 3000(to)S
- (empty)210 3126 A
- (queue)210 3378 A
- 3630(*/)S
- 3780 V
- (07227)210 648 A
- 1362(})S
- 3870 V
- (07228)210 648 A
- (rdy_tail[TASK_Q])672 1362 A
- 2076(=)S
- (rp;)126 2160 A
- 3960 V
- (07229)210 648 A
- (rp->p_nextready)630 1362 A
- 2034(=)S
- (NIL_PROC;)378 2118 A
- 2706(/*)S
- (new)126 2832 A
- (entry)210 3000 A
- (has)126 3252 A
- 3420(no)S
- (successor)378 3546 A
- 3966(*/)S
- 4050 V
- (07230)210 648 A
- (return;)294 1362 A
- 4140 V
- (07231)210 648 A
- 1110(})S
- 4230 V
- (07232)210 648 A
- 1110(if)S
- ((!isuserp(rp)))588 1236 A
- 1866({)S
- 2370(/*)S
- (others)252 2496 A
- (are)126 2790 A
- (similar)294 2958 A
- 3294(*/)S
- 4320 V
- (07233)210 648 A
- 1362(if)S
- ((rdy_head[SERVER_Q])798 1488 A
- 2328(!=)S
- (NIL_PROC))378 2454 A
- 4410 V
- (07234)210 648 A
- (rdy_tail[SERVER_Q]->p_nextready)1302 1698 A
- 3042(=)S
- (rp;)126 3126 A
- 4500 V
- (07235)210 648 A
- (else)168 1362 A
- 4590 V
- (07236)210 648 A
- (rdy_head[SERVER_Q])756 1698 A
- 2496(=)S
- (rp;)126 2580 A
- 4680 V
- (07237)210 648 A
- (rdy_tail[SERVER_Q])756 1362 A
- 2160(=)S
- (rp;)126 2244 A
- 4770 V
- (07238)210 648 A
- (rp->p_nextready)630 1362 A
- 2034(=)S
- (NIL_PROC;)378 2118 A
- 4860 V
- (07239)210 648 A
- (return;)294 1362 A
- 4950 V
- (07240)210 648 A
- 1110(})S
- 5040 V
- (07241)210 648 A
- 1110(if)S
- ((rdy_head[USER_Q])714 1236 A
- 1992(==)S
- (NIL_PROC))378 2118 A
- 5130 V
- (07242)210 648 A
- (rdy_tail[USER_Q])672 1362 A
- 2076(=)S
- (rp;)126 2160 A
- 5220 V
- (07243)210 648 A
- (rp->p_nextready)630 1110 A
- 1782(=)S
- (rdy_head[USER_Q];)714 1866 A
- 5310 V
- (07244)210 648 A
- (rdy_head[USER_Q])672 1110 A
- 1824(=)S
- (rp;)126 1908 A
- 5400 V
- (07245)210 648 A
- 1026(/*)S
- 5490 V
- (07246)210 648 A
- 1110(if)S
- ((rdy_head[USER_Q])714 1236 A
- 1992(!=)S
- (NIL_PROC))378 2118 A
- 5580 V
- (07247)210 648 A
- (rdy_tail[USER_Q]->p_nextready)1218 1362 A
- 2622(=)S
- (rp;)126 2706 A
- 5670 V
- (07248)210 648 A
- (else)168 1110 A
- 5760 V
- (07249)210 648 A
- (rdy_head[USER_Q])672 1362 A
- 2076(=)S
- (rp;)126 2160 A
- 5850 V
- (07250)210 648 A
- (rdy_tail[USER_Q])672 1110 A
- 1824(=)S
- (rp;)126 1908 A
- 5940 V
- (07251)210 648 A
- (rp->p_nextready)630 1110 A
- 1782(=)S
- (NIL_PROC;)378 1866 A
- 6030 V
- (07252)210 648 A
- 1026(*/)S
- 6120 V
- (07253)210 648 A
- 1026(})S
- 8418 V
- EP
- %%Page: 88 88
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(88)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (07255)210 648 A
- (/*===========================================================================*)3276 1026 A
- 990 V
- (07256)210 648 A
- 1068(*)S
- (unready)294 2370 A
- 4260(*)S
- 1080 V
- (07257)210 648 A
- (*===========================================================================*/)3276 1068 A
- 1170 V
- (07258)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (unready(rp))462 1572 A
- 1260 V
- (07259)210 648 A
- (register)336 1026 A
- (struct)252 1404 A
- (proc)168 1698 A
- (*rp;)168 1908 A
- 2370(/*)S
- (this)168 2496 A
- (process)294 2706 A
- 3042(is)S
- 3168(no)S
- (longer)252 3294 A
- (runnable)336 3588 A
- 3966(*/)S
- 1350 V
- (07260)210 648 A
- 1026({)S
- 1440 V
- (07261)210 648 A
- 1026(/*)S
- 1152(A)S
- (process)294 1236 A
- (has)126 1572 A
- (blocked.)336 1740 A
- 2118(*/)S
- 1530 V
- (07262)210 648 A
- 1620 V
- (07263)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*xp;)168 1992 A
- 1710 V
- (07264)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (**qtail;)336 1992 A
- 2412(/*)S
- (TASK_Q,)294 2538 A
- (SERVER_Q,)378 2874 A
- 3294(or)S
- (USER_Q)252 3420 A
- (rdy_tail)336 3714 A
- 4092(*/)S
- 1800 V
- (07265)210 648 A
- 1890 V
- (07266)210 648 A
- 1110(if)S
- ((istaskp(rp)))546 1236 A
- 1824({)S
- 1980 V
- (07267)210 648 A
- 1362(/*)S
- (task)168 1488 A
- (stack)210 1698 A
- (still)210 1950 A
- (ok?)126 2202 A
- 2370(*/)S
- 2070 V
- (07268)210 648 A
- 1362(if)S
- ((*rp->p_stguard)630 1488 A
- 2160(!=)S
- (STACK_GUARD))504 2286 A
- 2160 V
- (07269)210 648 A
- (panic("stack)504 1698 A
- (overrun)294 2244 A
- 2580(by)S
- (task",)252 2706 A
- (proc_number(rp));)714 3000 A
- 2250 V
- (07270)210 648 A
- 2340 V
- (07271)210 648 A
- 1362(if)S
- 1488(()S
- ((xp)126 1572 A
- 1740(=)S
- (rdy_head[TASK_Q]))714 1824 A
- 2580(==)S
- (NIL_PROC))378 2706 A
- (return;)294 3126 A
- 2430 V
- (07272)210 648 A
- 1362(if)S
- ((xp)126 1488 A
- 1656(==)S
- (rp))126 1782 A
- 1950({)S
- 2520 V
- (07273)210 648 A
- 1698(/*)S
- (Remove)252 1824 A
- (head)168 2118 A
- 2328(of)S
- (queue)210 2454 A
- 2706(*/)S
- 2610 V
- (07274)210 648 A
- (rdy_head[TASK_Q])672 1698 A
- 2412(=)S
- (xp->p_nextready;)672 2496 A
- 2700 V
- (07275)210 648 A
- 1698(if)S
- ((rp)126 1824 A
- 1992(==)S
- (proc_ptr))378 2118 A
- (pick_proc();)504 2538 A
- 2790 V
- (07276)210 648 A
- (return;)294 1698 A
- 2880 V
- (07277)210 648 A
- 1362(})S
- 2970 V
- (07278)210 648 A
- (qtail)210 1362 A
- 1614(=)S
- (&rdy_tail[TASK_Q];)756 1698 A
- 3060 V
- (07279)210 648 A
- 1110(})S
- 3150 V
- (07280)210 648 A
- (else)168 1110 A
- 1320(if)S
- ((!isuserp(rp)))588 1446 A
- 2076({)S
- 3240 V
- (07281)210 648 A
- 1362(if)S
- 1488(()S
- ((xp)126 1572 A
- 1740(=)S
- (rdy_head[SERVER_Q]))798 1824 A
- 2664(==)S
- (NIL_PROC))378 2790 A
- (return;)294 3210 A
- 3330 V
- (07282)210 648 A
- 1362(if)S
- ((xp)126 1488 A
- 1656(==)S
- (rp))126 1782 A
- 1950({)S
- 3420 V
- (07283)210 648 A
- (rdy_head[SERVER_Q])756 1698 A
- 2496(=)S
- (xp->p_nextready;)672 2580 A
- 3510 V
- (07284)210 648 A
- (pick_proc();)504 1698 A
- 3600 V
- (07285)210 648 A
- (return;)294 1698 A
- 3690 V
- (07286)210 648 A
- 1362(})S
- 3780 V
- (07287)210 648 A
- (qtail)210 1362 A
- 1614(=)S
- (&rdy_tail[SERVER_Q];)840 1698 A
- 3870 V
- (07288)210 648 A
- 1110(})S
- (else)168 1194 A
- 3960 V
- (07289)210 648 A
- 1110({)S
- 4050 V
- (07290)210 648 A
- 1362(if)S
- 1488(()S
- ((xp)126 1572 A
- 1740(=)S
- (rdy_head[USER_Q]))714 1824 A
- 2580(==)S
- (NIL_PROC))378 2706 A
- (return;)294 3126 A
- 4140 V
- (07291)210 648 A
- 1362(if)S
- ((xp)126 1488 A
- 1656(==)S
- (rp))126 1782 A
- 1950({)S
- 4230 V
- (07292)210 648 A
- (rdy_head[USER_Q])672 1698 A
- 2412(=)S
- (xp->p_nextready;)672 2496 A
- 4320 V
- (07293)210 648 A
- (pick_proc();)504 1698 A
- 4410 V
- (07294)210 648 A
- (return;)294 1698 A
- 4500 V
- (07295)210 648 A
- 1362(})S
- 4590 V
- (07296)210 648 A
- (qtail)210 1362 A
- 1614(=)S
- (&rdy_tail[USER_Q];)756 1698 A
- 4680 V
- (07297)210 648 A
- 1110(})S
- 4770 V
- (07298)210 648 A
- 4860 V
- (07299)210 648 A
- 1110(/*)S
- (Search)252 1236 A
- (body)168 1530 A
- 1740(of)S
- (queue.)252 1866 A
- 2202(A)S
- (process)294 2286 A
- (can)126 2622 A
- 2790(be)S
- (made)168 2916 A
- (unready)294 3126 A
- (even)168 3462 A
- 3672(if)S
- 3798(it)S
- 3924(is)S
- 4950 V
- (07300)210 648 A
- 1152(*)S
- (not)126 1236 A
- (running)294 1404 A
- 1740(by)S
- (being)210 1866 A
- (sent)168 2118 A
- 2328(a)S
- (signal)252 2412 A
- (that)168 2706 A
- (kills)210 2916 A
- (it.)126 3168 A
- 5040 V
- (07301)210 648 A
- 1152(*/)S
- 5130 V
- (07302)210 648 A
- (while)210 1110 A
- ((xp->p_nextready)672 1362 A
- 2076(!=)S
- (rp))126 2202 A
- 5220 V
- (07303)210 648 A
- 1362(if)S
- 1488(()S
- ((xp)126 1572 A
- 1740(=)S
- (xp->p_nextready))672 1824 A
- 2538(==)S
- (NIL_PROC))378 2664 A
- (return;)294 3084 A
- 5310 V
- (07304)210 648 A
- (xp->p_nextready)630 1110 A
- 1782(=)S
- (xp->p_nextready->p_nextready;)1218 1866 A
- 5400 V
- (07305)210 648 A
- 1110(if)S
- ((*qtail)294 1236 A
- 1572(==)S
- (rp))126 1698 A
- (*qtail)252 1866 A
- 2160(=)S
- (xp;)126 2244 A
- 5490 V
- (07306)210 648 A
- 1026(})S
- 5670 V
- (07308)210 648 A
- (/*===========================================================================*)3276 1026 A
- 5760 V
- (07309)210 648 A
- 1068(*)S
- (sched)210 2370 A
- 4260(*)S
- 5850 V
- (07310)210 648 A
- (*===========================================================================*/)3276 1068 A
- 5940 V
- (07311)210 648 A
- (PRIVATE)294 1026 A
- (void)168 1362 A
- (sched())294 1572 A
- 6030 V
- (07312)210 648 A
- 1026({)S
- 6120 V
- (07313)210 648 A
- 1026(/*)S
- (The)126 1152 A
- (current)294 1320 A
- (process)294 1656 A
- (has)126 1992 A
- (run)126 2160 A
- (too)126 2328 A
- (long.)210 2496 A
- 2790(If)S
- (another)294 2916 A
- (low)126 3252 A
- (priority)336 3420 A
- ((user))252 3798 A
- 6210 V
- (07314)210 648 A
- 1068(*)S
- (process)294 1152 A
- 1488(is)S
- (runnable,)378 1614 A
- (put)126 2034 A
- (the)126 2202 A
- (current)294 2370 A
- (process)294 2706 A
- 3042(on)S
- (the)126 3168 A
- (end)126 3336 A
- 3504(of)S
- (the)126 3630 A
- (user)168 3798 A
- (queue,)252 4008 A
- 8418 V
- EP
- %%Page: 89 89
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 12 B
- 4308(89)S
- 900 V
- 7 LST
- (07315)210 648 A
- 1068(*)S
- (possibly)336 1152 A
- (promoting)378 1530 A
- (another)294 1950 A
- (user)168 2286 A
- 2496(to)S
- (head)168 2622 A
- 2832(of)S
- (the)126 2958 A
- (queue.)252 3126 A
- 990 V
- (07316)210 648 A
- 1068(*/)S
- 1080 V
- (07317)210 648 A
- 1170 V
- (07318)210 648 A
- 1110(if)S
- ((rdy_head[USER_Q])714 1236 A
- 1992(==)S
- (NIL_PROC))378 2118 A
- (return;)294 2538 A
- 1260 V
- (07319)210 648 A
- 1350 V
- (07320)210 648 A
- 1110(/*)S
- (One)126 1236 A
- 1404(or)S
- (more)168 1530 A
- (user)168 1740 A
- (processes)378 1950 A
- (queued.)294 2370 A
- 2706(*/)S
- 1440 V
- (07321)210 648 A
- (rdy_tail[USER_Q]->p_nextready)1218 1110 A
- 2370(=)S
- (rdy_head[USER_Q];)714 2454 A
- 1530 V
- (07322)210 648 A
- (rdy_tail[USER_Q])672 1110 A
- 1824(=)S
- (rdy_head[USER_Q];)714 1908 A
- 1620 V
- (07323)210 648 A
- (rdy_head[USER_Q])672 1110 A
- 1824(=)S
- (rdy_head[USER_Q]->p_nextready;)1260 1908 A
- 1710 V
- (07324)210 648 A
- (rdy_tail[USER_Q]->p_nextready)1218 1110 A
- 2370(=)S
- (NIL_PROC;)378 2454 A
- 1800 V
- (07325)210 648 A
- (pick_proc();)504 1110 A
- 1890 V
- (07326)210 648 A
- 1026(})S
- 2070 V
- (07328)210 648 A
- (/*==========================================================================*)3234 1026 A
- 2160 V
- (07329)210 648 A
- 1068(*)S
- (lock_mini_send)588 2370 A
- 4218(*)S
- 2250 V
- (07330)210 648 A
- (*==========================================================================*/)3234 1068 A
- 2340 V
- (07331)210 648 A
- (PUBLIC)252 1026 A
- (int)126 1320 A
- (lock_mini_send(caller_ptr,)1092 1488 A
- (dest,)210 2622 A
- (m_ptr))252 2874 A
- 2430 V
- (07332)210 648 A
- (struct)252 1026 A
- (proc)168 1320 A
- (*caller_ptr;)504 1530 A
- 2370(/*)S
- (who)126 2496 A
- 2664(is)S
- (trying)252 2790 A
- 3084(to)S
- (send)168 3210 A
- 3420(a)S
- (message?)336 3504 A
- 3882(*/)S
- 2520 V
- (07333)210 648 A
- (int)126 1026 A
- (dest;)210 1194 A
- 2370(/*)S
- 2496(to)S
- (whom)168 2622 A
- 2832(is)S
- (message)294 2958 A
- (being)210 3294 A
- (sent?)210 3546 A
- 3798(*/)S
- 2610 V
- (07334)210 648 A
- (message)294 1026 A
- (*m_ptr;)294 1362 A
- 2370(/*)S
- (pointer)294 2496 A
- 2832(to)S
- (message)294 2958 A
- (buffer)252 3294 A
- 3588(*/)S
- 2700 V
- (07335)210 648 A
- 1026({)S
- 2790 V
- (07336)210 648 A
- 1026(/*)S
- (Safe)168 1152 A
- (gateway)294 1362 A
- 1698(to)S
- (mini_send())462 1824 A
- (for)126 2328 A
- (tasks.)252 2496 A
- 2790(*/)S
- 2880 V
- (07337)210 648 A
- 2970 V
- (07338)210 648 A
- (int)126 1110 A
- (result;)294 1278 A
- 3060 V
- (07339)210 648 A
- 3150 V
- (07340)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (TRUE;)210 1614 A
- 3240 V
- (07341)210 648 A
- (result)252 1110 A
- 1404(=)S
- (mini_send(caller_ptr,)882 1488 A
- (dest,)210 2412 A
- (m_ptr);)294 2664 A
- 3330 V
- (07342)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (FALSE;)252 1614 A
- 3420 V
- (07343)210 648 A
- (return(result);)630 1110 A
- 3510 V
- (07344)210 648 A
- 1026(})S
- 3690 V
- (07346)210 648 A
- (/*==========================================================================*)3234 1026 A
- 3780 V
- (07347)210 648 A
- 1068(*)S
- (lock_pick_proc)588 2370 A
- 4218(*)S
- 3870 V
- (07348)210 648 A
- (*==========================================================================*/)3234 1068 A
- 3960 V
- (07349)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (lock_pick_proc())672 1530 A
- 4050 V
- (07350)210 648 A
- 1026({)S
- 4140 V
- (07351)210 648 A
- 1026(/*)S
- (Safe)168 1152 A
- (gateway)294 1362 A
- 1698(to)S
- (pick_proc())462 1824 A
- (for)126 2328 A
- (tasks.)252 2496 A
- 2790(*/)S
- 4230 V
- (07352)210 648 A
- 4320 V
- (07353)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (TRUE;)210 1614 A
- 4410 V
- (07354)210 648 A
- (pick_proc();)504 1110 A
- 4500 V
- (07355)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (FALSE;)252 1614 A
- 4590 V
- (07356)210 648 A
- 1026(})S
- 4770 V
- (07358)210 648 A
- (/*==========================================================================*)3234 1026 A
- 4860 V
- (07359)210 648 A
- 1068(*)S
- (lock_ready)420 2370 A
- 4218(*)S
- 4950 V
- (07360)210 648 A
- (*==========================================================================*/)3234 1068 A
- 5040 V
- (07361)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (lock_ready(rp))588 1530 A
- 5130 V
- (07362)210 648 A
- (struct)252 1026 A
- (proc)168 1320 A
- (*rp;)168 1530 A
- 2370(/*)S
- (this)168 2496 A
- (process)294 2706 A
- 3042(is)S
- (now)126 3168 A
- (runnable)336 3336 A
- 3714(*/)S
- 5220 V
- (07363)210 648 A
- 1026({)S
- 5310 V
- (07364)210 648 A
- 1026(/*)S
- (Safe)168 1152 A
- (gateway)294 1362 A
- 1698(to)S
- (ready())294 1824 A
- (for)126 2160 A
- (tasks.)252 2328 A
- 2622(*/)S
- 5400 V
- (07365)210 648 A
- 5490 V
- (07366)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (TRUE;)210 1614 A
- 5580 V
- (07367)210 648 A
- (ready(rp);)420 1110 A
- 5670 V
- (07368)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (FALSE;)252 1614 A
- 5760 V
- (07369)210 648 A
- 1026(})S
- 6030 V
- (07372)210 648 A
- (/*==========================================================================*)3234 1026 A
- 6120 V
- (07373)210 648 A
- 1068(*)S
- (lock_unready)504 2370 A
- 4218(*)S
- 6210 V
- (07374)210 648 A
- (*==========================================================================*/)3234 1068 A
- 8418 V
- EP
- %%Page: 90 90
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(90)S
- 11 R
- 2049(File:)S
- 2282(src/kernel/proc.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (07375)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (lock_unready(rp))672 1530 A
- 990 V
- (07376)210 648 A
- (struct)252 1026 A
- (proc)168 1320 A
- (*rp;)168 1530 A
- 2370(/*)S
- (this)168 2496 A
- (process)294 2706 A
- 3042(is)S
- 3168(no)S
- (longer)252 3294 A
- (runnable)336 3588 A
- 3966(*/)S
- 1080 V
- (07377)210 648 A
- 1026({)S
- 1170 V
- (07378)210 648 A
- 1026(/*)S
- (Safe)168 1152 A
- (gateway)294 1362 A
- 1698(to)S
- (unready())378 1824 A
- (for)126 2244 A
- (tasks.)252 2412 A
- 2706(*/)S
- 1260 V
- (07379)210 648 A
- 1350 V
- (07380)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (TRUE;)210 1614 A
- 1440 V
- (07381)210 648 A
- (unready(rp);)504 1110 A
- 1530 V
- (07382)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (FALSE;)252 1614 A
- 1620 V
- (07383)210 648 A
- 1026(})S
- 1800 V
- (07385)210 648 A
- (/*==========================================================================*)3234 1026 A
- 1890 V
- (07386)210 648 A
- 1068(*)S
- (lock_sched)420 2370 A
- 4218(*)S
- 1980 V
- (07387)210 648 A
- (*==========================================================================*/)3234 1068 A
- 2070 V
- (07388)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (lock_sched())504 1530 A
- 2160 V
- (07389)210 648 A
- 1026({)S
- 2250 V
- (07390)210 648 A
- 1026(/*)S
- (Safe)168 1152 A
- (gateway)294 1362 A
- 1698(to)S
- (sched())294 1824 A
- (for)126 2160 A
- (tasks.)252 2328 A
- 2622(*/)S
- 2340 V
- (07391)210 648 A
- 2430 V
- (07392)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (TRUE;)210 1614 A
- 2520 V
- (07393)210 648 A
- (sched();)336 1110 A
- 2610 V
- (07394)210 648 A
- (switching)378 1110 A
- 1530(=)S
- (FALSE;)252 1614 A
- 2700 V
- (07395)210 648 A
- 1026(})S
- 2880 V
- (07397)210 648 A
- (/*==========================================================================*)3234 1026 A
- 2970 V
- (07398)210 648 A
- 1068(*)S
- (unhold)252 2370 A
- 4218(*)S
- 3060 V
- (07399)210 648 A
- (*==========================================================================*/)3234 1068 A
- 3150 V
- (07400)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (unhold())336 1530 A
- 3240 V
- (07401)210 648 A
- 1026({)S
- 3330 V
- (07402)210 648 A
- 1026(/*)S
- (Flush)210 1152 A
- (any)126 1404 A
- (held-up)294 1572 A
- (interrupts.)462 1908 A
- (k_reenter)378 2454 A
- (must)168 2874 A
- 3084(be)S
- 3210(0.)S
- (held_head)378 3378 A
- (must)168 3798 A
- (not)126 4008 A
- 3420 V
- (07403)210 648 A
- 1068(*)S
- 1152(be)S
- (NIL_PROC.)378 1278 A
- (Interrupts)420 1740 A
- (must)168 2202 A
- 2412(be)S
- (disabled.)378 2538 A
- (They)168 3000 A
- (will)168 3210 A
- 3420(be)S
- (enabled)294 3546 A
- (but)126 3882 A
- (will)168 4050 A
- 3510 V
- (07404)210 648 A
- 1068(*)S
- 1152(be)S
- (disabled)336 1278 A
- (when)168 1656 A
- (this)168 1866 A
- (returns.)336 2076 A
- 3600 V
- (07405)210 648 A
- 1068(*/)S
- 3690 V
- (07406)210 648 A
- 3780 V
- (07407)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*rp;)168 1992 A
- 2370(/*)S
- (current)294 2496 A
- (head)168 2832 A
- 3042(of)S
- (held)168 3168 A
- (queue)210 3378 A
- 3630(*/)S
- 3870 V
- (07408)210 648 A
- 3960 V
- (07409)210 648 A
- 1110(if)S
- ((switching))462 1236 A
- (return;)294 1740 A
- 4050 V
- (07410)210 648 A
- 1110(rp)S
- 1236(=)S
- (held_head;)420 1320 A
- 4140 V
- (07411)210 648 A
- 1110(do)S
- 1236({)S
- 4230 V
- (07412)210 648 A
- 1362(if)S
- 1488(()S
- ((held_head)420 1572 A
- 2034(=)S
- (rp->p_nextheld))630 2118 A
- 2790(==)S
- (NIL_PROC))378 2916 A
- (held_tail)378 3336 A
- 3756(=)S
- (NIL_PROC;)378 3840 A
- 4320 V
- (07413)210 648 A
- (rp->p_int_held)588 1362 A
- 1992(=)S
- (FALSE;)252 2076 A
- 4410 V
- (07414)210 648 A
- (unlock();)378 1362 A
- 2370(/*)S
- (reduce)252 2496 A
- (latency;)336 2790 A
- (held)168 3168 A
- (queue)210 3378 A
- (may)126 3630 A
- (change!)294 3798 A
- 4134(*/)S
- 4500 V
- (07415)210 648 A
- (interrupt(proc_number(rp));)1134 1362 A
- 4590 V
- (07416)210 648 A
- (lock();)294 1362 A
- 2370(/*)S
- (protect)294 2496 A
- (the)126 2832 A
- (held)168 3000 A
- (queue)210 3210 A
- (again)210 3462 A
- 3714(*/)S
- 4680 V
- (07417)210 648 A
- 1110(})S
- 4770 V
- (07418)210 648 A
- (while)210 1110 A
- 1362(()S
- ((rp)126 1446 A
- 1614(=)S
- (held_head))420 1698 A
- 2160(!=)S
- (NIL_PROC);)420 2286 A
- 4860 V
- (07419)210 648 A
- 1026(})S
- 8418 V
- EP
- %%Page: 91 91
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 1931(File:)S
- 2164(src/kernel/exception.c)S
- 12 B
- 4308(91)S
- 990 V
- 7 LST
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1080 V
- (src/kernel/exception.c)924 2034 A
- 1170 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1350 V
- (07500)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- 1950(a)S
- (simple)252 2034 A
- (exception)378 2328 A
- (handler.)336 2748 A
- (Exceptions)420 3168 A
- 3630(in)S
- (user)168 3756 A
- 1440 V
- (07501)210 648 A
- 1068(*)S
- (processes)378 1152 A
- (are)126 1572 A
- (converted)378 1740 A
- 2160(to)S
- (signals.)336 2286 A
- (Exceptions)420 2706 A
- 3168(in)S
- (the)126 3294 A
- (kernel,)294 3462 A
- 3798(MM)S
- (and)126 3924 A
- 1530 V
- (07502)210 648 A
- 1068(*)S
- 1152(FS)S
- (cause)210 1278 A
- 1530(a)S
- (panic.)252 1614 A
- 1620 V
- (07503)210 648 A
- 1068(*/)S
- 1710 V
- (07504)210 648 A
- 1800 V
- (07505)210 648 A
- (#include)336 1026 A
- ("kernel.h")420 1404 A
- 1890 V
- (07506)210 648 A
- (#include)336 1026 A
- (<signal.h>)420 1404 A
- 1980 V
- (07507)210 648 A
- (#include)336 1026 A
- ("proc.h")336 1404 A
- 2070 V
- (07508)210 648 A
- 2160 V
- (07509)210 648 A
- (/*==========================================================================*)3234 1026 A
- 2250 V
- (07510)210 648 A
- 1068(*)S
- (exception)378 2370 A
- 4218(*)S
- 2340 V
- (07511)210 648 A
- (*==========================================================================*/)3234 1068 A
- 2430 V
- (07512)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (exception(vec_nr))714 1530 A
- 2520 V
- (07513)210 648 A
- (unsigned)336 1026 A
- (vec_nr;)294 1404 A
- 2610 V
- (07514)210 648 A
- 1026({)S
- 2700 V
- (07515)210 648 A
- 1026(/*)S
- 1152(An)S
- (exception)378 1278 A
- 1698(or)S
- (unexpected)420 1824 A
- (interrupt)378 2286 A
- (has)126 2706 A
- (occurred.)378 2874 A
- 3294(*/)S
- 2790 V
- (07516)210 648 A
- 2880 V
- (07517)210 648 A
- (struct)252 1110 A
- (ex_s)168 1404 A
- 1614({)S
- 2970 V
- (07518)210 648 A
- (char)168 1362 A
- (*msg;)210 1572 A
- 3060 V
- (07519)210 648 A
- (int)126 1362 A
- (signum;)294 1530 A
- 3150 V
- (07520)210 648 A
- (int)126 1362 A
- (minprocessor;)546 1530 A
- 3240 V
- (07521)210 648 A
- 1110(};)S
- 3330 V
- (07522)210 648 A
- (static)252 1110 A
- (struct)252 1404 A
- (ex_s)168 1698 A
- (ex_data[])378 1908 A
- 2328(=)S
- 2412({)S
- 3420 V
- (07523)210 648 A
- ("Divide)294 1362 A
- (error",)294 1698 A
- (SIGFPE,)294 2034 A
- (86,)126 2370 A
- 3510 V
- (07524)210 648 A
- ("Debug)252 1362 A
- (exception",)462 1656 A
- (SIGTRAP,)336 2160 A
- (86,)126 2538 A
- 3600 V
- (07525)210 648 A
- ("Nonmaskable)504 1362 A
- (interrupt",)462 1908 A
- (SIGBUS,)294 2412 A
- (86,)126 2748 A
- 3690 V
- (07526)210 648 A
- ("Breakpoint",)546 1362 A
- (SIGEMT,)294 1950 A
- (86,)126 2286 A
- 3780 V
- (07527)210 648 A
- ("Overflow",)462 1362 A
- (SIGFPE,)294 1866 A
- (86,)126 2202 A
- 3870 V
- (07528)210 648 A
- ("Bounds)294 1362 A
- (check",)294 1698 A
- (SIGFPE,)294 2034 A
- (186,)168 2370 A
- 3960 V
- (07529)210 648 A
- ("Invalid)336 1362 A
- (opcode",)336 1740 A
- (SIGILL,)294 2118 A
- (186,)168 2454 A
- 4050 V
- (07530)210 648 A
- ("Coprocessor)504 1362 A
- (not)126 1908 A
- (available",)462 2076 A
- (SIGFPE,)294 2580 A
- (186,)168 2916 A
- 4140 V
- (07531)210 648 A
- ("Double)294 1362 A
- (fault",)294 1698 A
- (SIGBUS,)294 2034 A
- (286,)168 2370 A
- 4230 V
- (07532)210 648 A
- ("Copressor)420 1362 A
- (segment)294 1824 A
- (overrun",)378 2160 A
- (SIGSEGV,)336 2580 A
- (286,)168 2958 A
- 4320 V
- (07533)210 648 A
- ("Invalid)336 1362 A
- (TSS",)210 1740 A
- (SIGSEGV,)336 1992 A
- (286,)168 2370 A
- 4410 V
- (07534)210 648 A
- ("Segment)336 1362 A
- (not)126 1740 A
- (present",)378 1908 A
- (SIGSEGV,)336 2328 A
- (286,)168 2706 A
- 4500 V
- (07535)210 648 A
- ("Stack)252 1362 A
- (exception",)462 1656 A
- (SIGSEGV,)336 2160 A
- (286,)168 2538 A
- 3042(/*)S
- (STACK_FAULT)462 3168 A
- (already)294 3672 A
- (used)168 4008 A
- 4218(*/)S
- 4590 V
- (07536)210 648 A
- ("General)336 1362 A
- (protection",)504 1740 A
- (SIGSEGV,)336 2286 A
- (286,)168 2664 A
- 4680 V
- (07537)210 648 A
- ("Page)210 1362 A
- (fault",)294 1614 A
- (SIGSEGV,)336 1950 A
- (386,)168 2328 A
- 3042(/*)S
- (not)126 3168 A
- (close)210 3336 A
- 3588(*/)S
- 4770 V
- (07538)210 648 A
- (NIL_PTR,)336 1362 A
- (SIGILL,)294 1740 A
- 2076(0,)S
- 3042(/*)S
- (probably)336 3168 A
- (software)336 3546 A
- (trap)168 3924 A
- 4134(*/)S
- 4860 V
- (07539)210 648 A
- ("Coprocessor)504 1362 A
- (error",)294 1908 A
- (SIGFPE,)294 2244 A
- (386,)168 2580 A
- 4950 V
- (07540)210 648 A
- 1110(};)S
- 5040 V
- (07541)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (ex_s)168 1782 A
- (*ep;)168 1992 A
- 5130 V
- (07542)210 648 A
- (struct)252 1110 A
- (proc)168 1404 A
- (*saved_proc;)504 1614 A
- 5220 V
- (07543)210 648 A
- 5310 V
- (07544)210 648 A
- (saved_proc=)462 1110 A
- (proc_ptr;)378 1614 A
- 2034(/*)S
- (Save)168 2160 A
- (proc_ptr,)378 2370 A
- (because)294 2790 A
- 3126(it)S
- (may)126 3252 A
- 3420(be)S
- (changed)294 3546 A
- 3882(by)S
- (debug)210 4008 A
- 5400 V
- (07545)210 648 A
- 2076(*)S
- (statements.)462 2160 A
- 5490 V
- (07546)210 648 A
- 2076(*/)S
- 5580 V
- (07547)210 648 A
- 5670 V
- (07548)210 648 A
- 1110(ep)S
- 1236(=)S
- (&ex_data[vec_nr];)714 1320 A
- 5760 V
- (07549)210 648 A
- 5850 V
- (07550)210 648 A
- 1110(if)S
- ((vec_nr)294 1236 A
- 1572(==)S
- 1698(2))S
- 1824({)S
- 2370(/*)S
- (spurious)336 2496 A
- (NMI)126 2874 A
- 3042(on)S
- (some)168 3168 A
- (machines)336 3378 A
- 3756(*/)S
- 5940 V
- (07551)210 648 A
- (printf("got)462 1362 A
- (spurious)336 1866 A
- (NMI\n");)336 2244 A
- 6030 V
- (07552)210 648 A
- (return;)294 1362 A
- 6120 V
- (07553)210 648 A
- 1110(})S
- 6210 V
- (07554)210 648 A
- 8418 V
- EP
- %%Page: 92 92
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(92)S
- 11 R
- 1931(File:)S
- 2164(src/kernel/exception.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (07555)210 648 A
- 1110(if)S
- ((k_reenter)420 1236 A
- 1698(==)S
- 1824(0)S
- 1908(&&)S
- (isuserp(saved_proc)))840 2034 A
- 2916({)S
- 990 V
- (07556)210 648 A
- (unlock();)378 1362 A
- 2370(/*)S
- (this)168 2496 A
- 2706(is)S
- (protected)378 2832 A
- (like)168 3252 A
- (sys_call())420 3462 A
- 3924(*/)S
- 1080 V
- (07557)210 648 A
- (cause_sig(proc_number(saved_proc),)1428 1362 A
- (ep->signum);)504 2832 A
- 1170 V
- (07558)210 648 A
- (return;)294 1362 A
- 1260 V
- (07559)210 648 A
- 1110(})S
- 1350 V
- (07560)210 648 A
- 1440 V
- (07561)210 648 A
- 1110(/*)S
- (This)168 1236 A
- 1446(is)S
- (not)126 1572 A
- (supposed)336 1740 A
- 2118(to)S
- (happen.)294 2244 A
- 2580(*/)S
- 1530 V
- (07562)210 648 A
- 1110(if)S
- ((ep->msg)336 1236 A
- 1614(==)S
- (NIL_PTR)294 1740 A
- 2076(||)S
- (processor)378 2202 A
- 2622(<)S
- (ep->minprocessor))714 2706 A
- 1620 V
- (07563)210 648 A
- (printf("\nIntel-reserved)1008 1362 A
- (exception)378 2412 A
- (%d\n",)252 2832 A
- (vec_nr);)336 3126 A
- 1710 V
- (07564)210 648 A
- (else)168 1110 A
- 1800 V
- (07565)210 648 A
- (printf("\n%s\n",)672 1362 A
- (ep->msg);)378 2076 A
- 1890 V
- (07566)210 648 A
- (printf("process)630 1110 A
- (number)252 1782 A
- (%d,)126 2076 A
- 2244(pc)S
- 2370(=)S
- (0x%04x:0x%08x\n",)714 2454 A
- 1980 V
- (07567)210 648 A
- (proc_number(saved_proc),)1008 1362 A
- 2070 V
- (07568)210 648 A
- ((unsigned))420 1362 A
- (saved_proc->p_reg.cs,)882 1824 A
- 2160 V
- (07569)210 648 A
- ((unsigned))420 1362 A
- (saved_proc->p_reg.pc);)924 1824 A
- 2250 V
- (07570)210 648 A
- (panic("exception)672 1110 A
- 1824(in)S
- (system)252 1950 A
- (code",)252 2244 A
- (NO_NUM);)336 2538 A
- 2340 V
- (07571)210 648 A
- 1026(})S
- 2790 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 2880 V
- (src/kernel/i8259.c)756 2034 A
- 2970 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 3150 V
- (07600)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (routines)336 1950 A
- (for)126 2328 A
- (initializing)504 2496 A
- (the)126 3042 A
- (8259)168 3210 A
- (interrupt)378 3420 A
- (controller:)462 3840 A
- 3240 V
- (07601)210 648 A
- 1068(*)S
- (get_irq_handler:)672 1362 A
- (address)294 2076 A
- 2412(of)S
- (handler)294 2538 A
- (for)126 2874 A
- 3042(a)S
- (given)210 3126 A
- (interrupt)378 3378 A
- 3330 V
- (07602)210 648 A
- 1068(*)S
- (put_irq_handler:)672 1362 A
- (register)336 2076 A
- 2454(an)S
- (interrupt)378 2580 A
- (handler)294 3000 A
- 3420 V
- (07603)210 648 A
- 1068(*)S
- (intr_init:)420 1362 A
- (initialize)420 2034 A
- (the)126 2496 A
- (interrupt)378 2664 A
- (controller(s))546 3084 A
- 3510 V
- (07604)210 648 A
- 1068(*/)S
- 3600 V
- (07605)210 648 A
- 3690 V
- (07606)210 648 A
- (#include)336 1026 A
- ("kernel.h")420 1404 A
- 3780 V
- (07607)210 648 A
- 3870 V
- (07608)210 648 A
- (#define)294 1026 A
- (ICW1_AT)294 1362 A
- (0x11)168 2034 A
- 2370(/*)S
- (edge)168 2496 A
- (triggered,)420 2706 A
- (cascade,)336 3168 A
- (need)168 3546 A
- (ICW4)168 3756 A
- 3966(*/)S
- 3960 V
- (07609)210 648 A
- (#define)294 1026 A
- (ICW1_PC)294 1362 A
- (0x13)168 2034 A
- 2370(/*)S
- (edge)168 2496 A
- (triggered,)420 2706 A
- 3168(no)S
- (cascade,)336 3294 A
- (need)168 3672 A
- (ICW4)168 3882 A
- 4092(*/)S
- 4050 V
- (07610)210 648 A
- (#define)294 1026 A
- (ICW1_PS)294 1362 A
- (0x19)168 2034 A
- 2370(/*)S
- (level)210 2496 A
- (triggered,)420 2748 A
- (cascade,)336 3210 A
- (need)168 3588 A
- (ICW4)168 3798 A
- 4008(*/)S
- 4140 V
- (07611)210 648 A
- (#define)294 1026 A
- (ICW4_AT)294 1362 A
- (0x01)168 2034 A
- 2370(/*)S
- (not)126 2496 A
- (SFNM,)210 2664 A
- (not)126 2916 A
- (buffered,)378 3084 A
- (normal)252 3504 A
- (EOI,)168 3798 A
- (8086)168 4008 A
- 4218(*/)S
- 4230 V
- (07612)210 648 A
- (#define)294 1026 A
- (ICW4_PC)294 1362 A
- (0x09)168 2034 A
- 2370(/*)S
- (not)126 2496 A
- (SFNM,)210 2664 A
- (buffered,)378 2916 A
- (normal)252 3336 A
- (EOI,)168 3630 A
- (8086)168 3840 A
- 4050(*/)S
- 4320 V
- (07613)210 648 A
- 4410 V
- (07614)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (int)126 1866 A
- (spurious_irq,)546 2034 A
- ((int)168 2622 A
- (irq))168 2832 A
- 3042();)S
- 4500 V
- (07615)210 648 A
- 4590 V
- (07616)210 648 A
- (#define)294 1026 A
- (set_vec(nr,)462 1362 A
- (addr))210 1866 A
- (((void)0))378 2370 A
- 2790(/*)S
- (kluge)210 2916 A
- (for)126 3168 A
- (protected)378 3336 A
- (mode)168 3756 A
- 3966(*/)S
- 4680 V
- (07617)210 648 A
- 4770 V
- (07618)210 648 A
- (/*==========================================================================*)3234 1026 A
- 4860 V
- (07619)210 648 A
- 1068(*)S
- (intr_init)378 2370 A
- 4218(*)S
- 4950 V
- (07620)210 648 A
- (*==========================================================================*/)3234 1068 A
- 5040 V
- (07621)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (intr_init(mine))630 1530 A
- 5130 V
- (07622)210 648 A
- (int)126 1026 A
- (mine;)210 1194 A
- 5220 V
- (07623)210 648 A
- 1026({)S
- 5310 V
- (07624)210 648 A
- 1026(/*)S
- (Initialize)420 1152 A
- (the)126 1614 A
- (8259s,)252 1782 A
- (finishing)378 2076 A
- (with)168 2496 A
- (all)126 2706 A
- (interrupts)420 2874 A
- (disabled.)378 3336 A
- (This)168 3798 A
- 4008(is)S
- 5400 V
- (07625)210 648 A
- 1068(*)S
- (only)168 1152 A
- (done)168 1362 A
- 1572(in)S
- (protected)378 1698 A
- (mode,)210 2118 A
- 2370(in)S
- (real)168 2496 A
- (mode)168 2706 A
- 2916(we)S
- (don't)210 3042 A
- (touch)210 3294 A
- (the)126 3546 A
- (8259s,)252 3714 A
- (but)126 4008 A
- 5490 V
- (07626)210 648 A
- 1068(*)S
- (use)126 1152 A
- (the)126 1320 A
- (BIOS)168 1488 A
- (locations)378 1698 A
- (instead.)336 2118 A
- (The)126 2538 A
- (flag)168 2706 A
- ("mine")252 2916 A
- 3210(is)S
- (set)126 3336 A
- 3504(if)S
- (the)126 3630 A
- (8259s)210 3798 A
- (are)126 4050 A
- 5580 V
- (07627)210 648 A
- 1068(*)S
- 1152(to)S
- 1278(be)S
- (programmed)420 1404 A
- (for)126 1866 A
- (Minix,)252 2034 A
- 2328(or)S
- 2454(to)S
- 2580(be)S
- (reset)210 2706 A
- 2958(to)S
- (what)168 3084 A
- (the)126 3294 A
- (BIOS)168 3462 A
- (expects.)336 3672 A
- 5670 V
- (07628)210 648 A
- 1068(*/)S
- 5760 V
- (07629)210 648 A
- 5850 V
- (07630)210 648 A
- (int)126 1110 A
- 1278(i;)S
- 5940 V
- (07631)210 648 A
- 6030 V
- (07632)210 648 A
- (lock();)294 1110 A
- 6120 V
- (07633)210 648 A
- 1110(/*)S
- (The)126 1236 A
- 1404(AT)S
- (and)126 1530 A
- (newer)210 1698 A
- (PS/2)168 1950 A
- (have)168 2160 A
- (two)126 2370 A
- (interrupt)378 2538 A
- (controllers,)504 2958 A
- (one)126 3504 A
- (master,)294 3672 A
- 6210 V
- (07634)210 648 A
- 1152(*)S
- (one)126 1236 A
- (slaved)252 1404 A
- 1698(at)S
- (IRQ)126 1824 A
- 1992(2.)S
- ((We)126 2160 A
- (don't)210 2328 A
- (have)168 2580 A
- 2790(to)S
- (deal)168 2916 A
- (with)168 3126 A
- (the)126 3336 A
- 3504(PC)S
- (that)168 3630 A
- 8418 V
- EP
- %%Page: 93 93
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 2022(File:)S
- (src/kernel/i8259.c)799 2255 A
- 12 B
- 4308(93)S
- 900 V
- 7 LST
- (07635)210 648 A
- 1152(*)S
- (has)126 1236 A
- (just)168 1404 A
- (one)126 1614 A
- (controller,)462 1782 A
- (because)294 2286 A
- 2622(it)S
- (must)168 2748 A
- (run)126 2958 A
- 3126(in)S
- (real)168 3252 A
- (mode.))252 3462 A
- 990 V
- (07636)210 648 A
- 1152(*/)S
- 1080 V
- (07637)210 648 A
- (out_byte(INT_CTL,)714 1110 A
- (ps_mca)252 1866 A
- 2160(?)S
- (ICW1_PS)294 2244 A
- 2580(:)S
- (ICW1_AT);)378 2664 A
- 1170 V
- (07638)210 648 A
- (out_byte(INT_CTLMASK,)882 1110 A
- (mine)168 2034 A
- 2244(?)S
- (IRQ0_VECTOR)462 2328 A
- 2832(:)S
- (BIOS_IRQ0_VEC);)630 2916 A
- 1260 V
- (07639)210 648 A
- 3042(/*)S
- (ICW2)168 3168 A
- (for)126 3378 A
- (master)252 3546 A
- 3840(*/)S
- 1350 V
- (07640)210 648 A
- (out_byte(INT_CTLMASK,)882 1110 A
- 2034((1)S
- 2160(<<)S
- (CASCADE_IRQ));)588 2286 A
- 3042(/*)S
- (ICW3)168 3168 A
- (tells)210 3378 A
- (slaves)252 3630 A
- 3924(*/)S
- 1440 V
- (07641)210 648 A
- (out_byte(INT_CTLMASK,)882 1110 A
- (ICW4_AT);)378 2034 A
- 1530 V
- (07642)210 648 A
- (out_byte(INT_CTLMASK,)882 1110 A
- (304(1)126 2034 A
- 2202(<<)S
- (CASCADE_IRQ));)588 2328 A
- 3042(/*)S
- (IRQ)126 3168 A
- (0-7)126 3336 A
- (mask)168 3504 A
- 3714(*/)S
- 1620 V
- (07643)210 648 A
- (out_byte(INT2_CTL,)756 1110 A
- (ps_mca)252 1908 A
- 2202(?)S
- (ICW1_PS)294 2286 A
- 2622(:)S
- (ICW1_AT);)378 2706 A
- 1710 V
- (07644)210 648 A
- (out_byte(INT2_CTLMASK,)924 1110 A
- (mine)168 2076 A
- 2286(?)S
- (IRQ8_VECTOR)462 2370 A
- 2874(:)S
- (BIOS_IRQ8_VEC);)630 2958 A
- 1800 V
- (07645)210 648 A
- 3042(/*)S
- (ICW2)168 3168 A
- (for)126 3378 A
- (slave)210 3546 A
- 3798(*/)S
- 1890 V
- (07646)210 648 A
- (out_byte(INT2_CTLMASK,)924 1110 A
- (CASCADE_IRQ);)546 2076 A
- 3042(/*)S
- (ICW3)168 3168 A
- 3378(is)S
- (slave)210 3504 A
- 3756(nr)S
- 3882(*/)S
- 1980 V
- (07647)210 648 A
- (out_byte(INT2_CTLMASK,)924 1110 A
- (ICW4_AT);)378 2076 A
- 2070 V
- (07648)210 648 A
- (out_byte(INT2_CTLMASK,)924 1110 A
- (3040);)168 2076 A
- 3042(/*)S
- (IRQ)126 3168 A
- (8-15)168 3336 A
- (mask)168 3546 A
- 3756(*/)S
- 2160 V
- (07649)210 648 A
- 2250 V
- (07650)210 648 A
- 1110(/*)S
- (Initialize)420 1236 A
- (the)126 1698 A
- (table)210 1866 A
- 2118(of)S
- (interrupt)378 2244 A
- (handlers.)378 2664 A
- 3084(*/)S
- 2340 V
- (07651)210 648 A
- (for)126 1110 A
- 1278((i)S
- 1404(=)S
- 1488(0;)S
- 1614(i)S
- 1698(<)S
- (NR_IRQ_VECTORS;)630 1782 A
- (i++))168 2454 A
- (irq_table[i])504 2664 A
- 3210(=)S
- (spurious_irq;)546 3294 A
- 2430 V
- (07652)210 648 A
- 1026(})S
- 2610 V
- (07654)210 648 A
- (/*=========================================================================*)3192 1026 A
- 2700 V
- (07655)210 648 A
- 1068(*)S
- (spurious_irq)504 2370 A
- 4176(*)S
- 2790 V
- (07656)210 648 A
- (*=========================================================================*/)3192 1068 A
- 2880 V
- (07657)210 648 A
- (PRIVATE)294 1026 A
- (int)126 1362 A
- (spurious_irq(irq))714 1530 A
- 2970 V
- (07658)210 648 A
- (int)126 1026 A
- (irq;)168 1194 A
- 3060 V
- (07659)210 648 A
- 1026({)S
- 3150 V
- (07660)210 648 A
- 1026(/*)S
- (Default)294 1152 A
- (interrupt)378 1488 A
- (handler.)336 1908 A
- 2328(It)S
- (complains)378 2454 A
- 2874(a)S
- (lot.)168 2958 A
- 3168(*/)S
- 3240 V
- (07661)210 648 A
- 3330 V
- (07662)210 648 A
- 1110(if)S
- ((irq)168 1236 A
- 1446(<)S
- 1530(0)S
- 1614(||)S
- (irq)126 1740 A
- 1908(>=)S
- (NR_IRQ_VECTORS))630 2034 A
- 3420 V
- (07663)210 648 A
- (panic("invalid)588 1362 A
- (call)168 1992 A
- 2202(to)S
- (spurious_irq",)588 2328 A
- (irq);)210 2958 A
- 3510 V
- (07664)210 648 A
- 3600 V
- (07665)210 648 A
- (printf("spurious)672 1110 A
- (irq)126 1824 A
- (%d\n",)252 1992 A
- (irq);)210 2286 A
- 3690 V
- (07666)210 648 A
- 3780 V
- (07667)210 648 A
- (return)252 1110 A
- 1404(1;)S
- 1698(/*)S
- (Reenable)336 1824 A
- (interrupt)378 2202 A
- 2622(*/)S
- 3870 V
- (07668)210 648 A
- 1026(})S
- 4050 V
- (07670)210 648 A
- (/*=========================================================================*)3192 1026 A
- 4140 V
- (07671)210 648 A
- 1068(*)S
- (put_irq_handler)630 2370 A
- 4176(*)S
- 4230 V
- (07672)210 648 A
- (*=========================================================================*/)3192 1068 A
- 4320 V
- (07673)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (put_irq_handler(irq,)840 1530 A
- (handler))336 2412 A
- 4410 V
- (07674)210 648 A
- (int)126 1026 A
- (irq;)168 1194 A
- 4500 V
- (07675)210 648 A
- (irq_handler_t)546 1026 A
- (handler;)336 1614 A
- 4590 V
- (07676)210 648 A
- 1026({)S
- 4680 V
- (07677)210 648 A
- 1026(/*)S
- (Register)336 1152 A
- 1530(an)S
- (interrupt)378 1656 A
- (handler.)336 2076 A
- 2454(*/)S
- 4770 V
- (07678)210 648 A
- 4860 V
- (07679)210 648 A
- 1110(if)S
- ((irq)168 1236 A
- 1446(<)S
- 1530(0)S
- 1614(||)S
- (irq)126 1740 A
- 1908(>=)S
- (NR_IRQ_VECTORS))630 2034 A
- 4950 V
- (07680)210 648 A
- (panic("invalid)588 1362 A
- (call)168 1992 A
- 2202(to)S
- (put_irq_handler",)714 2328 A
- (irq);)210 3084 A
- 5040 V
- (07681)210 648 A
- 5130 V
- (07682)210 648 A
- 1110(if)S
- ((irq_table[irq])630 1236 A
- 1908(==)S
- (handler))336 2034 A
- 5220 V
- (07683)210 648 A
- (return;)294 1362 A
- 2034(/*)S
- (extra)210 2160 A
- (initialization)588 2412 A
- 3042(*/)S
- 5310 V
- (07684)210 648 A
- 5400 V
- (07685)210 648 A
- 1110(if)S
- ((irq_table[irq])630 1236 A
- 1908(!=)S
- (spurious_irq))546 2034 A
- 5490 V
- (07686)210 648 A
- (panic("attempt)588 1362 A
- 1992(to)S
- (register)336 2118 A
- (second)252 2496 A
- (irq)126 2790 A
- (handler)294 2958 A
- (for)126 3294 A
- (irq",)210 3462 A
- (irq);)210 3714 A
- 5580 V
- (07687)210 648 A
- 5670 V
- (07688)210 648 A
- (disable_irq(irq);)714 1110 A
- 5760 V
- (07689)210 648 A
- 1110(if)S
- ((!protected_mode))714 1236 A
- (set_vec(BIOS_VECTOR(irq),)1050 1992 A
- (irq_vec[irq]);)588 3084 A
- 5850 V
- (07690)210 648 A
- (irq_table[irq]=)630 1110 A
- (handler;)336 1782 A
- 5940 V
- (07691)210 648 A
- (irq_use)294 1110 A
- 1446(|=)S
- 1572(1)S
- 1656(<<)S
- (irq;)168 1782 A
- 6030 V
- (07692)210 648 A
- 1026(})S
- 8418 V
- EP
- %%Page: 94 94
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(94)S
- 11 R
- 1993(File:)S
- 2226(src/kernel/protect.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 990 V
- 7 LST
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1080 V
- (src/kernel/protect.c)840 2034 A
- 1170 V
- (++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++)3528 648 A
- 1350 V
- (07700)210 648 A
- 1026(/*)S
- (This)168 1152 A
- (file)168 1362 A
- (contains)336 1572 A
- (code)168 1950 A
- (for)126 2160 A
- (initialization)588 2328 A
- 2958(of)S
- (protected)378 3084 A
- (mode,)210 3504 A
- 3756(to)S
- (initialize)420 3882 A
- 1440 V
- (07701)210 648 A
- 1068(*)S
- (code)168 1152 A
- (and)126 1362 A
- (data)168 1530 A
- (segment)294 1740 A
- (descriptors,)504 2076 A
- (and)126 2622 A
- 2790(to)S
- (initialize)420 2916 A
- (global)252 3378 A
- (descriptors)462 3672 A
- 1530 V
- (07702)210 648 A
- 1068(*)S
- (for)126 1152 A
- (local)210 1320 A
- (descriptors)462 1572 A
- 2076(in)S
- (the)126 2202 A
- (process)294 2370 A
- (table.)252 2706 A
- 1620 V
- (07703)210 648 A
- 1068(*/)S
- 1710 V
- (07704)210 648 A
- 1800 V
- (07705)210 648 A
- (#include)336 1026 A
- ("kernel.h")420 1404 A
- 1890 V
- (07706)210 648 A
- (#include)336 1026 A
- ("proc.h")336 1404 A
- 1980 V
- (07707)210 648 A
- (#include)336 1026 A
- ("protect.h")462 1404 A
- 2070 V
- (07708)210 648 A
- 2160 V
- (07709)210 648 A
- (#define)294 1026 A
- (INT_GATE_TYPE)546 1362 A
- ((INT_286_GATE)546 2034 A
- 2622(|)S
- (DESC_386_BIT))546 2706 A
- 2250 V
- (07710)210 648 A
- (#define)294 1026 A
- (TSS_TYPE)336 1362 A
- ((AVL_286_TSS)504 2034 A
- 2622(|)S
- (DESC_386_BIT))546 2706 A
- 2340 V
- (07711)210 648 A
- 2430 V
- (07712)210 648 A
- (struct)252 1026 A
- (desctableptr_s)588 1320 A
- 1950({)S
- 2520 V
- (07713)210 648 A
- (char)168 1110 A
- (limit[sizeof(u16_t)];)882 1320 A
- 2610 V
- (07714)210 648 A
- (char)168 1110 A
- (base[sizeof(u32_t)];)840 1320 A
- 2706(/*)S
- (really)252 2832 A
- (u24_t)210 3126 A
- 3378(+)S
- (pad)126 3462 A
- (for)126 3630 A
- (286)126 3798 A
- 3966(*/)S
- 2700 V
- (07715)210 648 A
- 1026(};)S
- 2790 V
- (07716)210 648 A
- 2880 V
- (07717)210 648 A
- (struct)252 1026 A
- (gatedesc_s)420 1320 A
- 1782({)S
- 2970 V
- (07718)210 648 A
- (u16_t)210 1110 A
- (offset_low;)462 1362 A
- 3060 V
- (07719)210 648 A
- (u16_t)210 1110 A
- (selector;)378 1362 A
- 3150 V
- (07720)210 648 A
- (u8_t)168 1110 A
- (pad;)168 1320 A
- 2370(/*)S
- (|000|XXXXX|)462 2496 A
- 3000(ig)S
- 3126(&)S
- (trpg,)210 3210 A
- (|XXXXXXXX|)420 3462 A
- (task)168 3924 A
- 4134(g)S
- 4218(*/)S
- 3240 V
- (07721)210 648 A
- (u8_t)168 1110 A
- (p_dpl_type;)462 1320 A
- 2370(/*)S
- (|P|DL|0|TYPE|)546 2496 A
- 3084(*/)S
- 3330 V
- (07722)210 648 A
- (u16_t)210 1110 A
- (offset_high;)504 1362 A
- 3420 V
- (07723)210 648 A
- 1026(};)S
- 3510 V
- (07724)210 648 A
- 3600 V
- (07725)210 648 A
- (struct)252 1026 A
- (tss_s)210 1320 A
- 1572({)S
- 3690 V
- (07726)210 648 A
- (reg_t)210 1110 A
- (backlink;)378 1362 A
- 3780 V
- (07727)210 648 A
- (reg_t)210 1110 A
- (sp0;)168 1362 A
- 2370(/*)S
- (stack)210 2496 A
- (pointer)294 2748 A
- 3084(to)S
- (use)126 3210 A
- (during)252 3378 A
- (interrupt)378 3672 A
- 4092(*/)S
- 3870 V
- (07728)210 648 A
- (reg_t)210 1110 A
- (ss0;)168 1362 A
- 2370(/*)S
- 2580(")S
- (segment)294 2748 A
- 3126(")S
- 3252(")S
- 3462(")S
- 3840(")S
- 4092(*/)S
- 3960 V
- (07729)210 648 A
- (reg_t)210 1110 A
- (sp1;)168 1362 A
- 4050 V
- (07730)210 648 A
- (reg_t)210 1110 A
- (ss1;)168 1362 A
- 4140 V
- (07731)210 648 A
- (reg_t)210 1110 A
- (sp2;)168 1362 A
- 4230 V
- (07732)210 648 A
- (reg_t)210 1110 A
- (ss2;)168 1362 A
- 4320 V
- (07733)210 648 A
- (reg_t)210 1110 A
- (cr3;)168 1362 A
- 4410 V
- (07734)210 648 A
- (reg_t)210 1110 A
- (ip;)126 1362 A
- 4500 V
- (07735)210 648 A
- (reg_t)210 1110 A
- (flags;)252 1362 A
- 4590 V
- (07736)210 648 A
- (reg_t)210 1110 A
- (ax;)126 1362 A
- 4680 V
- (07737)210 648 A
- (reg_t)210 1110 A
- (cx;)126 1362 A
- 4770 V
- (07738)210 648 A
- (reg_t)210 1110 A
- (dx;)126 1362 A
- 4860 V
- (07739)210 648 A
- (reg_t)210 1110 A
- (bx;)126 1362 A
- 4950 V
- (07740)210 648 A
- (reg_t)210 1110 A
- (sp;)126 1362 A
- 5040 V
- (07741)210 648 A
- (reg_t)210 1110 A
- (bp;)126 1362 A
- 5130 V
- (07742)210 648 A
- (reg_t)210 1110 A
- (si;)126 1362 A
- 5220 V
- (07743)210 648 A
- (reg_t)210 1110 A
- (di;)126 1362 A
- 5310 V
- (07744)210 648 A
- (reg_t)210 1110 A
- (es;)126 1362 A
- 5400 V
- (07745)210 648 A
- (reg_t)210 1110 A
- (cs;)126 1362 A
- 5490 V
- (07746)210 648 A
- (reg_t)210 1110 A
- (ss;)126 1362 A
- 5580 V
- (07747)210 648 A
- (reg_t)210 1110 A
- (ds;)126 1362 A
- 5670 V
- (07748)210 648 A
- (reg_t)210 1110 A
- (fs;)126 1362 A
- 5760 V
- (07749)210 648 A
- (reg_t)210 1110 A
- (gs;)126 1362 A
- 5850 V
- (07750)210 648 A
- (reg_t)210 1110 A
- (ldt;)168 1362 A
- 5940 V
- (07751)210 648 A
- (u16_t)210 1110 A
- (trap;)210 1362 A
- 6030 V
- (07752)210 648 A
- (u16_t)210 1110 A
- (iobase;)294 1362 A
- 6120 V
- (07753)210 648 A
- 1026(};)S
- 6210 V
- (07754)210 648 A
- 8418 V
- EP
- %%Page: 95 95
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 10 R
- 648(MINIX)S
- 976(SOURCE)S
- 1399(CODE)S
- 11 R
- 1993(File:)S
- 2226(src/kernel/protect.c)S
- 12 B
- 4308(95)S
- 900 V
- 7 LST
- (07755)210 648 A
- (PUBLIC)252 1026 A
- (struct)252 1320 A
- (segdesc_s)378 1614 A
- (gdt[GDT_SIZE];)588 2034 A
- 990 V
- (07756)210 648 A
- (PRIVATE)294 1026 A
- (struct)252 1362 A
- (gatedesc_s)420 1656 A
- (idt[IDT_SIZE];)588 2118 A
- 3042(/*)S
- (zero-init)378 3168 A
- 3588(so)S
- (none)168 3714 A
- (present)294 3924 A
- 4260(*/)S
- 1080 V
- (07757)210 648 A
- (PUBLIC)252 1026 A
- (struct)252 1320 A
- (tss_s)210 1614 A
- (tss;)168 1866 A
- 2370(/*)S
- (zero)168 2496 A
- (init)168 2706 A
- 2916(*/)S
- 1170 V
- (07758)210 648 A
- 1260 V
- (07759)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (int_gate,)378 2076 A
- ((unsigned)378 2496 A
- (vec_nr,)294 2916 A
- (phys_bytes)420 3252 A
- (base,)210 3714 A
- 1350 V
- (07760)210 648 A
- (unsigned)336 1698 A
- (dpl_type))378 2076 A
- 2496();)S
- 1440 V
- (07761)210 648 A
- (FORWARD)294 1026 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- (sdesc,)252 2076 A
- ((struct)294 2370 A
- (segdesc_s)378 2706 A
- (*segdp,)294 3126 A
- (phys_bytes)420 3462 A
- (base,)210 3924 A
- 1530 V
- (07762)210 648 A
- (phys_bytes)420 1698 A
- (size))210 2160 A
- 2412();)S
- 1620 V
- (07763)210 648 A
- 1710 V
- (07764)210 648 A
- (/*=========================================================================*)3192 1026 A
- 1800 V
- (07765)210 648 A
- 1068(*)S
- (prot_init)378 2370 A
- 4176(*)S
- 1890 V
- (07766)210 648 A
- (*=========================================================================*/)3192 1068 A
- 1980 V
- (07767)210 648 A
- (PUBLIC)252 1026 A
- (void)168 1320 A
- (prot_init())462 1530 A
- 2070 V
- (07768)210 648 A
- 1026({)S
- 2160 V
- (07769)210 648 A
- 1026(/*)S
- (Set)126 1152 A
- 1320(up)S
- (tables)252 1446 A
- (for)126 1740 A
- (protected)378 1908 A
- (mode.)210 2328 A
- 2250 V
- (07770)210 648 A
- 1068(*)S
- (All)126 1152 A
- (GDT)126 1320 A
- (slots)210 1488 A
- (are)126 1740 A
- (allocated)378 1908 A
- 2328(at)S
- (compile)294 2454 A
- (time.)210 2790 A
- 2340 V
- (07771)210 648 A
- 1068(*/)S
- 2430 V
- (07772)210 648 A
- 2520 V
- (07773)210 648 A
- (phys_bytes)420 1110 A
- (code_bytes;)462 1572 A
- 2610 V
- (07774)210 648 A
- (phys_bytes)420 1110 A
- (data_bytes;)462 1572 A
- 2700 V
- (07775)210 648 A
- (struct)252 1110 A
- (gate_table_s)504 1404 A
- (*gtp;)210 1950 A
- 2790 V
- (07776)210 648 A
- (struct)252 1110 A
- (desctableptr_s)588 1404 A
- (*dtp;)210 2034 A
- 2880 V
- (07777)210 648 A
- (unsigned)336 1110 A
- (ldt_selector;)546 1488 A
- 2970 V
- (07778)210 648 A
- (register)336 1110 A
- (struct)252 1488 A
- (proc)168 1782 A
- (*rp;)168 1992 A
- 3060 V
- (07779)210 648 A
- 3150 V
- (07780)210 648 A
- (static)252 1110 A
- (struct)252 1404 A
- (gate_table_s)504 1698 A
- 2244({)S
- 3240 V
- (07781)210 648 A
- (_PROTOTYPE()462 1362 A
- (void)168 1866 A
- ((*gate),)336 2076 A
- ((void))252 2454 A
- 2748();)S
- 3330 V
- (07782)210 648 A
- (unsigned)336 1362 A
- (char)168 1740 A
- (vec_nr;)294 1950 A
- 3420 V
- (07783)210 648 A
- (unsigned)336 1362 A
- (char)168 1740 A
- (privilege;)420 1950 A
- 3510 V
- (07784)210 648 A
- 1110(})S
- 3600 V
- (07785)210 648 A
- (gate_table[])504 1110 A
- 1656(=)S
- 1740({)S
- 3690 V
- (07786)210 648 A
- (divide_error,)546 1362 A
- (DIVIDE_VECTOR,)588 1950 A
- (INTR_PRIVILEGE,)630 2580 A
- 3780 V
- (07787)210 648 A
- (single_step_exception,)924 1362 A
- (DEBUG_VECTOR,)546 2328 A
- (INTR_PRIVILEGE,)630 2916 A
- 3870 V
- (07788)210 648 A
- (nmi,)168 1362 A
- (NMI_VECTOR,)462 1572 A
- (INTR_PRIVILEGE,)630 2076 A
- 3960 V
- (07789)210 648 A
- (breakpoint_exception,)882 1362 A
- (BREAKPOINT_VECTOR,)756 2286 A
- (USER_PRIVILEGE,)630 3084 A
- 4050 V
- (07790)210 648 A
- (overflow,)378 1362 A
- (OVERFLOW_VECTOR,)672 1782 A
- (USER_PRIVILEGE,)630 2496 A
- 4140 V
- (07791)210 648 A
- (bounds_check,)546 1362 A
- (BOUNDS_VECTOR,)588 1950 A
- (INTR_PRIVILEGE,)630 2580 A
- 4230 V
- (07792)210 648 A
- (inval_opcode,)546 1362 A
- (INVAL_OP_VECTOR,)672 1950 A
- (INTR_PRIVILEGE,)630 2664 A
- 4320 V
- (07793)210 648 A
- (copr_not_available,)798 1362 A
- (COPROC_NOT_VECTOR,)756 2202 A
- (INTR_PRIVILEGE,)630 3000 A
- 4410 V
- (07794)210 648 A
- (double_fault,)546 1362 A
- (DOUBLE_FAULT_VECTOR,)840 1950 A
- (INTR_PRIVILEGE,)630 2832 A
- 4500 V
- (07795)210 648 A
- (copr_seg_overrun,)714 1362 A
- (COPROC_SEG_VECTOR,)756 2118 A
- (INTR_PRIVILEGE,)630 2916 A
- 4590 V
- (07796)210 648 A
- (inval_tss,)420 1362 A
- (INVAL_TSS_VECTOR,)714 1824 A
- (INTR_PRIVILEGE,)630 2580 A
- 4680 V
- (07797)210 648 A
- (segment_not_present,)840 1362 A
- (SEG_NOT_VECTOR,)630 2244 A
- (INTR_PRIVILEGE,)630 2916 A
- 4770 V
- (07798)210 648 A
- (stack_exception,)672 1362 A
- (STACK_FAULT_VECTOR,)798 2076 A
- (INTR_PRIVILEGE,)630 2916 A
- 4860 V
- (07799)210 648 A
- (general_protection,)798 1362 A
- (PROTECTION_VECTOR,)756 2202 A
- (INTR_PRIVILEGE,)630 3000 A
- 4950 V
- (07800)210 648 A
- (page_fault,)462 1362 A
- (PAGE_FAULT_VECTOR,)756 1866 A
- (INTR_PRIVILEGE,)630 2664 A
- 5040 V
- (07801)210 648 A
- (copr_error,)462 1362 A
- (COPROC_ERR_VECTOR,)756 1866 A
- (INTR_PRIVILEGE,)630 2664 A
- 5130 V
- (07802)210 648 A
- 1362({)S
- (hwint00,)336 1446 A
- (VECTOR()294 1824 A
- (0),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5220 V
- (07803)210 648 A
- 1362({)S
- (hwint01,)336 1446 A
- (VECTOR()294 1824 A
- (1),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5310 V
- (07804)210 648 A
- 1362({)S
- (hwint02,)336 1446 A
- (VECTOR()294 1824 A
- (2),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5400 V
- (07805)210 648 A
- 1362({)S
- (hwint03,)336 1446 A
- (VECTOR()294 1824 A
- (3),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5490 V
- (07806)210 648 A
- 1362({)S
- (hwint04,)336 1446 A
- (VECTOR()294 1824 A
- (4),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5580 V
- (07807)210 648 A
- 1362({)S
- (hwint05,)336 1446 A
- (VECTOR()294 1824 A
- (5),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5670 V
- (07808)210 648 A
- 1362({)S
- (hwint06,)336 1446 A
- (VECTOR()294 1824 A
- (6),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5760 V
- (07809)210 648 A
- 1362({)S
- (hwint07,)336 1446 A
- (VECTOR()294 1824 A
- (7),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5850 V
- (07810)210 648 A
- 1362({)S
- (hwint08,)336 1446 A
- (VECTOR()294 1824 A
- (8),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 5940 V
- (07811)210 648 A
- 1362({)S
- (hwint09,)336 1446 A
- (VECTOR()294 1824 A
- (9),)126 2160 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 6030 V
- (07812)210 648 A
- 1362({)S
- (hwint10,)336 1446 A
- (VECTOR(10),)462 1824 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 6120 V
- (07813)210 648 A
- 1362({)S
- (hwint11,)336 1446 A
- (VECTOR(11),)462 1824 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 6210 V
- (07814)210 648 A
- 1362({)S
- (hwint12,)336 1446 A
- (VECTOR(12),)462 1824 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 8418 V
- EP
- %%Page: 96 96
- BP
- /slant 0 def
- /height 0 def
- 630 V
- 12 B
- 648(96)S
- 11 R
- 1993(File:)S
- 2226(src/kernel/protect.c)S
- 10 R
- 3402(MINIX)S
- 3730(SOURCE)S
- 4153(CODE)S
- 900 V
- 7 LST
- (07815)210 648 A
- 1362({)S
- (hwint13,)336 1446 A
- (VECTOR(13),)462 1824 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 990 V
- (07816)210 648 A
- 1362({)S
- (hwint14,)336 1446 A
- (VECTOR(14),)462 1824 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 1080 V
- (07817)210 648 A
- 1362({)S
- (hwint15,)336 1446 A
- (VECTOR(15),)462 1824 A
- (INTR_PRIVILEGE)588 2328 A
- 2958(},)S
- 1170 V
- (07818)210 648 A
- 1110(};)S
- 1260 V
- (07819)210 648 A
- 1350 V
- (07820)210 648 A
- 1110(/*)S
- (This)168 1236 A
- 1446(is)S
- (called)252 1572 A
- (early)210 1866 A
- (and)126 2118 A
- (can't)210 2286 A
- (use)126 2538 A
- (tables)252 2706 A
- (set)126 3000 A
- 3168(up)S
- 3294(by)S
- (main().)294 3420 A
- 3756(*/)S
- 1440 V
- (07821)210 648 A
- (data_bytes)420 1110 A
- 1572(=)S
- ((phys_bytes))504 1656 A
- (sizes[1])336 2202 A
- 2580(<<)S
- (CLICK_SHIFT;)504 2706 A
- 1530 V
- (07822)210 648 A
- 1110(if)S
- ((sizes[0])378 1236 A
- 1656(==)S
- 1782(0))S
- 1620 V
- (07823)210 648 A
- (code_bytes)420 1362 A
- 1824(=)S
- (data_bytes;)462 1908 A
- 2706(/*)S
- (common)252 2832 A
- (I&D)126 3126 A
- 3294(*/)S
- 1710 V
- (07824)210 648 A
- (else)168 1110 A
- 1800 V
- (07825)210 648 A
- (code_bytes)420 1362 A
- 1824(=)S
- ((phys_bytes))504 1908 A
- (sizes[0])336 2454 A
- 2832(<<)S
- (CLICK_SHIFT;)504 2958 A
- 1890 V
- (07826)210 648 A
- 1980 V
- (07827)210 648 A
- 1110(/*)S
- (Build)210 1236 A
- (gdt)126 1488 A
- (and)126 1656 A
- (idt)126 1824 A
- (pointers)336 1992 A
- 2370(in)S
- (GDT)126 2496 A
- (where)210 2664 A
- (the)126 2916 A
- (BIOS)168 3084 A
- (expects)294 3294 A
- (them.)210 3630 A
- 3882(*/)S
- 2070 V
- (07828)210 648 A
- (dtp=)168 1110 A
- ((struct)294 1320 A
- (desctableptr_s)588 1656 A
- 2286(*))S
- (&gdt[GDT_INDEX];)672 2412 A
- 2160 V
- (07829)210 648 A
- 1110(*)S
- ((u16_t)252 1194 A
- 1488(*))S
- (dtp->limit)420 1614 A
- 2076(=)S
- ((sizeof)294 2160 A
- (gdt))168 2496 A
- 2706(-)S
- 2790(1;)S
- 2250 V
- (07830)210 648 A
- 1110(*)S
- ((u32_t)252 1194 A
- 1488(*))S
- (dtp->base)378 1614 A
- 2034(=)S
- (vir2phys(gdt);)588 2118 A
- 2340 V
- (07831)210 648 A
- 2430 V
- (07832)210 648 A
- (dtp=)168 1110 A
- ((struct)294 1320 A
- (desctableptr_s)588 1656 A
- 2286(*))S
- (&gdt[IDT_INDEX];)672 2412 A
- 2520 V
- (07833)210 648 A
- 1110(*)S
- ((u16_t)252 1194 A
- 1488(*))S
- (dtp->limit)420 1614 A
- 2076(=)S
- ((sizeof)294 2160 A
- (idt))168 2496 A
- 2706(-)S
- 2790(1;)S
- 2610 V
- (07834)210 648 A