OSI Model
再來新增幾個問題… 也是太久沒唸忘記的 ~_~
- OSI Model 有那七層
- TCP/IP 的五層是那五層
- TCP 和 UDP 的差別
- Process 和 Thread 的差別
OSI Model 有那七層
- Physical Layer
- Data Link Layer
- Network Layer
- Transport Layer
- Session Layer
- Presentation Layer
- Application Layer
若以 TCP/IP 的架構來分的話,則是
- Physical Layer
- Data Link Layer – MAC Layer
- 連線服務 – IP
- 傳輸服務 – TCP/UDP
- 連線服務 – HTTP/TELNET/…
參考資料
UDP 和 TCP 的差別
TCP 提供 Connection Oriented 的可靠傳輸,UDP則是 COnnectionless Oriented。TCP 會透過確認及重送機制來保證封包正確抵達,在傳送的過程中,封包可不必按照順序進行接收。因此,UDP在傳送過程中可能會遺失、重複、錯誤,但傳輸的效能可以比較好,適合用於訊息量較大、注重時效性的協定。
參考資料
Process 和 Thread 的差別
-
Process
Heavy weight, 獨立的Program Segment、Data Segment, OS resource 等, 但切換時(Context Switch), CPU 需將當前 Process 的狀態保存起來,再載入下一個要執行的 Process 的狀態,負責儲存這個狀態的稱為PCB (Process Controll Block,或稱 Process Descriptor)
-
Thread
Light weight process,有自己的 program counter, register set, stack space, no (or a little) context switch
每個 Thread 有自己的 PC, register set, stack space 表示 thread 可以有自己的 call graph 來執行程式。一個Process中的Thread共用Address Space(包括Program/Data Segment、Resource),因此切換Thread時不需要切換/複製Address Space,處理代價相對輕很多。
Leave a Reply