MACãããžã§ã¯ãïŒMultiple Access ComputerãMachine-Aided CognitionãMan and ComputerïŒã¯ã1963幎ã«MITã§ã®çŽç²ãªç 究ãããžã§ã¯ããšããŠå§ãŸããŸããã ãã®åŸãã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ç 究æïŒLCSïŒã«æé·ããä»æ¥ã§ã¯ã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ããã³äººå·¥ç¥èœç 究æãšåŒã°ããŠããŸãã
60幎代ååã«ã¯ãã¿ã€ã ã·ã§ã¢ãªã³ã°ã·ã¹ãã ãžã®é¢å¿ãæ¥äžæããŸããã ãžã§ã³ã»ããã«ãŒã·ãŒã¯ã1959幎ã«ãIBM 709ãããžã§ã¯ãã®æéæå®ãªãã¬ãŒã¿ãŒããã°ã©ã ããšããã¿ã€ãã«ã®ã¡ã¢ãæžããŸããã CorbatoãMervyn-Daggetãããã³Daleyã¯ã1962幎ã®èšäºã§ããã¿ã€ã ã·ã§ã¢ãªã³ã°ã«ãããã³ã³ãã¥ãŒã¿ãŒã®äœ¿çšæ¹æ³ã«3çªç®ã®ã°ããŒãã«ãªå€åãè¿«ã£ãŠããŸãããšæžããŠããŸãã æåã¯ãã³ã³ãã¥ãŒã¿ãŒã®äœ¿çšå¹çãåäžãããæ¹æ³ãšããŠèããããŠããŸããããããã«ãã«ããŠãŒã¶ãŒã·ã¹ãã ã®ã¢ã€ãã¢ã«è³ããŸããã ããã¹ã»ãªãããŒã¯ãæžã蟌ã¿-ã³ã³ãã€ã«-å®è¡-ãããã°ãµã€ã¯ã«ã®æãé ãã¹ãããã¯ããã·ã³ã§ã¯ãªã人ã«ãã£ãŠæ±ºå®ããããšåŸã§èšããŸãã
MACãããžã§ã¯ãã®ãã¬ãŒã ã¯ãŒã¯å ã§ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®éçºãå«ããå ±æãããæéãæã€ã·ã¹ãã ã«å€§ããªè²¢ç®ããããŸããïŒãã®ãããªèšèã¯ãããŸããã§ããããæ確ã«ããããã«-ãããTranslãïŒ 60幎代åŸåã«ã¯ãBBNãDTSSãJOSSãSDCãªã©ãä»ã®ããã€ãã®ã¿ã€ã ã·ã§ã¢ãªã³ã°ã·ã¹ãã ãäœæãããŸããããããããã®ãã¹ãŠã¯ãã®èšäºã«ã¯é¢ä¿ãããŸããã ããããMultiplexed Information and Computing ServiceïŒMULTICSïŒã¯ããã§ãã
Multics
ããã¯ãMITãBell Telephone LaboratoriesïŒBTLïŒãããã³General ElectricïŒGEïŒã®å ±åéçºã§ãããGE-645ã³ã³ãã¥ãŒã¿çšã®ã¿ã€ã ã·ã§ã¢ãªã³ã°OSãäœæããŸãã
åœæããã³ã³ãã¥ãŒã¿ãŒã䜿çšããããšã¯ãã»ãŒæä»çã«ãããã°ã©ãã³ã°ããæå³ããŠããŸããã ã€ãŸããäžèšã®æžã蟌ã¿-ãããã°ãµã€ã¯ã«ãããå¹ççã«å®è¡ããå¿ èŠããããŸããã
Multicsã¯ãäžåºŠã«æ倧1000人ã®ãŠãŒã¶ãŒããµããŒãã§ããã¢ããªã±ãŒã·ã§ã³ãœãããŠã§ã¢ã«ãªãããšã§ããã ãŸããTKããïŒãMulticsã·ã¹ãã ã®çŽ¹ä»ãšã¬ãã¥ãŒããã³ã«ããããŽã£ãœãããŒã1965幎ã«åŒçšïŒïŒ
- 24æé365æ¥ã®éçš
- å¿ èŠã«å¿ããŠè¿œå ããã³æ¹åã§ãããã¬ãŒã ã¯ãŒã¯ã®ååš
- ããŸããŸãªããã°ã©ãã³ã°èšèªãšãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã®ãµããŒãã ã·ã¹ãã èªäœã¯ãäž»ã«é«æ°ŽæºèšèªPL / Iã§äœæãããŸããã
- å¹ åºãã¢ããªã±ãŒã·ã§ã³ã®ãµããŒã
- 䟿å©ã§æè»ãã€é«éãªãªã¢ãŒãã¢ã¯ã»ã¹ããµããŒã
- å¶åŸ¡ããªãœãŒã¹å²ãåœãŠãããã³æ¿èªã®éå±€æ§é ãæã£ãŠãã
- ä¿¡é Œã§ããFSãæã£ãŠãã
- ããŒã¿ã¢ã¯ã»ã¹å¶åŸ¡ã®ãµããŒã
- ãªã³ã©ã€ã³ææžã®å ¥æå¯èœæ§
BTLã¯ã1969幎åé ã«ãã®ãããžã§ã¯ãããæ€åããŸããã Multicsã¯ãäžé£ã®å販åŸãåçšè£œåãšããŠéçºãããŸããã Honeywellã¯GEã®ã³ã³ãã¥ãŒã¿ãŒäºæ¥ãè²·åããBullã¯Honeywellãè²·åããŸããã äžè¬ã«ããããžã§ã¯ãã¯æåãããã®åŸã®å€ãã®ãããžã§ã¯ãã«å€§ããªåœ±é¿ãäžããŸããã Multicsãå®è¡ããŠããæåŸã®ã³ã³ãã¥ãŒã¿ãŒã¯ã2000幎10æ31æ¥ã«ã·ã£ããããŠã³ãããŸããã
Unix
BTLã¯ãããžã§ã¯ããé¢ããŸãããããã®åŸæ¥å¡ã®äžéšã¯èªåã§ç¶ç¶ããããšèããŠããŸããã ããšãã°ãã±ã³ãã³ããœã³ãããã¹ãªãããŒãã¹ãã¥ãã§ã«ããã³ããã°ãããã€ãããã¢ãªã¹ããžã§ãŒãªãµã³ãã ãã³ããœã³ã¯ãGE-635ã§å®å®æ è¡ã²ãŒã ã«åãçµã¿ãŸããã æåã«Multicsçšã«äœæããã次ã«GE-635äžã®GECOSã®äžã§Fortranã«æžãæããããŸããã ã²ãŒã ã¯å€ªéœç³»ã®äœãã·ãã¥ã¬ãŒããããã¬ã€ã€ãŒã¯ææãŸãã¯è¡æã®ã©ããã«è¹ãäžéžãããªããã°ãªããŸããã§ããã ãã®ã³ã³ãã¥ãŒã¿ãŒã®ãœãããŠã§ã¢ãããŒããŠã§ã¢ãããã®ãããªã²ãŒã ã«ã¯é©ããŠããŸããã§ããã ãã³ããœã³ã¯ä»£æ¿æ段ãæ¢ããŠããŠãææè ã®ããªãPDP-7ã®äžã§ã²ãŒã ãæžãçŽããŸããã ã¡ã¢ãªã¯8K 18ãããã¯ãŒãã®ããªã¥ãŒã ã§ããã®éçŸããã°ã©ãã£ãã¯ã衚瀺ããããã®ãã¯ã¿ãŒãã£ã¹ãã¬ã€ããã»ããµããããŸããã ãã³ããœã³ã¯ããªãããŒã䜿çšããŠã¢ã»ã³ãã©ãŒã§PDP-7ã®ã²ãŒã ãæžãçŽããŸããã ãã®éçšã§ãæµ®åå°æ°ç¹ãæäœããããã®ãœãããŠã§ã¢ãŠããããååŸããŸããã ã²ãŒã ã¯OSãªãã§ãã¢ã¡ã¿ã«ã§åäœããŸããã
ãŒãçïŒ1969幎æ«ïŒ
ãã³ããœã³ãšãªãããŒã¯ãGEã§ã¯ãã¹ã¢ã»ã³ããªãå®å šã«éçºãããã³ãããŒãã«ã³ãŒãã移æ€ããŸããã ãã³ããœã³ã¯ç©æ¥µçã«ããã奜ãŸãªãã£ãããããã¡ã€ã«ã·ã¹ãã ããå§ããŠãPDP-7ã®OSãæžãå§ããŸããã ã·ã¹ãã ã¯1969幎ã®çµããã«çµã¿ç«ãŠããå§ããŸããã ãã§ã«ã«ãŒãã«ããšãã£ã¿ãŒãã¢ã»ã³ãã©ãŒãåçŽãªã·ã§ã«ãããã³
cat
ã
cp
ã
rm
ãªã©ã®ãã¡ã€ã«ãŠãŒãã£ãªãã£ããããŸããã ããã¯UNICSã§ãååã¯Multicsã埮åŠã«ãããŒãªã³ã°ããŸãã ãã®åŸãUNIXã§å€ç°ããŸããã ããã¯ãŒãçãšèŠãªãããšãã§ããŸãã
cp
ã³ãã³ãã®æåã®ããŒãžã§ã³ã¯ãåŒæ°ããã¢ã§åŠçããŸããã
# cp file11 file12 file21 file22 ...
dsw
ïŒã¹ã€ããã䜿çšããåé€ïŒã³ãã³ãã«ããããã¡ã€ã«ã察話圢åŒã§åé€ã§ããŸããã
Multicsããã³ããã«ä»¥åã®CTSSãçŸä»£ã®Unixã©ã€ã¯ãªã·ã¹ãã ã«äžãã圱é¿ïŒ
- ã·ã§ã«ãMulticsã§ã¯ãåã«ã·ã§ã«ãšåŒã°ããŠããŸããã UNIXã§ã¯ãçµæãä»£å ¥ããããšã¯ `command`ã®ããã«èŠããMulticsã§ã¯[command]ã®ããã«ãªããŸãã
-
ls
ãpwd
ãchdir
ïŒMulticsã®cwd
ïŒãmail
ãman
ïŒMulticsã®help
ïŒãªã©ã®å€ãã®ã³ãã³ãã -
rc
ãã¡ã€ã«ãä»ããæ§æã CTSSã«ã¯RUNCOM
ããã°ã©ã ããããŸããã -
roff
ãããã¹ããã¬ã³ããªã³ã°ããããã®ã³ãã³ãã CTSSããã³Multicsã§ã¯ãããã¥ã¡ã³ãã¯RUNOFF
ããŒã ã«ãã£ãŠäœæãããŸãã - ãã€ãã®åçŽãªã¹ããªãŒã ãšããŠã®ãã¡ã€ã«
- æåãšæ¹è¡ã®ã¹ããªãŒã ãšããŠã®ããã¹ã
- ããªãŒãã¡ã€ã«ã·ã¹ãã
- äœã¬ãã«ã®ããŒããŠã§ã¢æ©èœãé ããã£ã¹ã¯ã¢ã¯ã»ã¹API
- I / Oé¢æ°ã®åŒæ°æ§é ã«ã¯ããã¡ã€ã«ãã³ãã©ããããã¡ãããã³å€ãã®æåãå«ãŸããŸã
- I / Oãªãã€ã¬ã¯ã
ãªãããŒã¯ã¹ããŒãªãŒèšäºã§æ¬¡ã®ããã«æžããŠããŸãããäžè¬çã«ãUNIXã¯éåžžã«ä¿å®çãªã·ã¹ãã ã§ãã ããã«å®è£ ãããŠããã¢ã€ãã¢ã®ã»ãã®äžéšã ããæ¬åœã«æ°ãããã®ã§ãã ããããCTSSã¬ã¬ã·ãŒã®å Žåãããã§ããæªããããŸããã ã
PDP-7 UNIXã«ã¯iããŒããåãããã¡ã€ã«ã·ã¹ãã ããããŸããããç©çãããã¯ã®ãªã¹ããšæå°éã®ã¡ã¿ããŒã¿ïŒãµã€ãºãäœææéããã¡ã€ã«ã¿ã€ãïŒãã»ãšãã©å«ãã§ããŸããã§ããã ç¹å¥ãªãã¡ã€ã«ãšãã£ã¬ã¯ããªããµããŒããããŸãããããã¡ã€ã«ãã¹ã¯ãããŸããã§ããã ãããããããã¡ãªã³ã°ããããŸããã å¥ã®éèŠãªå¶éïŒ
- ãã£ã¬ã¯ããªãšç¹æ®ãã¡ã€ã«ã¯ããã¡ã€ã«ã·ã¹ãã ãäœæãããšãã«ã®ã¿äœæã§ããŸãã
- ãã©ã€ãã¯1ã€ããååšã§ããŸãã
- ãã«ãããã°ã©ãã³ã°ã¯ãµããŒããããŠããŸããã åžžã«ã¡ã¢ãªã«ååšã§ããããã°ã©ã ã¯1ã€ã ãã§ãã
- ç©çãã£ã¹ã¯ã¢ã¯ã»ã¹ã«ããã·ã¹ãã ãå®å šã«ãããã¯ããã
- forkãexecãwaitã®åŒã³åºãã¯ãããŸããã§ããã ã·ã§ã«ã¯æŸèæãä»ããŠæ©èœããŸãããããã°ã©ã ãèµ·åãããšãã·ã§ã«ã¯å®äºããå®äºæã«ããã°ã©ã ã¯ã·ã§ã«ãåèµ·åããŸããã
PDP-7 UNIXã¯ãBCPLèšèªã®åœ±é¿äžã§äœæãããé«ã¬ãã«èšèªBã®å§ãŸãã§ããããŸãã ããã¹ãªãããŒã¯ãBã¯åã®ãªãCã ãšèšããŸããã BCPLã¯8Kã®ã¡ã¢ãªã«åãŸãããã³ããœã³ã«ãã£ãŠæ éã«åèšèšãããŸããã ç§ã¯åŸã ã«Cã§è²ã¡ãŸãããã«ãŒãã«ãšPDP-7 UNIXããã°ã©ã ã¯å®å šã«ã¢ã»ã³ãã©ãŒã§æžãããŠããããšãæãåºããŸãã
BCPLã®ããã€ã®å¡ã®äŸ
UNIXã¯PDP-9ã§ãæ©èœããŸããã 1969幎ã«ã¯ãæåã®ARPANETãéå§ãããæåã®RFCãå ¬éãããŸããã
UNIXéçºããŒã ã¯BTLãšãã£ããããŠã24 KBã®ã¡ã¢ãªãæèŒããããé«åºŠãªã³ã³ãã¥ãŒã¿ãŒã§ããPDP-11 / 20ãè³Œå ¥ããŸããã OSãªãã§å®è¡ããããã¥ã¡ã³ãã®ç·šéããã³ç·šéçšã®ã·ã¹ãã ãäœæããéçºã«ã®ã¿UNIXã䜿çšããããšãçŽæããŸããã UNIXã¯1971幎åé ã«æ°ããã³ã³ãã¥ãŒã¿ãŒã§èµ·åãããŸããã 12 KBã®ã¡ã¢ãªãã«ãŒãã«ã«ãã£ãŠå æãããããå°ãã¯ããã°ã©ã ã«ãã£ãŠå æããããã®ä»ã¯ãã¹ãŠramdriveã®äžã«çœ®ãããŸããã
åçïŒ1971幎11æïŒ
åçã¯ãMMUããã³ããŒããŠã§ã¢ã¡ã¢ãªä¿è·ãªãã§PDP-11 / 20ã§æ©èœããŸããã ãã®ãããäœæ¥ã®å®å®æ§ãšé害ã«å¯Ÿããæµæåã¯æšæºã«éããŸããã§ããã ãã«ãããã°ã©ãã³ã°ããããŸããã§ãããããã¡ã€ã«ãã¹ã¯ãã§ã«è¡šç€ºãããŠããŸããã ãã®ãããªã·ã¹ãã ã³ãŒã«ã®ããã¥ã¡ã³ãããããŸããïŒ
break, cemt, chdir, chmod, chown, close, creat, exec, exit, fork, fstat, getuid, gtty, ilgins, intr, link, mkdir, mount, open, quit, read, rele, seek, setuid, smdate, stat, stime, stty, tell, time, umount, unlink, wait, write.
ããã°ã©ãã³ã°èšèªã®ãã¡ãã¢ã»ã³ãã©ãŒãBãBASICãFORTRANããµããŒããããŠããŸããã ãŸã ãªãã®ã§ã
Bããã³ã¢ã»ã³ãã©ãŒã®éçºç°å¢ã®ãã¡ã€ã«ïŒ
/bin/as
ã¢ã»ã³ãã©
/bin/as
ã ããã©ã«ãã®åºåãã¡ã€ã«ã¯
a.out
ãšåŒã°ããŸã
/bin/ld
ãªã³ã¯ãšãã£ã¿ïŒãªã³ã«ã¯ããã³ã³ããã¹ãã«äŸåããŠããŸãããå ã®ç¿»èš³ãã翻蚳ãååŸããã®ã¯éåžžã«å°é£ã§ã-ãããã®ç¿»èš³ïŒ ã äžæãã¡ã€ã«ã®ç«¶åã®ãããäžåºŠã«1ã€ã®ãã£ã¬ã¯ããªã§äœæ¥ã§ãããŠãŒã¶ãŒã¯1人ã ãã§ãã
/bin/nm
ã¯ãã¢ã»ã³ãã©ãŒãŸãã¯ããŒãããŒããŒã®çµæããã·ã³ãã«ããŒãã«ãåºåããŸã
/bin/strip
ã¯ããã€ããªããäœåãªæåãåé€ããŸã
/bin/un
ã¯ãããã°ã©ã å ã®æªå®çŸ©æåããªã¹ãããŸã
/etc/as2
ã»ã«ã³ããã¹
/etc/as2
/etc/ba
ã¢ã»ã³ãã©ãŒBïŒprog.i-> prog.sïŒ
/etc/bc
ã³ã³ãã€ã©BïŒprog.b-> prog.iïŒ
/etc/bilib
ã€ã³ã¿ããªã¿ã©ã€ãã©ãªB
/etc/brt1, /etc/brt2
ã©ã³ã¿ã€ã B
/etc/liba.a
ã«ãŒãã³
/etc/libb.a
Bã®ã«ãŒãã³ã©ã€ãã©ãª
/usr/b/rc
Bããã°ã©ã ããã€ããªã«ã³ã³ãã€ã«ããããã®ã·ã§ã«ã¹ã¯ãªããã ãã§ãŒã³ã§åäœããŸãprogram.b-> program.i-> program.s-> a.out
åçã§ã¯ãèäœæš©ã«ã€ããŠã¯ã©ãã«ãèšåããŠããŸããã ããã¥ã¡ã³ãã¯å°è±¡çãª7å·»ã®ãšãã£ã·ã§ã³ã§ããïŒ cm.bell-labs.com/cm/cs/who/dmr/1stEdman.html ã èŠçŽïŒ
- ããŒã ã ãŠãŒã¶ãŒãçŽæ¥åŒã³åºãããã°ã©ã
- ã·ã¹ãã ã³ãŒã« ç¹å¥ãªããã»ããµã³ãã³ããä»ããŠåŒã³åºãããŸã
- ã«ãŒãã³ã ãŠãŒã¶ãŒããã°ã©ã ã«ãã£ãŠåŒã³åºãããŸã
- ç¹å¥ãªãã¡ã€ã«
- ãã¡ã€ã«åœ¢åŒ
- éå€
ãã®åŸã®ãšãã£ã·ã§ã³ã§ã¯ãã·ã¹ãã ã¡ã³ããã³ã¹å°çšã®ç¬¬8å·»ãç»å ŽããŸããã
ããã¥ã¢ã«ã®åè«çããŒãžã¯ããã¥ã¢ã«
man page
ãšåŒã°ããã¿ã€ãã«ãç°¡åãªèª¬æãããã¹ãã圱é¿ãåãããã¡ã€ã«ã®ãªã¹ãããªã³ã¯ã蚺æããã°ãããã³äœæè ãå«ãŸããŠããŸããã ããã¥ã¡ã³ãã¯
ed
ãšãã£ã¿ãŒã§æºåããã
roff
ããã°ã©ã ã§ãã©ãŒããããããŸããã æåã®ããŒãžã¯
cat
ããŒã å°çšã§ããã
第2çââïŒ1972幎6æïŒ
第2çââãã³ã³ãã€ã©Cã
è¿œå ãããŸããã å¥ã®èšèªã§æžãããŠããŸãã æ°ããã³ãã³ããšã·ã¹ãã ã³ãŒã«ãç»å Ž::ïŒ
:(1), cc, echo(1), exit(1), goto(1), if(1), login(1), m6(1), man(1), mt(1), opr(1), stty(1), tmg(1), tss(1), kill(2), sleep(2), sync(2), atan(3), hypot(3), nlist(3), qsort(3), salloc(3), and sqrt(3).
:(1)
äœãããŸããã ããšããšã¯gotoã®ã©ãã«ã§ãããããã®ãããªè¡ãç¡èŠããããã«ã·ã§ã«ã«æããå¿ èŠããããŸãã
cc(1)
Cã³ã³ãã€ã©
m6(1)
æ±çšãã¯ãããã»ããµ
opr(1)
ã¯å°å·ãžã§ããéä¿¡ããŸã
tmg(1)
ã³ã³ãã€ã©ã³ã³ãã€ã©ã TMGã¯ãã³ã³ãã€ã©ãèšè¿°ããããã®èšèªã§ãã
Honeywell TSS OSãžã®ãªã¢ãŒãã¢ã¯ã»ã¹çšã®
tss(1)
ã€ã³ã¿ãŒãã§ã€ã¹ã
ä»»æã®é·ãã®æååãæäœããããã®
salloc(3)
ã©ã€ãã©ãª
第äºçã§ã¯ããã«ãããã°ã©ãã³ã°ãã¡ã¢ãªä¿è·ããããŸããã§ããããèäœæš©ãç»å ŽããŸãã
第3çïŒ1973幎2æïŒ
ãã®ããŒãžã§ã³ã¯ãPDP-11 / 45ã§åäœããã¡ã¢ãªä¿è·ãšãã®å€§å®¹éïŒæ倧256 KbïŒã®ãµããŒããåããŠããŸããã
æ°æ©èœã®ãã¡ããã€ãã©ã€ã³ãšãã«ãããã°ã©ãã³ã°ã«æ³šæãæãå¿ èŠããããŸãã ããã«ïŒ
cdb(1)
ãããã¬ãŒC
crypt(3)
ãã¹ã¯ãŒãæå·åæé
proof(1)
proto-diff
ps(8)
ããã»ã¹ãªã¹ã
sno(1)
SNOBOL IIIã³ã³ãã€ã©ãŒããã³ã€ã³ã¿ãŒããªã¿ãŒ
speak(1)
ã¹ããŒãã·ã³ã»ãµã€ã¶ãŒã å ¥åã§åèªã®ã¹ããªãŒã ãåãåããçºé³ãäžãã
typo(1)
ããã¥ã¢ã«ããã®åŒçšïŒ "...ããã¥ã¡ã³ãå ã®ãŸããªåèªãã¿ã€ããã¹ãããã³ãããã¯ã¹ã¬ãŽã¡ããæ€çŽ¢ããæšæºåºåã«åºåããŸã"ïŒ
yacc(6)
ã³ã³ãã€ã©ã³ã³ãã€ã©
第4çïŒ1973幎11æïŒ
ããã¯å®éã«ã¯Cã§æžãçŽããã第3çã§ããæ°ããPDP-11ã¢ãã«-/ 60ããã³/ 70ããµããŒããããŠããŸãã ããé«ã¬ãã«ã®èšèªã®éçºã«ãããã·ã¹ãã ã®ããªã¥ãŒã ã¯3åã®1å¢å ããŸããã ã³ãã³ãã«ãã€ããŒã¢ããããŒãããããèšèªBã¯é ä¿¡ããé€å€ãããŸããã
Habréã®ãã®ããŒãã«é¢ãããã®ä»ã®äºé
habrahabr.ru/post/114588
habrahabr.ru/post/126369
habrahabr.ru/post/147774-éåžžã«ããæžãããŠããŸãã äž¡æ¹ã®èšäºãåããœãŒã¹ã«äŸåããŠãããããããã¹ãã¯å Žæã§ç¹°ãè¿ãããŸã
habrahabr.ru/post/46432