And Now, for Something Completely Different... I found a New (old) OS, that I had never heard of before, today. I like to read about and try out different Operating Systems. I started with Windows 3.1 and went on through WinXP. I heard about and download BSD in 2003 or 04. But, never got around to learning how to install and run it. And then in 2005. I discovered Linux. And I never looked back! I have been running Fedora and Debian Linux as my main OS's since then. I love to learn about and try out Different Linux Distros. And I recently got a Radio Shack TRS-80 to Play with. I almost bought one back in the early 80's and passed on it. Still, all of these years later. I got my chance to try out a TRS-80. Yes, it's very different than Today's Operating Systems. But, that's not my story today. Today, I discovered, Plan 9 from Bell Labs. Here's a bit from Wikipedia on it... Plan 9 from Bell Labs is a free softwaredistributed operating system. It was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002. Plan 9 continues to be used and developed by operating system researchers and hobbyists. Plan 9 has novel features such as the 9P protocol for accessing local and remote resources as files, union mounts, an improved proc file system, and native unicode support throughout the system. In Plan 9, all system interfaces, including those required for networking and the user interface, are represented through the file system rather than specialized interfaces.The name Plan 9 from Bell Labs is a reference to the Ed Wood 1959 cult science fictionZ-moviePlan 9 from Outer Space. Also, Glenda, the Plan 9 Bunny, is presumably a reference to Wood's film Glen or Glenda. From, http://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs
Plan 9 is so Different... That I just spent several hours. Just reading about it. Before I even Downloaded the ISO Image and tried to Boot it up in Virtual Box. It seemed to hang up, after a bit. But, I didn't wait all that long either. And I'm downloading a Qemu VM Image from here right now anyway, http://www.oszoo.org/wiki/index.php/Plan9_070107.zip So, I'll soon be trying it out too (well the qemu image didn't boot at all for me). So, I want to get to writing this Post. While things were fresh on my mind. But, I found a video showing a successful Boot here...
Plan 9 from Bell Labs (What's the Deal?)
Here's some info from the Plan 9 Site and plenty of links at the bottom...
Unusual file servers
Download and Installation
Supported PC Hardware
- ALi M1543, M5288 SATA
- AMD 755, 756, 766, 768, 3111, CS5536
- AMD/ATI SB400, 200M, 4379 SATA
- CMD 640B, 646
- HighPoint HPT366
- Intel PIIX, PIIX3, PIIX4, ICH, ICH0, ICH2-7, ICH9, 6300ESB
- NS PC87415
- nVidia nForce 1-4, MCP 55, 61, 65, 69, 430
- PC-Tech RZ1000
- Promise PDC202xx, Ultra/133 TX2, 20378
- ServerWorks IB6566
- SiL 3112 SATA, 3114 SATA/RAID
- SiS 962
- VIA 82C686, VT8237 SATA/RAID
- AMD SB600
- Intel 63xxESB
- Intel 82801GxM, for x = B or H
- Intel ICH8, ICH9
- >32MB of RAM
- a hard disk with 300 MB of unpartitioned space and a free primary partition slot
DOWNLOAD THE CD IMAGE
Unknown boot device: sdD0!cdboot!9pcflop.gz Boot device: fd0 boot from:
boot from: sdC1!cdboot!9pcflop.gz
Your choice (foo, bar, baz, quux)[quux]:
Plan 9 from Bell Labs
overview, screen shot, Glenda Documentation
release notes, papers, manual pages,
wiki, more... Download
live CD/install CD, installation notes,
browse the source (enabled again), additional software Conference
Seventh International Workshop on Plan 9, Dublin, Nov 14—16, 2012 Related Resources
mailing lists, Plan 9 from User Space,
Inferno, community, 9grid,
Plan 9 kernel history
Plan 9 from Bell Labs
Installation of Plan 9
|Company / developer||Bell Labs|
|Programmed in||Dialect of ANSI C|
|Source model||Free and open source software|
|Initial release||1992 (universities) / 1995 (general public)|
|Latest stable release||Fourth Edition / April 28, 2002|
|Latest unstable release||Snapshots / daily|
|Supported platforms||x86 / Vx32, x86-64, MIPS, DEC Alpha, SPARC, PowerPC, ARM|
|Default user interface||rio / rc|
|License||Lucent Public License|
Plan 9 has novel features such as the 9P protocol for accessing local and remote resources as files, union mounts, an improved proc file system, and native unicode support throughout the system. In Plan 9, all system interfaces, including those required for networking and the user interface, are represented through the file system rather than specialized interfaces.
The name Plan 9 from Bell Labs is a reference to the Ed Wood 1959 cult science fiction Z-movie Plan 9 from Outer Space. Also, Glenda, the Plan 9 Bunny, is presumably a reference to Wood's film Glen or Glenda.
|1992||Plan 9 1st Edition||Released by Bell Labs to universities|
|1995||Plan 9 2nd Edition||Released by Bell Labs for non-commercial purposes|
|2000||Plan 9 3rd Edition (Brazil)||Released by Lucent Technologies under an open source license for non-commercial use|
|2002||Plan 9 4th Edition||Released by Lucent Technologies under a new free software license|
A user and development community, including current and former Bell Labs members and Massachusetts Institute of Technology personnel, continues to produce minor daily releases in form of ISO images. Bell Labs still hosts the development. The development source tree is accessible over the 9P and HTTP protocols and is used to update existing installations. In addition to the official components of the OS included in the ISOs, Bell Labs also hosts a repository of externally developed applications and tools.
Plan 9 from Bell Labs was originally developed by members of the Computing Science Research Center at Bell Labs, the same group that originally developed UNIX and C. The Plan 9 team was initially led by Rob Pike, Ken Thompson, Dave Presotto and Phil Winterbottom, with support from Dennis Ritchie as head of the Computing Techniques Research Department. Over the years, many notable developers have contributed to the project including Brian Kernighan, Tom Duff, Doug McIlroy, Bjarne Stroustrup and Bruce Ellis.
Design conceptsPlan 9 is an evolution of UNIX design concepts:
- all objects are either files or file systems
- communication is over a network
- private namespaces allow their owners to access local and remote processes transparently
9P protocolTo reduce the number of custom APIs and system calls, Plan 9 makes heavy use of the 9P protocol. 9P is a generic medium-agnostic byte-oriented protocol that provides for messages delivered between a server and a client. The protocol is used to refer to and communicate with processes, programs, and data, including both the user interface and the network. With the release of the 4th edition, it was modified and renamed 9P2000.
Unlike most other operating systems, Plan 9 does not provide special application programming interfaces (such as Berkeley sockets, X resources or ioctl system calls) to access devices. Instead, Plan 9 device drivers implement their control interface as a file system, so that the hardware can be accessed by the ordinary file input/output operations read and write. Consequently, sharing the device across the network can be accomplished by mounting the corresponding directory tree to the target machine.
Union directories and namespacesPlan 9 allows the user to collect the files (called names) from different directory trees in a single location. The name resolution is then performed from top to bottom: If the name doesn't exist in the top directory, it is looked up in lower ones until found. The same name in lower directories will be shown in the directory listing, but will not be accessible; thus, the merging of subdirectories is not handled.
A union directory can be created by using the bind command:
; bind /arm/bin /bin ; bind -a /usr/inferno/Plan9/arm/bin /bin ; bind -b /usr/alice/bin /bin
Furthermore, the kernel can keep separate mount tables for each process, and can thus provide process with its own file system namespace. Processes' namespaces can be constructed independently, and the user may work simultaneously with programs that have heterogeneous namespaces. Namespaces may be used to create an isolated environment similar to chroot, but in a more secure way.
Plan 9's union directory architecture inspired BSD and Linux union file system implementations.
Special virtual filesystems
/procprocess management, Plan 9 provides the /proc file system. Each process appears as a directory containing information and control files which can be manipulated by the ordinary file IO system calls.
The file system approach allows Plan 9 processes to be managed with simple file management tools such as ls and cat; however, the processes cannot be copied and moved as files.
/netPlan 9 does not have specialised system calls or ioctls for accessing the networking stack or networking hardware. Instead, the /net file system is used. Network connections are controlled by reading and writing control messages to control files. Sub-directories such as /net/tcp and /net/udp are used as an interface to their respective protocols.
UnicodeTo reduce the complexity of managing character encodings, Plan 9 uses Unicode throughout the system. The initial Unicode implementation was ISO 10646. Ken Thompson invented UTF-8, which became the native encoding in Plan 9. The entire system was converted to general use in 1992. UTF-8 preserves backwards compatibility with traditional null terminated strings, enabling more reliable information processing and the chaining of multilingual string data with Unix pipes between multiple processes. Using a single UTF-8 encoding with characters for all cultures and regions eliminates the need for switching between code sets.
Combining the design conceptsThough interesting on their own, the design concepts of Plan 9 were supposed to be most useful when combined together. For example, to implement a network address translation (NAT) server, a union directory can be created, overlaying the router's /net directory tree with its own /net. Similarly, a virtual private network (VPN) can be implemented by overlaying in a union directory a /net hierarchy from a remote gateway, using secured 9P over the public Internet. A union directory with the /net hierarchy and filters can be used to sandbox an untrusted application or to implement a firewall. In the same manner, a distributed computing network can be composed with a union directory of /proc hierarchies from remote hosts, which allows interacting with them as if they are local.
When used together, these features allow for assembling a complex distributed computing environment by reusing the existing hierarchical name system.
Software for Plan 9The distribution package for Plan 9 includes special compiler variants and programming languages, and provides a tailored set of libraries along with a windowing user interface system specific to Plan 9. Its compiler is a dialect of C with some extensions and restrictions.
As a benefit from the system's design, most tasks in Plan 9 can be accomplished by using ls, cat, grep, cp and rm utilities in combination with the rc shell (the default Plan 9 shell).
Factotum is an authentication and key management server for Plan 9. It handles authentication on behalf of other programs such that both secret keys and implementation details need only be known to Factotum.
Graphical programsUnix, Plan 9 was designed with graphics in mind. After booting, a Plan 9 terminal will run the rio windowing system, in which the user can create new windows displaying rc. Graphical programs invoked from this shell replace it in its window.
The plumber provides an inter-process communication mechanism which allows system-wide hyperlinking.
Sam and acme are Plan 9's text editors.
Storage systemPlan 9 supports the FAT and Fossil file systems. The latter was designed at Bell Labs specifically for Plan 9 and provides snapshot storage capability. It can be used directly with a hard drive or backed with Venti—an archival file system and permanent data storage system.
UNIX compatibilityThough Plan 9 was supposed to be a further development of UNIX concepts, compatibility with preexisting UNIX software was never the goal for the project. Still, many command line utilities of Plan 9 have aliases to the names of their UNIX counterparts.
Plan 9 can support POSIX applications and can emulate the Berkeley socket interface through the ANSI/POSIX Environment (APE). Some Linux binaries can be used with the help of a "linuxemu" (Linux emulator) application; however, it is still a work in progress.
Impact Some features from Plan 9, like the UTF-8 character encoding of Unicode, have been implemented in other operating systems. Unix-like operating systems such as Linux have implemented 9P, Plan 9's file system, and limited forms of rfork-like system calls. Additionally, in Plan 9 from User Space, several of Plan 9's applications and tools, including the sam and acme editors, have been ported to Unix and Linux systems and have achieved some level of popularity. Several projects seek to replace the GNU operating system programs surrounding the Linux kernel with the Plan 9 operating system programs. The 9wm window manager was inspired by 8½, the older windowing system of Plan 9; wmii is also heavily influenced by Plan 9.
However, Plan 9 has never approached Unix in popularity, and has been primarily a research tool:
Other criticisms focused on the lack of commercial backup, the low number of end-user applications, and the lack of device drivers.Plan 9 failed simply because it fell short of being a compelling enough improvement on Unix to displace its ancestor. Compared to Plan 9, Unix creaks and clanks and has obvious rust spots, but it gets the job done well enough to hold its position. There is a lesson here for ambitious system architects: the most dangerous enemy of a better solution is an existing codebase that is just good enough.
Plan 9 proponents and developers claim that the problems hindering its adoption have been solved, that its original goals as a distributed system, development environment, and research platform have been met, and that it enjoys moderate but growing popularity. Inferno, through its hosted capabilities, has been a vehicle for bringing Plan 9 technologies to other systems as a hosted part of heterogeneous computing grids.
Several projects actively work to extend Plan 9, including 9atom and 9front. These forks augment Plan 9 with additional hardware drivers and software, including nupas (an improved version of the Upas e-mail system), the go compiler, Mercurial version control system support, and other programs.
LicenseThe full source code is freely available under Lucent Public License 1.02; it is considered to be open source by the Open Source Initiative (OSI), free software by the Free Software Foundation, and it passes the Debian Free Software Guidelines. However, it is incompatible with the GNU General Public License.
- ^ Robertson, James (2011-07-16). "Plan 9 Forked, Continues as 9front". OSNews. Retrieved 2011-12-31.
- ^ a b "9atom". Retrieved 2011-11-11.
- ^ a b c Raymond, Eric S. (2003-09-17). "Plan 9: The Way the Future Was". The Art of UNIX Programming. Addison-Wesley. ISBN 0-13-142901-9. Retrieved 2007-05-07.
- ^ "Announcement of the first release to general public".
- ^ a b Loli-Queru, Eugenia (2002-04-29). "Bell Labs Releases New Version of Plan 9". OSNews. Retrieved 2011-12-31.
- ^ "How to contribute". Bell Labs. Lucent Technologies. Retrieved 2011-11-30.
- ^ "Staying up to date". Bell Labs. Lucent Technologies. Retrieved 2006-04-27.
- ^ "From the inventors of UNIX system comes Plan 9 from Bell Labs" (Press release). Lucent Technologies. 1995-07-18. Archived from the original on 2006-02-09.
- ^ McIlroy, Doug (1995-03). "Preface to the Second (1995) Edition". Bell Labs. Lucent Technologies. Retrieved 2006-04-02.
- ^ a b c Mullender, Sape J.; Janson, Pierre G. (2004-02-26). "Real Time in Real Operating System". In Herbert, Andrew J.; Jones, Karen Spärck. Computer systems: theory, technology, and applications : a tribute to Roger Needham. Springer Science+Business Media. p. 211. ISBN 978-0-387-20170-2. Retrieved 2011-12-24.
- ^ Bischof, Hans-Peter; Imeyer, Gunter; Wellhöfer, Bernhard & Schreiner, Axel-Tobias (1999). Das Netzbetriebssystem Plan 9. ISBN 3-446-18881-9.
- ^ Hancock, Brian (2003). "Reinventing Unix: an introduction to the Plan 9 operating system". Library Hi Tech (MCB UP) 21 (4): 471–476. doi:10.1108/07378830310509772.
- ^ Presotto, Dave; Pike, Rob; Thompson, Ken; Trickey, Howard. "Plan 9, A Distributed System". Bell Labs. Lucent Technologies. CiteSeerX: 10.1.1.41.9192.
- ^ a b c d e Pereira, Uriel M. (2006) (avi). The Unix Spirit set Free: Plan 9 from Bell Labs. FOSDEM. Retrieved 2011-12-02. Lay summary.
- ^ a b Minnich, Ron (2005). "Why Plan 9 is not dead yet And What we can learn from it" (pdf). Los Alamos National Laboratory. FAST-OS. Retrieved 2011-12-02.
- ^ a b Ballesteros, Francisco J. (2007-09-28). "Introduction to OS abstractions using Plan 9 from Bell Labs" (pdf). Universidad Rey Juan Carlos. Archived from the original on 2010-09-21.
- ^ Kernighan, Brian (1995). "Readme". Lucent Technologies. Retrieved 2012-01-25. Hosted by mirtchovski.com.
- ^ Pike, R.; Presotto, D.; Thompson, K.; Trickey, H.; Winterbottom, P.. "The Use of Name Spaces in Plan 9". Bell Labs. cat-v.org. Retrieved 2011-12-05.
- ^ Valerie, Aurora (2009-03-25). "Union file systems: Implementations, part I". LWN.net. Retrieved 2011-12-05.
- ^ a b "UNIX to Plan 9 command translation". Bell Labs. Lucent Technologies. Retrieved 2011-12-02.
- ^ a b c Pike, R.; Presotto, D.; Dorward, S.; Flandrena, B.; Thompson, K.; Trickey, H.; Winterbottom, P.. "Plan 9 from Bell Labs". Bell Labs. Lucent Technologies. Retrieved 2011-12-02.
- ^ Pike, Rob (2003-04-30). "UTF-8 History". Retrieved 2006-04-27.
- ^ Lunde, Ken (1999-01). CJKV information processing. O'Reilly Media. p. 466. ISBN 978-1-56592-224-2. Retrieved 2011-12-23.
- ^ Dixon, Rod (2004). Open source software law. Artech House. p. 213. ISBN 978-1-58053-719-3. Retrieved 2011-12-25.
- ^ Thompson, Ken (1992-02). "A new C Compiler". Australian UNIX systems User Group Newsletter (Kensington, Australia: AUUG, Inc.) 13 (1): 31–41. ISSN 1035-7521. Retrieved 2011-12-25.
- ^ Cox, R.; Grosse, E.; Pike, R.; Presotto, D.; Quinlan, S.. "Security in Plan 9". Bell Labs. Lucent Technologies. Retrieved 2011-12-02.
- ^ a b c Hudson, Andrew (2006-07-19). "Investigating the Plan 9 Operating System". OSNews. Retrieved 2011-12-31.
- ^ a b "An interview with Russ Cox". The Setup. 2011-04-09. Retrieved 2012-01-01.
- ^ Trickey, Howard. "APE – The ANSI/POSIX Environment". Bell Labs. Lucent Technologies. Retrieved 2011-04-27.
- ^ "Linux emulation". Bell Labs. Lucent Technologies. Retrieved 2011-12-02.
- ^ a b "window manager improved 2". suckless.org. Retrieved 2012-01-02. "[wmii] has a 9p filesystem interface and supports classic and tiling (acme-like) window management."
- ^ "Glendix: Bringing the beauty of Plan 9 to Linux". Retrieved 2011-12-01.
- ^ "Plan 9 From Gentoo: Plan 9 Meets Gentoo". Gentoo Linux. Retrieved 2011-12-01.
- ^ "The 9wm Window Manager". 9wm. Retrieved 2012-01-02. "9wm is an X window manager which attempts to emulate the Plan 9 window manager 8-1/2 as far as possible within the constraints imposed by X."
- ^ "9grid". Bell Labs. Lucent Technologies. Retrieved 2006-03-28.
- ^ "Press Release: Vita Nuova Supplies Inferno Grid to Evotec OAI" (pdf) (Press release). Vita Nuova. 2004-05-18. Retrieved 2006-03-28.
- ^ "Press Release: Rutgers University Libraries Install Inferno Data Grid" (pdf). Vita Nuova. 2004-05-12. Retrieved 2006-03-28.
- ^ "Press Release: The University of York Department of Biology install Vita Nuova's Inferno Data Grid" (pdf) (Press release). Vita Nuova. 2004-05-04. Retrieved 2006-03-28.
- ^ "plan9front - the front fell off". Retrieved 2011-12-01.
- ^ "Lucent Public License Version 1.02 (Plan 9 license)". Various Licenses and Comments about Them. Free Software Foundation. Retrieved 2011-12-02.
|Wikimedia Commons has media related to: Plan 9 (operating system)|
- Official website
- 9fans, the Plan 9 mailing list hosted by http://9fans.net
- Ninetimes Plan 9, Inferno, Unix, and Bell Labs operating systems news
- #plan9, the Plan 9 IRC channel hosted by freenode
- Cat-v.org Random Contrarian Insurgent Organization, the Plan 9 user and developer community
Plan 9 OS from Bell Labs was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002
- Plan 9 on the Raspberry Pi
- Getting Plan 9 running on the Raspberry Pi | The Bendyworks Blog | Bendyworks | Ruby on Rails, iOS, & Clojure Consultants | Madison, WI
- Plan 9 from Bell Labs
- Plan 9 — The Documents (Volume 2)
- Plan 9 from Bell Labs - Wikipedia, the free encyclopedia
- newbie-guide.pdf (application/pdf Object)
- research!rsc: A Tour of Acme
- Glenda, the Plan 9 Bunny - Wikipedia, the free encyclopedia
- A Tour of the Acme Editor - YouTube
- Plan 9 from Bell Labs - Google Search
- Plan 9 from Bell Labs
- recovering lazyholic blog: bell labs
- Plan 9 from Bell Labs - Google Image Search
- Plan 9 and Inferno at the Google Summer of Code
- Plan 9 From Bell Labs « Dan's Thoughts
- 7th International Workshop on Plan 9
- Plan 9 from Bell Labs on IBM's Blue Gene Supercomputers
- Maney|Digital | Tag Archive | Bell Labs
- 7th International Workshop on Plan 9 | uplbcoss.ph
- Plan 9 from Bell Labs (What's the Deal?) - YouTube
- dmr: stories | Maney|Digital
- dmr - YouTube
- Installation instructions (Plan 9 wiki)
- Plan 9 Download
- Download (Plan 9 wiki)
- Plan 9
- Installation instructions (Plan 9 wiki)
- Supported PC Hardware (Plan 9 wiki)
- Plan 9 /sys/man/8/plan9.ini
- Plan 9 /sys/man/8/prep
- Inferno Downloads
- Category:Plan9 images - FreeOsZoo
- Plan9 070107.zip - FreeOsZoo