2012-01-01ãã1å¹´éã®è¨äºä¸è¦§
ã¯ããã« ä»åãå¼ãç¶ãinitã®ã½ã¼ã¹ã³ã¼ããè¦ã¦ããã¾ããä»åã§ããããinitãä¸æ®µè½ã§ãã init http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6/usr/source/s1/init.cååã®ã¨ã³ããªã§ãsingle user modeã®æã®èµ·åå¦çã確èªãããã¨ãã§ãã¾ãããâ¦
ã¯ããã« ãã¯ããã¦ã®OSã³ã¼ããªã¼ãã£ã³ã° ãUNIX V6ã§å¦ã¶ã«ã¼ãã«ã®ããã¿ããã¨ããæ¬ã2013å¹´1æ8æ¥ã«æè¡è©è«ç¤¾ããåºçãã¾ããã¯ããã¦ã®OSã³ã¼ããªã¼ãã£ã³ã° ~UNIX V6ã§å¦ã¶ã«ã¼ãã«ã®ããã¿ (Software Design plus)ä½è : éæ³éå®åºç社/ã¡ã¼ã«â¦
ã¯ããã« initã®ã½ã¼ã¹ã³ã¼ãããå¼ãç¶ãè¦ã¦ããã¾ããä»åã¯èµ·åæã®å¦çã§ãããhangupãèµ·ããæã®åéãã¤ã³ãã§ãããåæããå§ãã¾ãããããããä»ãããªã®ã§ãããUNIX 6th ã·ã¹ãã ããã°ã©ãã³ã°(code reading)ã®ã¹ã¿ã¤ã«ã«ã¤ãã¦ã§ããã«ã¼ãâ¦
ã¯ããã« ååã®ã¨ã³ããªã§initã®ä»æ§ãæããã«ããã®ã§ãä»åããã¯ããããinitã®ã³ã¼ããèªãã§ããã¾ãã ã³ã³ã½ã¼ã«ã¹ã¤ãã ã¨ãæ¬é¡ã«å ¥ãåã«ãååã®ã¨ã³ããªã§ãã³ã³ã½ã¼ã«ã¹ã¤ããã£ã¦ä½ï¼ãã¨æ¸ããã¨ãããã¾ãããããããã³ã¡ã³ããé ãã¾ãâ¦
ã¯ããã« åå¹´ãããæ±ãã¦ããã¨ãããã¨ããä¸å¿ä¸æ®µè½ããã®ã§ãã¾ãããã°ãæ´æ°ãã¦ãããã¨æã£ã¦ãã¾ããUNIX v7 code readingãç¶ç¶ããã®ã¨ãããã«å ãã¦UNIX v6 ã·ã¹ãã ããã°ã©ãã³ã°(code reading)ã¨ãããã®ãå§ãã¾ããä»ã«ãããã¤ããã¿ã¯â¦
ã¯ããã« ãã¾ãã¾ãããªãã¤ã¼ããè¦ãããã®ã§ã window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "httâ¦
ã¯ããã« ä¸æã«å§ã¾ã£ãç¥ã ã®æ¯ã(UNIX v6ã¯ã¤ãºåæ¦)ã楽ããã£ãã®ã§togetterã§è¨é²ãã¦ããã¾ããã¿ãªãããUNIX v6ã¯ã¤ãºåæ¦ã«åå ãã¦ç¥èãæ·±ãåãã¾ãããï¼ togetter http://togetter.com/li/342105
ã¯ããã« ä»åã¯superblockã«é¢ããå¦çããalloc( ), ialloc( )ãªã©ãããã¯ããã¤ã¹ã®ãªã½ã¼ã¹ç®¡çãè¦ã¦ããã¾ãã iinit( ) èµ·åæã®main( )ããiinit( )ãå¼ã°ããroot deviceã®åæåãè¡ããã¾ããroot deviceã®ã0ããæ°ãã1çªç®ã®block(=superblocâ¦
ã¯ããã« ä»åã¯ãã¡ã¤ã«ã®ã¯ãã¼ãºå¦çãè¦ã¦è¡ãã¾ãã close( ) ä¸è¨ã®ããã«Cã®ããã°ã©ã ãããªã¼ãã³æ¸ã¿ã®ãã¡ã¤ã«ãã£ã¹ã¯ãªãã¿ãå¼æ°ã«close( )ãå®è¡ããã¨ã close( fp ) ; libcã®close( )ããcloseã·ã¹ãã ã³ã¼ã«(sys close(=6))ãçºè¡ãããclâ¦
ã¯ããã« ããã¨ä¸çºãã¿ã大ãããã¨ãã£ã¦ã¾ãããä»äºã§å¿ è¦ã«æããã®ã§ä½ã£ã¦ã¿ã¾ããããã£ãããªã®ã§ããã§ãç´¹ä»ãã¿ã¤ãã«ããã£ã¨é©åãªãã®ã«æ¸ãæãããã èæ¯ è«¸ã ã®äºæ ãããé¨åçã«åé·ãªã³ã¼ããæ¸ããªãã¨ãããªãæãããã¨æãã¾ããâ¦
ã¯ããã« Lionsæ¬èªæ¸ä¼#16ã«åå ãã¦ãã¾ãããã¡ã¢ãæ®ãã¦ããã¾ããä»åã¯21ç« ã®ãã¤ãã®æ¯ãè¿ããè¡ãã¾ããã togetter é¢é£ãã¤ã¼ããtogetterã§ã¾ã¨ãã¾ããã http://togetter.com/li/291759 çµãã㫠次åã®Lionsæ¬èªæ¸ä¼ã¯5æ27æ¥(æ¥)ã«éå¬ããâ¦
ã¯ããã« ä»åã¯ãã¡ã¤ã«ã®èªã¿æ¸ãå¦çãè¦ã¦ããã¾ããã¯ãã¼ãºå¦çã¯æ¬¡åã«åãã¾ãã read( ), write( ) read( ) http://www.tamacom.com/tour/kernel/unix/S/99.html#L12 write( ) http://www.tamacom.com/tour/kernel/unix/S/99.html#L20 ã¦ã¼ã¶ããã°â¦
ã¯ããã« ä»åãUNIX 7thã®ã³ã¼ããèªã¿è§£ãã¦ããã6thã¨ã®å·®åãæããã«ãã¦ããã¾ããä»åã¯ãã¡ã¤ã«ã®ãªã¼ãã³æã®å¦çãè¦ã¦ããã¾ãã creat( ), open( ) ã¦ã¼ã¶ããã°ã©ã ããsys open(æ¢åã®ãã¡ã¤ã«ã®ãªã¼ãã³), sys creat(æ°è¦ã«ãã¡ã¤ã«ãçæãâ¦
ã¯ããã« ã¨ããã¨ã¤ããªã«ãã¼ã«ã®å¤ã«ããµãã«å§ã¾ã£ãPDP11/40ã®ã¬ã¸ã¹ã¿ã«ã¾ã¤ããè°è«ãã¾ã¨ãã¦ããã¾ããtwitterä¸ã§ããã®ãããªããåããããªããæã®UNIX, PDP11ã«ã¤ãã¦èªã¿è§£ãã¦ãã£ã¦ããã®ãè¦ãããããé¢ç½ãã¨æããã¾ã¨ãã¾ãããæè¿å¤â¦
ã¯ããã« ãitrunc( )ã7thã¨6thã§ã¯ããªãå¤ãã£ã¦ããããã¨ããã³ã¡ã³ããé ãã¾ããã window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createâ¦
ã¯ããã« ååã®ã¨ã³ããªã§ãUNIX 6thã¨7thã§process switch(context switch)ã®ä»æ§ãéããããããªãã¨ãã話ããã¾ãããä»åã¯ãããæããã«ããããã«ã7thã®save( )ã¨resume( )ã確èªãã¦ããã¾ããnewproc( )ã§çæããããã»ã¹ãswtch( )ã§é¸æããâ¦
ã¯ããã« ä»åã¯èµ·åæã«å®è¡ãããmain( )ãè¦ã¦ããã¾ãããã¾ãç´°ããã¨ããã¯è¿½ã£ã¦ãããªãã¤ããã§ããå¦çãé¢æ°ã«åãåºãã¦ããã¨ããã¨ããcã®ææ³ãå¤ãã£ã¦å¤æ´ããã¦ããã¨ããã¨ãã«ã¯è§¦ãã¾ãããè«ççã»è¨è¨çã«å¤æ´ã®ããç®æã ã注ç®ãã¦â¦
http://d.hatena.ne.jp/takahirox/20110827/1314441832ã®ç¶ã ç´¹ä»åç» å 責 ã¾ã ãã°ãã°ãªç¶æ ã§ããç¡éã«ã¼ããªã©ã«ã¯ã¾ãå¯è½æ§ãããã¾ããèªå·±è²¬ä»»ã§ä½¿ç¨ãã¦ãã ããããã¼ãã¯ã¼ãªãã·ã³ã ã¨çµæ§é ãã§ãã 使ãæ¹ ä¸è¨ã®ãªã³ã¯ãã¯ãªãã¯ãã¦ãã â¦
ã¯ããã« Unix 6th Edition readingãä¸æ¯ã¤ããã®ã§ã7th Editionã®readingã«ç§»ãã¾ãã6thã®ã¨ãã¨åãããã«ãããã§ã¡ã¢ãæ¸ãã¦ãããã¨æã£ã¦ãã¾ããä»åã¯ã6thã¨7thã®å·®åããã£ã¨æããã«ãã¦ãã©ãããæ¹éã§ã¡ã¢ãæ¸ãã¦ãããã決ãã¾ãã ã½ã¼â¦
ãã®ã¨ã³ããªã¯http://d.hatena.ne.jp/takahirox/20120131/1328006885ãå訳ãããã®ã§ãã ã¯ããã« æè¿UNIX 6thã®ã½ã¼ã¹ã³ã¼ãã®èªæ¸ã¡ã¢ãæ¸ãçµãã¾ãããã¿ããªãã«ãUNIX 6thã®ã½ã¼ã¹ã³ã¼ããèªããã¨ããªã¹ã¹ã¡ãã¾ãããã®çç±ããã®ã¨ã³ããªã§æ¸ãâ¦
Introduction Lately, I finished writing the note of UNIX 6th code reading.I recommend you to read the UNIX 6th source codes, too.I'll show you why it's so worthy, here. Summary UNIX 6th is appropriate for who has never read the source codeâ¦
ã¯ããã« Lionsæ¬èªæ¸ä¼#13ã«åå ãã¦ãã¾ãããã¡ã¢ãæ®ãã¦ããã¾ããä»åã¯19ç« ãèªã¿ã¾ããã togetter é¢é£ãã¤ã¼ããtogetterã§ã¾ã¨ãã¾ããã http://togetter.com/li/249512 çµãã㫠次åã®Lionsæ¬èªæ¸ä¼ã¯2æ26æ¥(æ¥)ã«éå¬ãããäºå®ã§ãããOSã®â¦
https://chrome.google.com/webstore/detail/mjldmihpfjefdkkmnpijmdeafgfkfjmi?hl=ja&gl=JP æ¬æã¯åå¾ãã¾ãããæ¥ä»ã¨ã«ãã´ãªã¨URLã¨ã¿ã¤ãã«ã®ã¿ãã¹ã¯ãªã¼ã³ã·ã§ãã 解説åç»(è±èª) the subscription of the movie. i'll introduce my chrome extensiâ¦
introduction this entry follows http://d.hatena.ne.jp/takahirox/20110723/1311406642this is the notes of ZIP workshop. the blog of the host is here. you can get handout. http://d.hatena.ne.jp/n7shi/20110529 atnd http://atnd.org/events/14792â¦
é ãå¹´è³ã®æ¨æ¶ãåãªãç¾å®éé¿ããã¾ã«ã¯æè¡çãªè©±é¡ä»¥å¤ããããã³ã¿ãã»ãã¼ã
UNIX v6ã®a.outã«ã¤ãã¦ã¾ã¨ããå 容ãä¸æã®çµµã«ãã¦ã¿ã¾ãããã¦ã¼ã¶ããã¥ã¢ã«5ã®a.outã®é ç®ãçµµã«ããæãã§ããããã¤ãã¯ã¾ã ç解ã§ãã¦ããªãã¦ç©ºç½ã«ãªã£ã¦ãã¾ãããäºæ¿ãã ãã®æ å ±ã¯UNIX v6 ã¤ã³ã¿ããªã¿ã®ä½æã«å¿ è¦ãªãã®ãªã®ã§ããã調ã¹ã¦â¦
ã¯ããã« ååã¯å¯¾è©±å端æ«ã®å¤æ ã確èªãã¾ãããä»åã¯ç«¯æ«ã®èªã¿æ¸ãå¦çãè¦ã¦ããã¾ããã¤ã³ã¿ã¼ãã§ã¤ã¹ã«KLã使ç¨ãã¦ããã¨ããåæã§èªã¿è§£ãã¦ããã¾ããLionsæ¬ã§è¨ãã¨25ç« ã«ãããã¾ããç·´ç¿åé¡ãé¤ããæå¾ã®ç« ã§ãããã®UNIX v6 code readinâ¦
ã¯ããã« ä»åã¯å¯¾è©±å端æ«ã®å¦çæ¹æ³ãè¦ã¦ããã¾ããLionsæ¬ã§è¨ãã¨24ç« ã«ãããã¾ãã 対話å端æ«ã¨ã¯ 対話å端æ«ã¨ã¯ä½ãªã®ããã¾ãã¯èª¿ã¹ã¦ã¿ã¾ããããã¬ã¿ã¤ã端æ«ã¨ããã®ãããã«ãããããã§ããhttp://ja.wikipedia.org/wiki/%E3%83%86%E3%83%ACâ¦
ã¯ããã« ååã®ã¨ã³ããªã§ãã£ã©ã¯ã¿ããã¤ã¹ãã³ãã©ã®å®è£ ã確èªãã¾ãããä»åã¯ãã®ä¸ã§ä½¿ç¨ããã¦ããbuffer pool, putc( ), getc( )ã®è©³ç´°ã確èªãã¦ããã¾ããLionsæ¬ã§è¨ãã¨23ç« ã®å 容ã§ãã buffer pool buffer poolã®å®æ ã¯ã7908è¡ç®ã8140è¡ç®â¦
ã¯ããã« ä»åããLionsæ¬ã®æçµã»ã¯ã·ã§ã³ãè¦ã¦ããã¾ããä»åã¯22ç« ãæ±ãã¾ããæåã«ãã£ã©ã¯ã¿ããã¤ã¹ã¨ã¯ä½ãã解説ãããã®å¾ã©ã¤ã³ããªã³ã¿ã®ããã¤ã¹ãã©ã¤ããè¦ã¦ããã¾ãã ãã£ã©ã¯ã¿ããã¤ã¹ã¨ã¯ UNIXã§ã¯ããã¤ã¹ãäºã¤ã®ç¨®é¡ã«åãã¦æ±ã£â¦