2012-05-15

共筆記錄連結

共筆記錄

http://plan9.bell-labs.com/sys/doc/

http://plan9.bell-labs.com/sys/doc/il/il.pdf

When we were implementing

IP, TCP, and UDP in our system we tried to choose a protocol suitable for carrying 9P.

The properties we desired were:

* Reliable datagram service

* In-sequence delivery

* Internetworking using IP

* Low complexity, high performance

* Adaptive timeouts

Clouds

User experience between *BSD vs. Linux (iOS vs. Android)

Re-design unix add back 'e' of 'creat'

1972 file, sync, ...

http://en.wikipedia.org/wiki/PDP-11

hierarchical, tree like name space file system leads to URL for remote resource access

RPC - Remote Procedure call for NFS

UNIX (Unics) vs. multics

Paradigm shift in mid 1980s

Plan 9 idea comes from network communication

1986 Clouds Distributed Operating System

http://home.cc.gatech.edu/tony/uploads/14/clouds.pdf

Key concept of Plean 9: Dropbox (storage element) + GAE (computing element)

+ Terminal (User Interface)

interesting -> innovation

ls -- list directory contents

Device drivers is a server with 17 operations

Ken CC compiler injects backdoors

proc fs -> linux

NFS server is stateless

左邊的圈圈跟右邊的圈圈可以統在一起的時猴是一件很偉大的事! Awesome!

language limbo

Renaissance 文藝復興

http://wiki.qemu.org/Documentation/9psetup

mount -t 9p -o trans=virtio [mount tag] [mount point] -oversion=9p2000.L

http://cm.bell-labs.com/who/dmr/

plan9.bell-labs.com/iwp9/dmr_iwp9.ppt

Unix and Beyond: Themes in Operating Systems Research

'90s there are hundreds of companies making CPUs and making new languages

not like these days all persuing accessing hit rates

500 new elevators per month installed in Shanhai --> Ads machine

永大電機

Inferno ---> Plan 9

Inferno is a virtual operating system on a small device

http://en.wikipedia.org/wiki/Inferno_(operating_system)

zzz zzz 分享筆記

* Plan 9 = Dropbox (files) + GAE (Google App Engine?) (CPU)

* 出處: Plan 9 from outer space

* 想法

- 資源無縫存取

* 檔案概念

- 新增檔案操作API

- 引進state概念,類似/proc, /proc/net這樣可以直接操作和查詢檔案代表的資源

- 每個物品都是檔案,如遠端檔案,軟體Process...etc。需要identify各種資源,所以naming是很重要並複雜的

- 實作這些檔案操作的程式可以被稱為driver,很容易就可以做成server。

+ client/server 共用code?

- 檔案本身就有TCP

* 其他

- Plan 9 thin client架構下,local disk可以作為cache用

- Host A 透過NFS mount Host B的檔案目錄,Host B 透過NFS mount Host C的檔案目錄,再目前

架構下Host A無法透過Host B去存取Host C的檔案(遞移律?)。這個在Plan 9不是問題。

- Plan 9沒有super user,資料都需要加密認證,會有Proxy簡化加密認證

- Plan 9 在意的是關聯本身

- 考慮網路本質,資源也許會不穩定,Plan 9 的下非同步是再也自然不過的事

- dmr: Unix and Beyond, 2007

- Plan 9/Inferno 還有small foot print的優勢

- Inferno有受Java影響

- Micro Kernel主要的劣勢

+ 需要Well design

+ 很多地方為了最佳化使用組語,連帶造成移植的困難性

- 電梯廣告

+ 根據目的樓層,到達時間,人數等動態挑選要播放的廣告

- ctl/data .. ?

- VirtFS,Qemu透過Plan 9 protocol去達到在一台主機上面不同的VM去存取彼此以及主機上的資料。

- 最近的cloud 運算可以說是種復古風

- 90年代OS的狀態可說是百家爭鳴

* 應用

- Embedded System

+ Small footprint

+ 可以更方便的使用網路資源