plan 9 os
-
Upload
rajan-khandelwal -
Category
Documents
-
view
220 -
download
0
Transcript of plan 9 os
-
8/12/2019 plan 9 os
1/30
07-04-2014 S.LB.S Engineering College
1
-
8/12/2019 plan 9 os
2/30
07-04-2014 S.LB.S Engineering College 2
-
8/12/2019 plan 9 os
3/30
What is plan 9?
More realistically, a distributed operating system .
Designed by the creators of C, UNIX,AWK, UTF-8,TROFF etc.
Widely acknowledged as UNIXs true successor .
Distributed under terms of the Lucent Public License, which
appears on the OSIs list of approved licenses, also considered
free software by the FSF .
Uniform interface to all resources .
No files are more special than others .
07-04-2014 S.LB.S Engineering College 3
-
8/12/2019 plan 9 os
4/30
What are Design Considerations ?
Openness
Security
Scalability
Failure handling
Transparency
07-04-2014 S.LB.S Engineering College 4
-
8/12/2019 plan 9 os
5/30
Plan 9 was named after the worst movie ever made in the
history of American Film .
Bell Labs began development in late 1980
s 4 Releases
Last Release was April of 2002
Updated June 2003
07-04-2014 S.LB.S Engineering College 5
-
8/12/2019 plan 9 os
6/30
Paradigm shift in mid 1980s
From: Large centralized timeshared computers
To: Networks of smaller personal machines
Typically UNIX
workstations
Plan 9 wanted it both ways
Central Administration
Cost effective
07-04-2014 S.LB.S Engineering College 6
-
8/12/2019 plan 9 os
7/30
Build a time sharing system out of workstations
Build a UNIX out of a lot of little systems, not out of a lot of
little UNIXs
Specialization of hardware Different computers for different tasks
Small cheap machines in peoples offices
Terminals providing access to shared resources
File servers, computing servers File Servers and CPU Servers in Server Room
07-04-2014 S.LB.S Engineering College 7
-
8/12/2019 plan 9 os
8/30
07-04-2014 S.LB.S Engineering College 8
Centralized Time shared Systems
Personal Workstation Systems
CPU ServersFile Servers
High Speed
Network
Centrally located multiprocessor machines with large memories
and high bandwidth point to point interconnects.
Terminal
Medium Speed Network
Plan 9 Distributed Operating System
-
8/12/2019 plan 9 os
9/30
Setup and use a working plan9 research environment
Implement and measure fitness of several Bioinformatics
algorithms when implemented in a distributed manner
Measure performance and compare to other (more robust)operating systems (BSD or Linux)
Compare ease of use and application development with other
OSs
07-04-2014 S.LB.S Engineering College 9
-
8/12/2019 plan 9 os
10/30
Plan 9:
Plan 9 is the name of the Distributed Operating Systemdesigned and implemented by researchers at Bell Lab inMurray Hill New Jersey.
9Grid: 9Grid is the name of a Plan 9 installation that provides Grid
Style Computing.
8:
The Plan 9 window system. It provides textual I/O andbitmap graphic services to both local and remote clientprograms by offering a multiplexed file service to thoseclients
07-04-2014 S.LB.S Engineering College 10
-
8/12/2019 plan 9 os
11/30
Rc:
Rc is a command interpreter for Plan 9 that providessimilar facilities to UNIXs Bourne shell, with some smalladditions and less idiosyncratic syntax .
IL Protocol:
IL is a custom implemented network protocol to transportthe remote procedure call messages 9P. It is a connection-
based, lightweight transport protocol that carriesdatagrams encapsulated by IP. IL provides retransmissionof lost messages and in-sequence delivery, but has no flowcontrol and no blind retransmission .
07-04-2014 S.LB.S Engineering College 11
-
8/12/2019 plan 9 os
12/30
Built upon 3 principles.
1. Resources as files
Named and accessed like files in a hierarchical file
system.
2. Standard protocol
9P, for accessing these resources.
3. Hierarchical file name space
The disjoint hierarchies provided by different servicesare joined together into a single private hierarchical
file name space.
07-04-2014 S.LB.S Engineering College 12
-
8/12/2019 plan 9 os
13/30
Resources as files
All resources in Plan 9 look like file systems.
File Oriented access
Hierarchical name tree
Accessible by name
Access contents by read and write calls
07-04-2014 S.LB.S Engineering College 13
-
8/12/2019 plan 9 os
14/30
07-04-2014 S.LB.S Engineering College 14
One protocol to bind them all
9P is Plan 9s VFS
13 basic operations including read, write, stat et. al.
All resources are required to implement them Minimalist and Lightweight, can work over any reliable
transport:TCP, Shared Memory, Serial Ports, PCI Bus etc.
-
8/12/2019 plan 9 os
15/30
Hierarchical File namespace
Every resource in the system,
local or remote
User or process assembles a private view of the systemby constructing a file name space that connects the
resources.
Allows the user to access files that are local or remote in
the same manner. When writing a program the user
does not need to create code that handles for cases in
which the file is not local. Those details are abstracted
to the system.
07-04-2014 S.LB.S Engineering College 15
-
8/12/2019 plan 9 os
16/30
Main Parts
File servers
CPU servers
Terminals (user access points).
Unlike what you may expect, a file server in Plan 9 is justsomething that serves resources in the form of files
Hence, the kernel is often called a server multiplexer, not anI/O multiplexer like UNIX was
Thanks to 9P, it doesnt matter whether resources are local orremote, applications use them transparently without evenknowing
07-04-2014 S.LB.S Engineering College 16
-
8/12/2019 plan 9 os
17/30
Example: Echo Server
This Code implements a typical TCP listener.
It announces itself
listens for connections, and forks a new process for each.
The new process echoes data on the connection until theremote end closes it.
The "*" in the symbolic name means the announcement is valid
for any addresses bound to the machine the program is run on
07-04-2014 S.LB.S Engineering College 17
-
8/12/2019 plan 9 os
18/30
Example: Echo Server
1.Announce()
2.Listen()
3.Accept() || Reject()
4.Process().
5.Close()
07-04-2014 S.LB.S Engineering College 18
-
8/12/2019 plan 9 os
19/30
There is no root user
Everyone has the same privileges (i.e. nothing)
Namespaces provide isolation by default
The file-server has a sys group, add yourself to it if you want
to, for example, install a new kernel for everyone to use
Each box is a (typically) separate machine;
Ellipse is a process.
The authentication server is one of several repositories
for users security information that factotum processesconsult as required. Sec store is a shared resource for storing private
information such as keys; factotum consults it for theuser during bootstrap
07-04-2014 S.LB.S Engineering College 19
-
8/12/2019 plan 9 os
20/30
Native UTF-8 UTF-8 was invented by Ken Thomson and
Rob Pikefor Plan 9
All text in Plan 9 is UTF-8 (which is why it is
backward-compatible with ASCII) Internationalization was
added to Linux as
an afterthought
This is especially relevant in countries like India
07-04-2014 S.LB.S Engineering College 20
-
8/12/2019 plan 9 os
21/30
Rio
Plan 9s Window Manager
A window in Rio is a real window, not a terminal
emulator because we dont use terminal anymore
Everything is just text - cut / copy / paste at will! And yes, you need a (3-button) mouse :)
07-04-2014 S.LB.S Engineering College 21
-
8/12/2019 plan 9 os
22/30
Acme
The programmers editor
Again, all text is editable
Can also be used as a file manager No, theres no syntax coloring (yet!)
07-04-2014 S.LB.S Engineering College 22
-
8/12/2019 plan 9 os
23/30
Compiler Suite
One compiler and linker per architecture
(MC68000/020,ARM,Alpha, x86,AMD64, SPARC, SPARC64,
PowerPC, MIPS and more on the way)
A new Makefile style system for maintaining code - mk
Very fast - No dynamic libraries Robust debugging system acid
07-04-2014 S.LB.S Engineering College 23
-
8/12/2019 plan 9 os
24/30
Fossil and Venti
Venti - block storage indexed by hash; duplicated blocks
stored only once
Fossil: Uses Venti for storing snapshots of files
Try the history and yesterday commands
Mac OS X comes up with this idea for Leopard in 2007, was in
Plan 9 since before I was born!
07-04-2014 S.LB.S Engineering College 24
-
8/12/2019 plan 9 os
25/30
Factotum
Much like a keyring, does authentication on your behalf
Speaks a variety of protocols
All your keys are stored in secstore encrypted in a masterkey
07-04-2014 S.LB.S Engineering College 25
-
8/12/2019 plan 9 os
26/30
What Plan 9 does not have?
root, suid, tty, curses
ioctl, sockets, select, poll, symlinks pthreads,
mmap
localesgcc, C++, emacs, vi
X11, XML,Web 2.0
... and thats a good thing (TM)
07-04-2014 S.LB.S Engineering College 26
-
8/12/2019 plan 9 os
27/30
Good video players
A 3D graphics system Eye-candy
JavaScript-enabled web browser .
07-04-2014 S.LB.S Engineering College 27
-
8/12/2019 plan 9 os
28/30
SYSTEM REQUIREMENTS
These instructions are for a x86 based PC. See the SupportedPC hardwarepage.
Find an x86-based PC with:
>32MB of RAM These are requirements for the installation procedure. A
machine with 16MB of memory and no free disk space at allwill work fine as a terminal net-booted but won't be able torun the installer.
If you wish to install from local media, you need a FAT filesystem or a CD-ROM drive. If you wish to install over theinternet, you need a supported Ethernet card or a PPP dial-upaccount using a modem.
07-04-2014 S.LB.S Engineering College 28
http://plan9.bell-labs.com/wiki/plan9/Supported_PC_hardwarehttp://plan9.bell-labs.com/wiki/plan9/Supported_PC_hardwarehttp://plan9.bell-labs.com/wiki/plan9/Supported_PC_hardwarehttp://plan9.bell-labs.com/wiki/plan9/Supported_PC_hardwarehttp://plan9.bell-labs.com/wiki/plan9/Supported_PC_hardware -
8/12/2019 plan 9 os
29/30
07-04-2014 S.LB.S Engineering College 29
-
8/12/2019 plan 9 os
30/30
Queries????
ThanksRajan Khandelwal
Credits :Mr.Nadeem Lohani
07-04-2014 S.LB.S Engineering College 30