OS 1
1 4 1.1........................................... 4 1.2........................................... 4 2 5 2.1..................................... 5 2.2 OS................................... 5 3 7 3.1 OS....................................... 7 3.2 OS..................................... 7 3.3................................ 7 3.4.................................. 8 3.5.......................................... 8 4 9 4.1......................................... 9 4.1.1.................................. 9 4.1.2.................................. 9 4.1.3..................................... 9 4.1.4..................................... 10 4.1.5..................................... 10 4.2..................................... 11 4.3.......................................... 11 5 13 5.1..................................... 13 5.2.......................................... 13 5.2.1 yes........................................ 13 5.2.2 ls......................................... 13 5.3.................................... 14 15 15 2
2.1 [2] pp.112 3... 6 3.1.......................................... 8 4.1............................... 10 4.2................................ 12 5.1.................................. 14 3
1 1.1 ( :OS ) OS OS OS Linux Kernel 2.6.0 5 600 OS OS OS OS 1.2 OS OS 4
2 OS OS OS 2.1 PARTNER-Jet[1] PARTNER-Jet OS CPU OS 2.2 OS OS [2] OS 2.1 2.1 OS OS 5
2.1: [2] pp.112 3. 6
3 OS OS 3.1 3.1 OS OS MINIX[5] MINIX 4000 MINIX 3.1.2a 3.2 OS MINIX VMWare Player[6] VMWare Player 2.0.5 build-109488 QEMU[7] MINIX VMWare MINIX CD 3.3 MINIX C MINIX 3.2 MINIX MINIX VMWare Player MINIX ftp ftp MINIX MINIX MINIX Andrew S. Tanenbaum MINIX MINIX [3] OS MINIX [4] 7
3.1: 3.4 OS OS 3.5 Java[8] MINIX OS 8
4 4.1 OS MINIX OS MINIX 4.1.1 C MINIX 4.1.2 Python[9] {}( ) return 4.1.2 log out log out OS log out 4.1 4.1.3 CSV(Comma Separated Values, ) MINIX log out MINIX 1 1 4.1 9
int flag; log_out() { } if ( 0 == flag ) { flag = 1; (); flag = 0; } 4.1: clock.c debug.c exception.c. a b c. 4.1: ( ) 1 1 a b c 4.1.4 OS log out MINIX 4.1.4 log out 1 ( return ) log out 4.1.3 4.1.5 10
kprintf kprintf libc printf kprintf syslog syslog UNIX kprintf syslog outb outb 1 VMWare Player outb 4.2 kprintf printf outb sys outb 4.3 4.2 2 1 Start 1 Start Stop Step 1 RevStep 1 Reset 1 Jump 11
4.2: 12
5 5.1 kprintf syslog kprintf outb log out 1 1 MINIX log out MINIX (100KB ) log out MINIX MINIX 10000 1 1 1 1 1 5.1 5.2 5.2.1 yes yes 10 Jump 5.2.2 ls ls fork exec 13
5.1: 5.3 VMWare Player MINIX 14
(IS) M2 M1 B4 15
[1] JTAG ICE:PARTNER-Jet http://www.kmckk.co.jp/jet/index.html. [2],,,,, 2001-OS-88-15, pp.107-114. [3] MINIX, Andrew S. Tanenbaum,, 1989,. [4] MINIX, Andrew S. Tanenbaum,, 1998,. [5] The MINIX 3 Operating System, http://www.minix3.org/. [6] VMware Player PC - VMware, http://www.vmware.com/jp/products/player/. [7] QEMU, http://bellard.org/qemu/. [8] Developer Resources for Java Technology, http://java.sun.com/. [9] Python Programming Language Official Website, http://www.python.org/. 16