$B@8BV3X2qBg2q(B(1999)$B!&<+M3=82q(B $B!V7W;;@8BV3X!W%F%/%K%+%k%N!<%H(B

$B$F(B $B$/(B $B$K(B $B$+(B $B$k(B $BMQ8l=8(B

1999.03.16 $B:n@.(B / 1999.03.18 $B99?7(B

$BJT!'5WJ]BsLo(B ($BKLBg!&CO5e4D6-(B) kubo@ees.hokudai.ac.jp

OS $B!Z$*!<$($9(B / operating system$B![(B $B%W%m%0%i%`$rr7o$H$7$F$O(B $B!V
GUI $B!Z$0!<$$(B / graphical user interface$B![(B $B%=%U%H%&%'%"$NF~=PNOItJ,$K$*$$$F!$(B $BJ8;z$G$O$J$/%I%C%H3(!$(B $B%-%$$G$O$J$/%^%&%9$K$h$k@)8f$,=EMW$G$"$k(B $B$H
$B%W%m%0%i%`(B $B!Z$W$m$0$i$`(B / program$B![(B $B7W;;5!$r:nF0$5$;$k>pJs!$(B $B$"$k$$$O$=$l$r5-$7$?%U%!%$%k!%(B $B%W%m%0%i%`$N$&$A!$(B $B!V5!3#$K$OFI$a$k$1$l$I?M4V$K$OFI$a$J$$(B ($B$"$k$$$OFI$`$N$,$7$s$I$$(B)$B!W(B $B$b$N$O(B $B%P%$%J%j!<%U%!%$%k(B / $BN$5$l!$(B $B!V?M4V$K$b5!3#$K$bFI$a$k!W(B $B$b$N$O%9%/%j%W%H$J$kL>A0$,M?$($i$l!$(B $B!V?M4V$K$b5!3#$K$bFI$a$J$$!W(B $B$b$N$O(B $B2<
$B3+H/(B $B!Z$+$$$O$D(B / development$B![(B $B%W%m%0%i%`$r:n$k$3$H!%(B $B%W%m%0%i%_%s%0!%(B $B3+H/4D6-$H$$$&$N$O%=%U%H%&%'%"3+H/$N$?$a$N(B $B%=%U%H%&%'%"$K2?$r;H$&$+!$(B $B$H$$$&$3$H!%(B
$B%W%m%0%i%_%s%08@8l(B $B!Z$W$m$0$i$_$s$0$2$s$4(B / programming language$B![(B $B%W%m%0%i%`$r5-=R$9$k$?$a$N8@8l!%(B $BBeI=E*$J$b$N$H$7$F$O!$(B C / C++ / Fortran / Pascal / BASIC / Perl / Tcl /Tk $B$J$I$,$"$k!%(B
$B%G!<%?!<9=B$(B $B!Z$G!<$?!<$3$&$>$&(B / data structure$B![(B $B%W%m%0%i%`$NCf$G%G!<%?!<$r$I$&
$B%"%k%4%j%:%`(B $B!Z$"$k$4$j$:$`(B / algorithm$B![(B $B!V%G!<%?!<$r=hM}$9$k]E*$KI=8=$9$k8l!%(B $B6qBNE*$J%W%m%0%i%_%s%08@8l$H$OFHN)$G$"$k!%(B $B!V%G!<%?!<9=B$(B + $B%"%k%4%j%:%`(B == $B%W%m%0%i%`!W(B $B$H$$$&L>8@$,$"$k!%(B
$B%P%0(B $B!Z$P$0(B / bug$B![(B $BCn!%(B $BE>$8$F%W%m%0%i%`$K4^$^$l$k8m$j!%(B $B8m$j$,$"$k$H!$(B $B7W;;5!$O?M4V$,4|BT$7$J$$F0:n$r$9$k!%(B
$B%G%#%P%C%0(B $B!Z$G$#$P$C$0(B / debug$B![(B $B%W%m%0%i%`$K4^$^$l$k%P%0(B $B$r8+$D$1$F=$@5$9$k$3$H!%(B $B$=$N$H$-$K(B $B%G%#%P%C%,!<$H8F$P$l$k%=%U%H%&%'%"$r(B $B;H$&$3$H$b$"$k!%(B $BK?N$7$F$$$?$j$9$k!%(B
$BK=Av(B $B!Z$\$&$=$&(B / crash / freeze$B![(B $B%P%0$r4^$`$X$C$]$3%W%m%0%i%`$r:n@.$7(B $B
$B%3%s%Q%$%i!<(B $B!Z$3$s$Q$$$i!<(B / compiler$B![(B $B%=!<%9%3!<%I$rl9g!$(B $B85$N%=!<%9%3!<%I$r=$@5$7$F%3%s%Q%$%k$r(B $B$d$jD>$9I,MW$,$"$k!%(B
$B%$%s%?!<%W%j%?!<(B $B!Z$$$s$?!<$W$j$?!<(B / interpreter$B![(B $B!V?M4V$K$b5!3#$K$bFI$a$k!W(B $B%9%/%j%W%H$rFI$_9~$s$G0l9T$:$Dl9g$KHf$Y$F(B $B
$B%F%-%9%H(B
$B%U%!%$%k(B
$B!Z$F$-$9$H$U$!$$$k(B / text file$B![(B $B?M4V$KFI$a$kJ8;z%3!<%I$G=q$+$l$?%U%!%$%k!%(B $B%=!<%9%3!<%I$d%9%/%j%W%H$O%F%-%9%H%U%!%$%k$G(B $B5-=R$9$k$3$H$,B?$$!%(B
$B%P%$%J%j!<(B
$B%U%!%$%k(B
$B!Z$P$$$J$j!<$U$!$$$k(B / binary file$B![(B $B%F%-%9%H%U%!%$%k0J30$N%U%!%$%k!%(B $B$U$D!<$N?M4V$K$OFI$a$J$$!%(B $B%P%$%J%j!<$H$OFs?J?t$N0U!%(B
$B%(%G%#%?!<(B $B!Z$($G$#$?!<(B / editor$B![(B $B2?$+$rJT=8$9$k%=%U%H%&%'%"!%(B $B%F%-%9%H$rJT=8$9$k%=%U%H%&%'%"$O(B $B%F%-%9%H%(%G%#%?!<$G$"$k!%(B
$B9=B$2=(B
$B%W%m%0%i%_%s%0(B
$B!Z$3$&$>$&$+$W$m$0$i$_$s$0(B / structured programming$B![(B $B!VFI$_$K$/$$1x$i$7$$%3!<%I$r=q$/$J!W(B $B$H$$$&=!651?F0!%(B $B5!G=$4$H$KFHN)$7$?%b%8%e!<%k$rMQ0U$7$F$*$-!$(B $BI,MW$K1~$8$F$=$l$r8F$S=P$9$N$,(B $B$h$$%W%m%0%i%`$H$5$l!$(B $B
$B%*%V%8%'%/%H;X8~(B
$B%W%m%0%i%_%s%0(B
$B!Z$*$V$8$'$/$H$7$3$&$W$m$0$i$_$s$0(B / object oriented programming$B![(B $BHfSHE*$K@bL@$9$k$H!$(B $B@8J*=8CD$N%b%G%k$r%W%m%0%i%_%s%0$9$k$H$-$K(B $B3F8DBN$K(B $B!V7/$O(BA $B$H$$$&u67$G$O$3$&$7$h$&!W(B $B$H$$$&<+3P$H<+N)?4$r;}$?$;$k$N$,(B $B$$$$$s$8$c$J$+$m!<$+!$(B $B$H$$$&=!651?F0!%(B
FSF $B!Z$($U$($9$($U(B / Free Software Foundation$B![(B $B!V%=%U%H%&%'%"$O$9$Y$+$i$/(B free $B$+$D(B $B$=$N%=!<%9%3!<%I$,8x3+$5$l$F$$$J$1$l$P$J$i$J$$!W(B $B$H$$$&655A$r$i$G$#$+$k$Ke$NIOK3%W%m%0%i%^!<$r(B $B$"$^$M$/5_:Q$7$F$$$k!%(B $B65AD$O(B Richard Stallman$B!$(B $B@$3&Cf$+$iB:7I$5$l!V62$l!W$i$l$F$$$k?MJ*!%(B $B"*(B GNU
GNU $B!Z$0$L!<(B / $B$0$K$e(B / GNU is Not Unix$B![(B FSF $B$,G[I[$b$7$/$O(B $BG'2D$7$F$$$k%U%H%&%'%"!%(B GNU $B%W%m%@%/%D$H$b!%(B GNU $B$H$$$&N,8l$O:F5"E*$KDj5A$5$l$F$$$k!%(B $B"*(B FSF
Linux $B!Z(B $B$j$L$/$9(B / $B$j!<$L$/$9(B / $B$j$L$C$/$9(B / $B$j$K$e$C$/$9(B / $B$j$L$)$%$/$9(B / $B$j$J$C$/$9(B / $B$i$$$J$/$9(B / $B$i$$$J$C$/$9(B $B![(B $BFI$_J}$O7h$a$i$l$F$$$J$$!%(B $B$?$@$7!$(B FSF $B$N(BStallman $B$NA0$G$O(B $B!V(BGNU/Linux$B!W(B $B$H8@$o$J$$$H@b65$5$l$F$7$^$&!%(B $B!VL5NA!W$G9b@-G=$J(BOS$B!%(B $B"*(B $B!V%F%/%K%+%k%N!<%H!W$N%Z%$%8(B
$B%+!<%M%k(B $B!Z$+!<$M$k(B / kernel$B![(B OS $B$N!HCf3KIt!I$N$3$H!%(B $B%I%i%$%t%!!<$d%U%!%$%k%7%9%F%`$b(B $B0lBN2=$7$F$$$k$N$r(B $B!V0lKg4d(B (monolithic)$B!W%+!<%M%k!$(B $B:G>.8B$N5!G=(B ($B%a%b%j$H(BCPU $B;q8;$NJ,G[(B) $B$@$1$N$b$N$r%^%$%/%m%+!<%M%k$H$$$&!%(B
$B%7%'%k(B $B!Z$7$'$k(B / shell$B![(B $B%+!<%M%k$H%f!<%6!<$r2p:_$9$k%W%m%0%i%`!%(B
PC $B!Z$T!<$7!$C$F$$$k5!3#!%(B $BF|K\$G$O!V(BDOS/V$B!W$H$+!V(BAT $B8_495!!W$H8F$P$l$F$$$k(B $B>l9g$bB?$$!%(B $B$h!<$9$k$K(BWindows $B$J$k%b%N$,F0$/$h$&$J7W;;5!$N$3$H!%(B


[$B7W;;@8BV3X$N%H%C%W%Z%$%8$KLa$k(B]