Dash1.Nothinkpad.Pdf

Total Page:16

File Type:pdf, Size:1020Kb

Dash1.Nothinkpad.Pdf '.4ON6 .4-37-N6L; 37-561ON-, )N59-45 6DEI >ook M=I JOFAIAJ troff -ms -mpictures|lp -dstdout|ps2pdf En LK?E@= 5=nI >OJDA=KJDoH,KIEnC=LAnoLo6DEnk2=@: HKnnEnCJDA'BHonJoFAH=JEnCIOIJAm. 4An@AHA@: -#- # '.4ON6 'BHonJ.oHC 15*N-!:'%&$'%$''&"# 6DEI EI = MoHk oB BE?JEon. N=mAI, ?D=H=?JAHI, Fl=?AI =n@ En?E@AnJI AEJDAH =HA JDA FHo@K?J oB JDA =KJDoHߣI Em=CEn=JEon oH =HA KIA@ BE?JEJEoKIlO, =n@ =nO HAIAm>l=n?A Jo =?JK=l FAH­ IonI, lELEnC oH @A=@, >KIEnAIIAI, ?omF=nEAI, ALAnJI oH lo?=lAI EI AnJEHAlO ?oEn?E@AnJ=l. 4E?D=H@ MEllAH =n@ 5JALA 5J=llEon =HA noJ =BBElE=JA@ MEJD 'BHonJ. 6DA oFAH=JEnC IOIJAm @oAInoJD=LA=noBBE?E=lFoHJIJHAA. M16/++/2K>lE?,om=En The study of this Book is forbidden. It is wise to destroy this copy after the first reading. Whosoever disregards this does so at his own risk and peril. These are most dire. Those who discuss the contents of this Book are to be shunned by all, as centres of pestilence. All questions of the Law are to be decided only by appeal to my writings, each for himself. There is no law beyond Do what thou wilt. 9FRONT FREQUENTLY QUESTIONED ANSWERS ACHTUNG! 'BHonJ@=IDm=nK=lEIMHEJJAn>O=n@BoH'BHonJKIAHI. Those who can do, those who can’t write and those who can’t write make ezines. ߞ 5=FAMKllAn@AH ACHTUNG! 1nBoHm=JEon FHoLE@A@ >O JDEI @o?KmAnJ EI 7NO..1+1)L =n@ m=O >A oKJ@=JA@ oHjKIJFl=En94ON/.7IAOoKH>H=En.NO4-.7N,5. _sl’s info is incorrect. ߞ =nJD_N ACHTUNG! 6DEI @o?KmAnJߣI 5647+674- ߞ =n@ IomA oB EJI 6-:6 ߞ EI Fl=CE=HEzA@ ߞ BHomJDAO2-N*5,.)3 i really hate the openbsd content in the fqa ߞ =EjK # 0 − Introduction to Plan 9 .-9D=JEI2l=n'? ..-2l=n'EInoJ7N1: ...-2l=n'EInoJFl=n'FoHJ ... -2l=n'EInoJ1nBAHno .. -2l=n'EInoJ=FHo@K?J ..!-2l=n'EInoJBoHOoK . -9DO2l=n'? . .-9D=J@oFAoFlAlEkA=>oKJ2l=n'? . ..-9D=J@oOoKKIA2l=n'BoH? . -9D=J@oFAoFlAD=JA=>oKJ2l=n'? . .-9D=JEInoJEn2l=n' . .!-9DO@E@2l=n'ߣI?HA=JoHICELAKFon2l=n'? . .!.-9DO@E@2l=n'ߣIKIAHICELAKFon2l=n'? . .!. -9DO@E@+1)CELAKFon2l=n'? . ."-9D=JEIJDA@A=lMEJD2l=n'ߣIMAEH@lE?AnIA? $ . .".-4E?D=H@5J=llm=nD=JAIJDA2l=nNEnAlE?AnIA?EH?= . .". -6DAo@A4==@JD=JAIJDA2l=n'lE?AnIA?EH?= ! . .".!--LAHOonAD=JAIJDA2l=n'lE?AnIA?EH?= " . ."."-24)15-.O4'.4ON6ߣ5*OL,)+61ON4-:L1+-N51N/ .!-.KHJDAH4A=@EnC .!.-2l=n'F=FAHI .!. -M=nF=CAI .!.!-9A>F=CAI .!."-*ookI 1 − Introduction to 9front .-9D=JEI'BHonJ? ..-+EHno . -OnMD=JIOIJAmI@oAI'BHonJHKn? .!-9DOmECDJ1M=nJJoKIA'BHonJ? .!.-NAM.A=JKHAI .!..-NAM2HoCH=mI .!.. -NAM0=H@M=HA5KFFoHJ ."-1I'BHonJHA=llOBHAA? .#-0oM?=n1DAlFIKFFoHJ'BHonJ? .$-9Dom=EnJ=EnI'BHonJ? .%-9DAnEIJDAnANJHAlA=IAoB'BHonJ? .&-9D=JEIEn?lK@A@MEJD'BHonJ? .'-+=n1KIA'BHonJ=I=@AIkJoFIOIJAm? .-9DOEI/EInߣJ2Ho@K?J:En?lK@A@? .-.EnA,MDAHA?=n1CAJ'BHonJ? ..-MEHHoHI ...-'BHonJ.EIo % ... -MAH?KHE=lHAFoIEJoHO 2 − Getting to know 9front .-9A>2=CAI . -M=ElEnCLEIJI . .-M=ElEnCLEIJ)H?DELAI . -OJDAHKIABKlm=ElEnClEIJI .!-M=nK=l2=CAI .!. -0oM@o1MHEJAmOoMnm=nK=lF=CA? ."-4AFoHJEnC*KCI .".-;oKH>KCHAFoHJ57+K5 .". -0oM@o1CAJmoHAKIABKlEnBoBoH@ALAloFAHI? .". .-6=kA=FDoJooBJDAF=nE?I?HAAn .". -M=kA=IJ=?kJH=?AoB=?H=IDA@FHo?AII .". .!-M=kA=FHo?AIIIn=FIDoJ .#[email protected] .#.-0oM@o1MHEJACoo@F=J?DAI? .#. -0oM@o1IAn@EnmOF=J?DAI? 3 − Hardware !.-5AlA?JEnC0=H@M=HA !. -KnoMn9oHkEnC0=H@M=HA !. .-1nFKJ,ALE?AI !. ..-ME?A !. ...-1*M/LAnoLo !. .. -KAO>o=H@I !. .. .-1*M/LAnoLo !. .-)K@Eo & !. -/H=FDE?I !. .-)/2 !. -1nJACH=JA@ !. .!-2+1-NFHAII !. .!-NAJMoHkEnC !. .!.--JDAHnAJ !. .!..-1nJACH=JA@ !. .!.. -75* !. .!..!-2+M+1) !. .!. -9E.E !. .!. .-*HE@CAANJAHn=l !. .!. -MEnE-2+1 !. .!. .!-MEnE-2+1-NFHAII !. .!. ."-2+1 !. .!. .#-2+M+1) !. ."-6=>lAJ,ECEJEzAHI !. .".-5AHE=l !. ."..-1nJACH=JA@ !. .#-L=FJoFI !. .#.-)?AH !. .#. -1*M/LAnoLo !. .#. .-6DEnk2=@ !. .#.!-6oIDE>= !. .#.!.-5=JAllEJA !. .$-,AIkJoFI !. .$.-AM=?DEnAI !. .$. -1CAl ' !. .$.!-5oAkHEI !. .$."-1*M/LAnoLo !. .$.".-6DEnk+AnJHA !.!-8EHJK=lM=?DEnAI !.!.-3AmK !.!..-1nIJ=ll=JEon !.!.. -2oIJ-1nIJ=ll=JEon*ooJEnC !.!.. .-MKlJE>ooJ !.!.."-NAJMoHkEnC !.!..".-LEnKN8,- !.!..". -OFAn*5,6)2 !.!..".!-9En@oMI6)2 !.!.."."-LEnKN6)2 !.!..#-)K@Eo !.!..$-/H=FDE?I !.!. -8EHJK=l>oN !.!. .--JDAHnAJ !.!. -)K@Eo !.!. .!-/H=FDE?I !.!. ."-KnoMn9oHkEnC8AHIEonI !.!.!-8EHJEo 4 − 9front Installation Guide ".-2HA-EnIJ=ll=JEon+DA?klEIJ ". -+HA=JEnC>ooJ=>lA'BHonJEnIJ=llmA@E= ". .-15OEm=CA ". -75*@HELA ". .-+HA=JEnCon2l=n' ". -+HA=JEnConLEnKN ". .!-*ooJ=HCI ".!-2AHBoHmEnC=IEmFlAEnIJ=ll ".!.->ooJ ".!. ->ooJ=HCI ".!.!-KIAH ".!."- LC=IEzA,monEJoH,moKIAFoHJ ".!.".-+D=nCEnCI?HAAnHAIolKJEon ".!.#- EnIJ/IJ=HJ ".!.$-?onBECBI ".!.%- F=HJ@EIk ".!.&-FHAF@EIk ".!.'-moKnJBI ".!.-?onBEC@EIJ ".!.-?onBECnAJ ".!..-@D?F ".!.. -m=nK=l ".!. -moKnJ@EIJ ".!.!-?oFO@EIJ ".!."-IOIn=mA ".!.#-JzIAJKF ".!.$->ooJIAJKF ".!.%-BEnEID "."--n?HOFJA@2=HJEJEonI 5 − Building the System from Source #.-9DOIDoKl@1>KEl@mOIOIJAmBHomIoKH?A? #. -*KEl@EnC'BHonJBHomIoKH?A #. .-7F@=JAIoKH?AI #. ..-DCH? #. -*KEl@EnCBHomIoKH?A #. .-+HoII?omFElEnC #.!-*KEl@EnC=n15O #."-+ommon2Ho>lAmIMDAn+omFElEnC=n@*KEl@EnC #.".-7FCH=@EnC?omFElAHI 6 − Networking $.-*ABoHAMACo=nOBKHJDAH $. -NAJMoHk?onBECKH=JEon $. .-0oIJn=mA $. -1@AnJEBOEnC=n@IAJJEnCKFOoKHnAJMoHkEnJAHB=?AI $. .-9EBE $. ..-1nJAHB=?AI $. ...-M=LAl=n $. ... -M=LAl=nF?E $. ...!-EMl $. ..."-HJ &$ $. ...#-MFE $. .. -92) $. ..!-9EBE4o=mEnC $. .."-9EBE,A>KC $. .!-12=@@HAII $. ."-,AB=KlJC=JAM=O $. .#-,N54AIolKJEon $. .#.-+=?DEnC,N5IAHLAH $. .#. -,N5=KJDoHEJ=JELAn=mAIAHLAH $. .#. .-6HoK>lAIDooJEnC,N5=KJDoHEJ=JELAn=mAIAHLAH $. .$-NAJMoHk-ME@A?onBECKH=JEon $. .%-)?JEL=JEnCJDA?D=nCAI $. .%.-N1+ $. .%. -?I $. .%.!-@nI $. .&-8AHEBOEnCnAJMoHkIAJJEnCI $. .&.-+DA?kEnCHoKJAI $. .&..-)@@EnCIJ=JE?HoKJAI $. .'-5AJJEnCKFOoKH'BHonJ>oN=I=BoHM=H@EnCC=JAM=O $. .-5AJJEnCKF=lE=IAIon=nEnJAHB=?A $.!-0oM@o1BElJAH=n@BEHAM=llMEJD'BHonJ? $."-,On=mE?0oIJ+onBECKH=JEon2HoJo?ol,0+2 $.".-,0+2?lEAnJ $.". -,0+2IAHLAH $.#-222 $.$-5AJJEnCKF=nAJMoHk>HE@CAEn'BHonJ $.%-0oM@o1>ooJBHomJDAnAJMoHk? $.%.-0oM@o1J?F>ooJ? $.%..-2=IIEnC=HCKmAnJIJoEF?onBEC=JJDA>ooJ=HCIFHomFJ $.%. -0oM@o1>ooJKIEnC2:-? 7 − System Management %.-2l=n'5AHLE?AIOLAHLEAM %..-9D=JEIJDAkAHnAl? %.. -9D=JEIJDABElAIAHLAH? %..!-9D=JEIJDA=KJDIAHLAH? ! %.."-9D=JEIJDA?FKIAHLAH? %..#-9D=JEI=JAHmEn=l? %. -KAHnAl?onBECKH=JEon=n@m=EnJAn=n?A %. .-0oM@o1moKnJJDA'B=JF=HJEJEon? %. -0oM@o1mo@EBOFl=n'.EnE? %. .!-KAHnAl?onBECKH=JEonBElA %. ."-KAHnAl@HELAHI %. .#-0oM@o1EnIJ=ll=nAMkAHnAl? %.!-.ElAIAHLAH?onBECKH=JEon=n@m=EnJAn=n?A %.!.-)@@EnCKIAHI %.!. -+onBECKHEnCnLH=m %.!.!-5AJJEnCKF=lEIJAnAHBoHnAJMoHk?onnA?JEonI %.!."-MoKnJEnC=BElAIOIJAmBHomKIAHIF=?A %."-)KJDIAHLAH?onBECKH=JEon=n@m=EnJAn=n?A %.".-+onBECKHEnC=n=KJDIAHLAH %."..-)LoE@EnC=nn@>AnJHOBoHJDA=KJDIAHLAH %.". -)@@EnCKIAHI %.".!-IA?IJoHA@ %.".!.-)@@EnCKIAHIJoIA?IJoHA %.".!. -+onLAHJEnCBHomFI'kJo@F'Ek %.#-+FKIAHLAH?onBECKH=JEon=n@m=EnJAn=n?A %.#.-+onBECKHEnC=?FKIAHLAH %.$-6AHmEn=l?onBECKH=JEon=n@m=EnJAn=n?A %.$.-+onBECKHEnC=JAHmEn=l %.$. -+onBECKHEnC=6AHmEn=lJo)??AFJ?FK+onnA?JEonI %.$.!-76+6EmAIOn? %.%-M=ElIAHLAH?onBECKH=JEon=n@m=EnJAn=n?A " %.%.-ImJF@.?onB %.%. -HAMHEJA %.%.!-n=mAI.lo?=l %.%."-HAmoJAm=El %.%.#-5M62oLAH6L5 %.%.$-1M)2"oLAH6L5 %.%.%-5F=m.ElJAHEnC %.%.%.-H=JBI %.%.%. -I?=nm=El %.%.&-6HoK>lAIDooJEnCJDAm=ElIAHLAH %.&-9A>IAHLAH?onBECKH=JEon=n@m=EnJAn=n?A %.&.-EF/DJJF@ %.&. -H?-DJJF@ %.'-6L5?AHJEBE?=JAI 8 − Using 9front &.-H? &..-2HomFJI &.. -/AnL &. -HEo &. .-6DA2oF-KFMAnK &. -9En@oM?onJHol &. .!-6ANJEnHEoMEn@oMI &. ."-5?HollEnC &. .#-MoKIA+DoH@EnC &. .$-KAO>o=H@5DoHJ?KJI &. .%-+oloHI?DAmA &. .&-9DOEIHEolEkAJDEI? # &. .'-JEFI &. .'.-6=kEnC=I?HAAnIDoJ &. .'. -2HALAnJ?onIolAmAII=CAIBHomoLAHMHEJEnCJDAI?HAAn &.!-6ANJ-@EJoHI &.!.-I=m &.!..-5?HollEnC &.!.. -MoKIA+DoH@EnC &.!..!-9DO@oAII=mD=LA=IAF=H=JAIn=HB>KBBAHBHomHEo? &.!.."-KAO>o=H@5DoHJ?KJI &.!. -=?mA &."-1nJAHnAJ &.".-M=El &."..-KF=IBI &."...-4A=@EnCCm=ElLE=1M)2 &."... -5An@EnC m=ElMEJDCm=El &.".. -nA@m=El &."..!-nKF=I &.". -NN62 &.".!-14+ &.".!.-EH?H? &.".!. -EH?% &.".!.!-EH?I &.".!."-MEH?H? &."."-.62 &.".#-0662 &.".#.-moJDH= &.".#. -=>=?o $ &.".#.!-DCAJ &.".#."-?D=Hon &.".#.#-E &.".$-550 &.".$.-IID &.".$..-IIDBI &.".$.. -IIDnAJ &.".$. -IID &.".$.!-I?FK &.".$.!.-2K>lE?KAO)KJDAnJE?=JEon &.".$."-OFAn550 &.".$.#-IBJFBI &.".$.#.-MoKnJEnC=HAmoJAK'BIID=HAoLAH550 &.".%-IA?IJoHA &.".&-@H=MJAHm &.".&.-+onnA?JJo2l=n'BHom=mo>ElA@ALE?A &.".&. -@H=MJAHm>ADEn@BEHAM=llI &.".'-2AAHJo2AAH2 2 &.".'.-6En? &.".'. -6oHHAnJI &.".'. .-EF/JoHHAnJ &.".'. -JoHHAnJ &.#-)K@Eo &.$--NJAHn=lMA@E= &.$.-MoKnJ=n15O'$$+,-4OM &.$. -*KHn=+,-4OM &.$.!-MoKnJ=.)6BoHm=JJA@75*@ALE?A % &.%--mKl=JEon &.%.-LEnKN-mKl=JEon &.%. -NEnJAn@o &.%.!-5AC= &.%."-+ommo@oHA &.%.#-2+ &.%.#.-8EHJK=lEz=JEon7IEnCLmN &.%.#..*lo?k,ALE?AI &.%.#.. -JDAHnAJ &.%.#..!OFAn*5, &.%.#.."LEnKN &.%.#..#9En@oMIN6 &.&-)@@EJEon=l5oBJM=HA &.&.-'BHonJIoKH?AIIAHLAH &.&. -'BHonJ?onJHE> &.&.!-OJDAHFK>lE?'FIAHLAHI &.'-*ooJIJH=FFEnC=H?DEJA?JKHAInoJEn?lK@A@onJDA15O &.'.-=m@$" &.'. -4=IF>AHHO2E &.'.!-=Hm$" &.-)+21 &..--n=>lEnC)+21 &. -4ALEIEon+onJHol &. .-?LI &. -CEJ &. .!-MAH?KHE=l &. ."-ILn & 9 − Troubleshooting '.-.EHIJ '. -*ooJEnC '. -*HA=kEnJo=IDAll '. .!--@EJEnCFl=n'.EnE '. ."-*ooJmA@E=noJHA?oCnEzA@ '. .#-1moLA@mOD=H@@HELA>AJMAAnFoHJI '.!-/H=FDE?I '.!.-4EoB=ElIJoIJ=HJ '.!. -8-5)*1O5@oAInoJ?onJ=En=L=lE@mo@A '."-NAJMoHkEnC '.".-NAJMoHkEnCEInoJMoHkEnC '.". -+=nnoJHAIolLA@om=Enn=mAI '.".!-/mnJ/MA>/?lonA@oAInoJANEIJ '."."-2+M+1)9E.EIJoFFA@MoHkEnC=BJAHHA>ooJ '.#-75* '.#.-,ALE?AInoJHA?oCnEzA@oHnoJMoHkEnC '.#. -5OIJAmBHAAzAI=BJAHIDoMEnCmAmoHOIEzAI '.$-=KJD '.''''''''''''''''''''''''''''''''''''''-/18-72 Appendix *-*oKnJEAI /-/5O+ J-JKnk L-L=nCK=CAI 6-6O,O ' z-/AJJEnC5J=HJA@9EJD'BHonJ FQA 0 − Introduction to Plan 9 0.1 − What is Plan 9? 2l=n ' EI = HAIA=H?D oFAH=JEnC IOIJAm BHom JDA I=mA CHoKF MDo ?HA=JA@ 7N1: =J *All L=>I +omFKJEnC 5?EAn?AI 4AIA=H?D +AnJAH +54+. 1J
Recommended publications
  • Venti Analysis and Memventi Implementation
    Master’s thesis Venti analysis and memventi implementation Designing a trace-based simulator and implementing a venti with in-memory index Mechiel Lukkien [email protected] August 8, 2007 Committee: Faculty of EEMCS prof. dr. Sape J. Mullender DIES, Distributed and Embedded Systems ir. J. Scholten University of Twente ir. P.G. Jansen Enschede, The Netherlands 2 Abstract [The next page has a Dutch summary] Venti is a write-once content-addressed archival storage system, storing its data on magnetic disks: each data block is addressed by its 20-byte SHA-1 hash (called score). This project initially aimed to design and implement a trace-based simula- tor matching Venti behaviour closely enough to be able to use it to determine good configuration parameters (such as cache sizes), and for testing new opti- misations. A simplistic simulator has been implemented, but it does not model Venti behaviour accurately enough for its intended goal, nor is it polished enough for use. Modelled behaviour is inaccurate because the advanced optimisations of Venti have not been implemented in the simulator. However, implementation suggestions for these optimisations are presented. In the process of designing the simulator, the Venti source code has been investigated, the optimisations have been documented, and disk and Venti per- formance have been measured. This allowed for recommendations about per- formance, even without a simulator. Beside magnetic disks, also flash memory and the upcoming mems-based storage devices have been investigated for use with Venti; they may be usable in the near future, but require explicit support. The focus of this project has shifted towards designing and implementing memventi, an alternative implementation of the venti protocol.
    [Show full text]
  • Persistent 9P Sessions for Plan 9
    Persistent 9P Sessions for Plan 9 Gorka Guardiola, [email protected] Russ Cox, [email protected] Eric Van Hensbergen, [email protected] ABSTRACT Traditionally, Plan 9 [5] runs mainly on local networks, where lost connections are rare. As a result, most programs, including the kernel, do not bother to plan for their file server connections to fail. These programs must be restarted when a connection does fail. If the kernel’s connection to the root file server fails, the machine must be rebooted. This approach suffices only because lost connections are rare. Across long distance networks, where connection failures are more common, it becomes woefully inadequate. To address this problem, we wrote a program called recover, which proxies a 9P session on behalf of a client and takes care of redialing the remote server and reestablishing con- nection state as necessary, hiding network failures from the client. This paper presents the design and implementation of recover, along with performance benchmarks on Plan 9 and on Linux. 1. Introduction Plan 9 is a distributed system developed at Bell Labs [5]. Resources in Plan 9 are presented as synthetic file systems served to clients via 9P, a simple file protocol. Unlike file protocols such as NFS, 9P is stateful: per-connection state such as which files are opened by which clients is maintained by servers. Maintaining per-connection state allows 9P to be used for resources with sophisticated access control poli- cies, such as exclusive-use lock files and chat session multiplexers. It also makes servers easier to imple- ment, since they can forget about file ids once a connection is lost.
    [Show full text]
  • The Blit: a Multiplexed Graphics Terminal
    The Blit: A Multiplexed Graphics Terminal Rob Pike Bell Laboratories Murray Hill, New Jersey 07974 ABSTRACT The Blit is a programmable bitmap graphics terminal designed specifically to run with the Unix operating system. The software in the terminal provides an asynchronous multi-window environment, and thereby exploits the multiprogramming capabilities of the Unix system which have been largely under-utilized because of the restrictions of conventional terminals. This paper discusses the design motivation of the Blit, gives an overview of the user interface, mentions some of the novel uses of multiprogramming made possible by the Blit, and describes the implementation of the multiplexing facilities on the host and in the terminal. Because most of the functionality is provided by the ter- minal, the discussion focuses on the structure of the terminal’s software. Sometime in 1983 The Blit: A Multiplexed Graphics Terminal Rob Pike Bell Laboratories Murray Hill, New Jersey 07974 Introduction The Blit* is a graphics terminal characterized more by the software it runs than the hardware itself. The hardware is simple and inexpensive (Figure 1): 256K bytes of memory dual-ported between an 800×1024×1 bit display and a Motorola MC68000 microprocessor, with 24K of ROM, an RS-232 interface, a mouse and a keyboard. Unlike many graphics terminals, it has no special-purpose graphics hardware; instead, the microprocessor executes all graphical operations in software. The reasons for and conse- quences of this design are discussed elsewhere.5 The microprocessor may be loaded from the host with custom applications software, but the terminal is rarely used this way.
    [Show full text]
  • Plan 9 from Bell Labs
    Plan 9 from Bell Labs “UNIX++ Anyone?” Anant Narayanan Malaviya National Institute of Technology FOSS.IN 2007 What is it? Advanced technology transferred via mind-control from aliens in outer space Humans are not expected to understand it (Due apologies to lisperati.com) Yeah Right • More realistically, a distributed operating system • Designed by the creators of C, UNIX, AWK, UTF-8, TROFF etc. etc. • Widely acknowledged as UNIX’s true successor • Distributed under terms of the Lucent Public License, which appears on the OSI’s list of approved licenses, also considered free software by the FSF What For? “Not only is UNIX dead, it’s starting to smell really bad.” -- Rob Pike (circa 1991) • UNIX was a fantastic idea... • ...in it’s time - 1970’s • Designed primarily as a “time-sharing” system, before the PC era A closer look at Unix TODAY It Works! But that doesn’t mean we don’t develop superior alternates GNU/Linux • GNU’s not UNIX, but it is! • Linux was inspired by Minix, which was in turn inspired by UNIX • GNU/Linux (mostly) conforms to ANSI and POSIX requirements • GNU/Linux, on the desktop, is playing “catch-up” with Windows or Mac OS X, offering little in terms of technological innovation Ok, and... • Most of the “modern ideas” we use today were “bolted” on an ancient underlying system • Don’t believe me? A “modern” UNIX Terminal Where did it go wrong? • Early UNIX, “everything is a file” • Brilliant! • Only until people started adding “features” to the system... Why you shouldn’t be working with GNU/Linux • The Socket API • POSIX • X11 • The Bindings “rat-race” • 300 system calls and counting..
    [Show full text]
  • A Complete Bibliography of Publications in Software—Practice and Experience
    A Complete Bibliography of Publications in Software|Practice and Experience Nelson H. F. Beebe University of Utah Department of Mathematics, 110 LCB 155 S 1400 E RM 233 Salt Lake City, UT 84112-0090 USA Tel: +1 801 581 5254 FAX: +1 801 581 4148 E-mail: [email protected], [email protected], [email protected] (Internet) WWW URL: http://www.math.utah.edu/~beebe/ 23 July 2021 Version 3.26 Title word cross-reference [Bar82a, Bar82c, Bar84b]. < [SMGMOFM07a, SMGMOFM07b]. > [SMGMOFM07a, SMGMOFM07b]. 2 [MST13, MDB19]. 3 [DS09]. 4 [MSR+07]. \ 0 [GW96]. 1 [GW96]. $1.50 [Bar78d]. $11 [PK04]. TM [MZB00, Win02]. 8 [DB21b]. k [Bar84a]. $12.00 [Rob72]. $13 [Bar84a]. [AW93, Mer93]. κ [MG94]. µ $13.00 [Rob72]. $18.50 [Jon74]. $185 [BS90c, BDS+92, SMNB21]. N [Bar79b]. $19.30 [Lan74a]. $19.50 [Dav78]. [MS98, Coh98, KST94, YAVHC21]. P 3 $25.00 [Pet77, And78]. 3 [BE02, FMA02]. [DC03]. PM [CLD+17]. q [GSR17]. τ $31-25 [Pet77]. $31.35 [Bri82]. 32 [VED06]. 2:5 [TSZ14, UDS+07]. $35.00 [Inc86]. $39.50 [Sim83]. 5 [CPMAH+20]. $58.50 [Wal81a]. $6.95 -ary [MS98]. -bit [AM10, SF85, VED06]. [Tho74]. 64 [AM10, VED06]. 68 -gram [Coh98, KST94, YAVHC21]. -grams [Ear76, Hol77]. $68.25 [Pit82]. $7.00 [GSR17]. -level [FM77]. -queens [Plu74]. [Bar72a]. $7.50 [Bar78d]. $7.95 -R [Ear76, Hol77]. -shortest-paths [MG94]. [Bar76a, Lav77]. $78.50 [Sim83]. 8 -System [BS90c]. [Plu74, SF85]. $8.95 [Bar82a, Bar82c, Bar84b]. $9.75 . [Bis81b]. .NET [Coo04, Han04]. [Bar77e, Mul76]. $9.80 [Atk79a]. $9.95 1 2 0 [Bar81, Edw98a, Edw98b, Gru83, Llo82, 2 [Bar74a, Bar74b, Bar80b, Bud85, Cor88b, Val77a, Val78, Wal83b].
    [Show full text]
  • (Brief) 2. an Extensible Compiler for Systems Programming
    Show and Tell 1. Plan 9 Things (brief) 2. An Extensible Compiler for Systems Programming Russ Cox rsc@plan9 1127 Show and Tell April 19, 2005 who am i ................................................................................................................. ‘‘Neighborhood kid’’ 1995 summer hacking Excel (jlb) 1995-1997 cable modems (nls, tom) 1997-1999 annoying Plan 9 user 1999 summer doing Plan 9 graphics (rob, jmk) 1999-present assorted Plan 9 hacking Plan 9 Things ........................................................................................................ VBE ߝ use BIOS to set up VGA modes ߝ requires switching into real mode and back Venti ߝ reworked significantly ߝ aggressive caching, prefetching, batching, delayed writes ߝ Bloom filter to avoid index misses Plan 9 from User Space (plan9port) ߝ port bulk of Plan 9 software to Unix systems ߝ Linux, FreeBSD, NetBSD, SunOS, Mac OS X .................................................................................................................................... An Extensible Compiler for Systems Programming Russ Cox Frans Kaashoek Eddie Kohler [email protected] Outline ..................................................................................................................... Why bother? What could it do? How could it work? Ground rules: ߝ interrupt with questions ߝ work in progress ߝ show and tell, not a job talk Man vs. Machine ߝ Linguistic Tensions ................................................... The most important readers of a program are people.
    [Show full text]
  • Persistent 9P Sessions for Plan 9
    Persistent 9P Sessions for Plan 9 Gorka Guardiola, [email protected] Russ Cox, [email protected] Eric Van Hensbergen, [email protected] ABSTRACT Traditionally, Plan 9 [5] runs mainly on local networks, where lost connections are rare. As a result, most programs, including the kernel, do not bother to plan for their file server connections to fail. These programs must be restarted when a connection does fail. If the kernel’s connection to the root file server fails, the machine must be rebooted. This approach suffices only because lost connections are rare. Across long distance networks, where connection failures are more common, it becomes woefully inadequate. To address this problem, we wrote a program called recover, which proxies a 9P session on behalf of a client and takes care of redialing the remote server and reestablishing connec- tion state as necessary, hiding network failures from the client. This paper presents the design and implementation of recover, along with performance benchmarks on Plan 9 and on Linux. 1. Introduction Plan 9 is a distributed system developed at Bell Labs [5]. Resources in Plan 9 are presented as synthetic file systems served to clients via 9P, a simple file protocol. Unlike file protocols such as NFS, 9P is stateful: per-connection state such as which files are opened by which clients is maintained by servers. Maintaining per-connection state allows 9P to be used for resources with sophisticated access control poli- cies, such as exclusive-use lock files and chat session multiplexers. It also makes servers easier to imple- ment, since they can forget about file ids once a connection is lost.
    [Show full text]
  • Acme: a User Interface for Programmers Rob Pike AT&T Bell Laboratories Murray Hill, New Jersey 07974
    Acme: A User Interface for Programmers Rob Pike AT&T Bell Laboratories Murray Hill, New Jersey 07974 ABSTRACT A hybrid of window system, shell, and editor, Acme gives text-oriented applications a clean, expressive, and consistent style of interaction. Traditional window systems support inter- active client programs and offer libraries of pre-defined operations such as pop-up menus and buttons to promote a consistent user interface among the clients. Acme instead provides its clients with a fixed user interface and simple conventions to encourage its uniform use. Clients access the facilities of Acme through a file system interface; Acme is in part a file server that exports device-like files that may be manipulated to access and control the contents of its win- dows. Written in a concurrent programming language, Acme is structured as a set of communi- cating processes that neatly subdivide the various aspects of its tasks: display management, input, file server, and so on. Acme attaches distinct functions to the three mouse buttons: the left selects text; the mid- dle executes textual commands; and the right combines context search and file opening functions to integrate the various applications and files in the system. Acme works well enough to have developed a community that uses it exclusively. Although Acme discourages the traditional style of interaction based on typescript windows— teletypes—its users find Acme’s other services render typescripts obsolete. History and motivation The usual typescript style of interaction with Unix and its relatives is an old one. The typescript—an inter- mingling of textual commands and their output—originates with the scrolls of paper on teletypes.
    [Show full text]
  • Micropython Documentation Release 1.10 Damien P. George, Paul
    MicroPython Documentation Release 1.10 Damien P. George, Paul Sokolovsky, and contributors Jan 25, 2019 CONTENTS 1 MicroPython libraries 1 1.1 Python standard libraries and micro-libraries..............................2 1.1.1 Builtin functions and exceptions................................2 1.1.2 array – arrays of numeric data................................5 1.1.3 cmath – mathematical functions for complex numbers....................5 1.1.4 gc – control the garbage collector...............................6 1.1.5 math – mathematical functions................................7 1.1.6 sys – system specific functions................................9 1.1.7 ubinascii – binary/ASCII conversions........................... 11 1.1.8 ucollections – collection and container types...................... 11 1.1.9 uerrno – system error codes................................. 12 1.1.10 uhashlib – hashing algorithms............................... 13 1.1.11 uheapq – heap queue algorithm................................ 14 1.1.12 uio – input/output streams................................... 14 1.1.13 ujson – JSON encoding and decoding............................ 16 1.1.14 uos – basic “operating system” services............................ 16 1.1.15 ure – simple regular expressions............................... 20 1.1.16 uselect – wait for events on a set of streams........................ 22 1.1.17 usocket – socket module................................... 23 1.1.18 ussl – SSL/TLS module................................... 28 1.1.19 ustruct – pack and unpack
    [Show full text]
  • Histoire D'unix
    Histoire d’Unix David du Colombier Jean-Baptiste Campesato 9 juillet 2008 Table des mati`eres 1 La gen`ese 2 1.1 Bell Labs . 2 1.2 Multics . 3 1.3 Ken’s New System . 3 1.4 Le langage B . 4 1.5 La naissance d’Unix Time-Sharing System . 4 1.6 Le langage C . 6 1.7 L’´evolution d’Unix Time-Sharing System . 6 2 L’expansion 8 2.1 Berkeley Software Distribution . 8 2.1.1 1BSD et 2BSD . 8 2.1.2 L’arriv´eede l’adressage sur 32 bits . 9 2.1.3 3BSD et 4BSD . 9 2.1.4 4BSD `a4.2BSD . 10 2.1.5 4.3BSD . 11 2.1.6 BSD Networking Release . 12 2.1.7 Le proc`es: USL vs. BSDI . 14 2.1.8 4.4BSD . 14 2.2 L’Unix de AT&T . 15 2.2.1 Les d´ebuts. 15 2.2.2 UNIX System V . 16 2.3 L’Unix de Sun Microsystems . 17 2.3.1 SunOS . 17 2.3.2 Solaris . 18 3 L’ouverture 19 3.1 Le tournant de Bell Labs . 19 3.1.1 La fin d’Unix Time-Sharing System . 19 3.1.2 Plan 9 from Bell Labs . 20 3.1.3 Lucent Technologies . 21 3.1.4 Inferno . 21 3.2 « The Unix Wars » .............................. 22 1 Chapitre 1 La gen`ese 1.1 Bell Labs Bell Telephone Company fut fond´een 1878 par le beau p`ered’Alexander Graham Bell, Gardiner Greene Hubbard. Il participa ´egalement `ala mise en place d’une soci´et´e fille nomm´eeNew England Telephone and Telegraph Company.
    [Show full text]
  • Untitled (To the Innovator of Wheeling Peachblow), '$&
    6DEI >ook M=I JOFAIAJ troff -ms -mpictures|lp -dstdout|ps2pdf En LK?E@= 5=nI >O JDA =KJDoH, KIEnC = LAnoLo 6DEnk2=@ : ! 6=>lAJ HKnnEnC JDA 'BHonJ oFAH=JEnC IOI­ JAm. 4An@AHA@: &--$ '.4ON6 'BHonJ.oHC 6DEI EI = MoHk oB BE?JEon. N=mAI, ?D=H=?JAHI, Fl=?AI =n@ En?E@AnJI AEJDAH =HA JDA FHo@K?J oB JDA =KJDoHߣI Em=CEn=JEon oH =HA KIA@ BE?JEJEoKIlO, =n@ =nO HAIAm>l=n?A Jo =?JK=l FAH­ IonI,lELEnCoH@A=@,>KIEnAIIAI,?omF=nEAI,ALAnJIoHlo?=lAIEIAnJEHAlO?oEn?E@AnJ=l. M16/++/2K>lE?,om=En 9FRONT FREQUENTLY QUESTIONED ANSWERS Those who can do, those who can’t write and those who can’t write make ezines. ߞ 5=FAMKllAn@AH ACHTUNG! 6DEI @o?KmAnJߣI 5647+674- ߞ =n@ IomA oB EJI 6-:6 ߞ EI Fl=CE=HEzA@ ߞ BHomJDAO2-N*5,.)3 ACHTUNG! 601515NO6)52)+- ACHTUNG! 1nBoHm=JEon FHoLE@A@ >O JDEI @o?KmAnJ m=O >A oKJ@=JA@ oH jKIJ Fl=En MHonC.7IAOoKH>H=En.NO4-.7N,5. _sl’s info is incorrect. ߞ =nJD_N i really hate the openbsd content in the fqa ߞ =EjK 0 − Introduction to Plan 9 .-9D=JEI2l=n'? ..-2l=n'EInoJ7N1: ...-2l=n'EInoJFl=n'FoHJ ... -2l=n'EInoJ1nBAHno .. -2l=n'EInoJ=FHo@K?J ..!-2l=n'EInoJBoHOoK . -9DO2l=n'? . .-9D=J@oFAoFlAlEkA=>oKJ2l=n'? . ..-9D=J@oOoKKIA2l=n'BoH? . -9D=J@oFAoFlAD=JA=>oKJ2l=n'? . .-9D=JEInoJEn2l=n' . .!-9DO@E@2l=n'ߣI?HA=JoHICELAKFon2l=n'? . ."-9D=JEIJDA@A=lMEJD2l=n'ߣIMAEH@lE?AnIA? . .".-4E?D=H@5J=llm=nD=JAIJDA2l=nNEnAlE?AnIA?EH?= .
    [Show full text]
  • Plan 9 Authentication in Linux
    Plan 9 Authentication in Linux ∗ Ashwin Ganti Google Inc. [email protected] ABSTRACT password and various information about the user (such as In Linux, applications like su and login currently run as her home directory and default shell). Applications heavily root in order to access authentication information and set depended on these files which led to less extensible code. or alter the identity of the process. In such cases, if the ap- Moreover if a new authentication mechanism was introduced plication is compromised while running as a privileged user, it required all the applications (like login, su etc.) that use the entire system can become vulnerable. An alternative the authentication information be rewritten to support it. approach is taken by the Plan 9 operating system from Bell Labs, which runs such applications as a non-privileged user Pluggable Authentication Modules (PAM) [10] [2] were cre- and relies on a kernel-based capability device working in co- ated to provide more effective ways to authenticate users. ordination with an authentication server to provide the same PAM provides a generic framework enabling uniform au- services. This avoids the risk of an application vulnerability thentication of user applications. It enables user applica- becoming a system vulnerability. tions to perform authentication without actually knowing the implementation details of the underlying mechanisms. This paper discusses the extension of Linux authentication It is usually done through a password based authentication mechanisms to allow the use of the Plan 9 approach with mechanism but also supports a challenge response interac- existing Linux applications in order to reduce the security tion.
    [Show full text]