基礎知識的複習

1. SAN 

 SAN(Storage Area Network的簡稱)直譯過來就是存儲區域網絡,它採用光纖通道(Fibre Channel)技術,通過光纖通道交換機連接存儲陣列服務器主機,建立專用於數據存儲的區域網絡。SAN網絡存儲是一種高速網絡或子網絡,SAN存儲系統提供在計算機與存儲系統之間的數據傳輸。

  NAS存儲網絡

  NAS是通過網線連接的磁盤陣列,具備磁盤陣列的所有主要特徵:高容量、高效能、高可靠。

  DAS

  這是一種直接與主機系統相連接的存儲設備,如作爲服務器的計算機內部硬件驅動。

 

2.硬中斷和軟中斷

 

編程異常通常叫做軟中斷 
軟中斷是通訊進程之間用來模擬硬中斷的一種信號通訊方式。 中斷源發中段請求或軟中斷信號後,CPU   或接收進程在適當的時機自動進行中斷處理或完成軟中斷信號對應的功能。

 

硬中斷是硬件實現的中斷,是程序運行時設備對它的中斷

 

3.簡述ISO OSI的物理層Layer1,鏈路層Layer2,網絡層Layer3的任務。

網絡層:資料傳送的目的地尋址,再選擇出傳送資料的最佳路線;
鏈路層:負責網絡上資料封包如何傳送的方式;
物理層:在設備與傳輸媒介之間建立及終止連接。參與通訊過程使得資源可以在共享的多用戶中有效分配,對信號進行調製或轉換使得用戶設備中的數字信號定義能與信道上實際傳送的數字信號相匹配

 

   網絡層爲建立網絡連接和爲上層提供服務,應具備以下主要功能.
    ① 路由選擇和中繼.
    ② 激活,終止網絡連接.
    ③ 在一條數據鏈路上覆用多條網絡連接,多采取分時複用技術.
    ④ 差錯檢測與恢復. 
    ⑤ 排序,流量控制.
    ⑥ 服務選擇.
    ⑦ 網絡管理.

 

4.什麼是進程和線程?有何區別?
線程是進程的一個實體,是CPU調度和分派的基本單位,它是比進程更小的能獨立運行的基本單位.
線程自己基本上不擁有系統資源,只擁有一點在運行中必不可少的資源(如程序計數器,一組寄存器和棧),但是它可與同屬一個進程的其他的線程共享進程所擁有的全部資源.一個線程可以創建和撤銷另一個線程;同一個進程中的多個線程之間可以併發執行.

 

5.  TCP/IP四層模型和OSI七層模型

    表1-1是 TCP/IP四層模型和OSI七層模型對應表。我們把OSI七層網絡模型和Linux TCP/IP四層概念模型對應,然後將各種網絡協議歸類。
    表1-1  TCP/IP四層模型和OSI七層模型對應表

OSI七層網絡模型

Linux TCP/IP四層概念模型

對應網絡協議

應用層(Application

應用層

TFTP, FTP, NFS, WAIS

表示層(Presentation

Telnet, Rlogin, SNMP, Gopher

會話層(Session

SMTP, DNS

傳輸層(Transport

傳輸層

TCP, UDP

網絡層(Network

網際層

IP, ICMP, ARP, RARP, AKP, UUCP

數據鏈路層(Data Link

網絡接口

FDDI, Ethernet, Arpanet, PDN, SLIP, PPP

物理層(Physical

IEEE 802.1A, IEEE 802.2IEEE 802.11


6. 面向連接(TCP)的套接字的系統調用時序圖。

          
             Service                                                       Client

AS: socket()建立流式套接字,返回套接字號SS。                   
               ↓         
               ↓
BS: bind(),套接字SS與本地地址相連。
               ↓
               ↓
CS: listen(),通知TCP服務器準備好接受連接。
               ↓
             C to D
               ↓
DS: accpet(),接受連接等待客戶端的連接。                         AC: socket()建立流式套接字號SC。
               ↓                                                          ↓
               ↓                                                          ↓
ES: 建立連接,accpet()返回得到新的套接字,如NS。                 BC: connection(),將套接字S與遠地主機連接。
               ↓                                                          ↓
              ES_FS                             <------------------ Connect to ES_FS 
               ↓                                                          ↓
FS: recv() & send(),在套接字NS上讀寫數據直到完成交換。          CC: send() & recv(),在套接字上讀寫數據直到數據交換完成。
               ↓                                                          ↓
               ↓                                                          ↓
GS: closesocket(), 關閉套接字NS。                               DC: closesocket(),關閉套接字SC,結束TCP對話。
               ↓
         Goto: C to D
               ↓
HS: closesocket(),關閉最初套接字SS,服務結束。

 

8.New delete 與malloc free 的聯繫與區別?

答案:都是在堆(heap)上進行動態的內存操作。用malloc函數需要指定內存分配的字節數並且不能初始化對象,new 會自動調用對象的構造函數。delete 會調用對象的destructor,而free 不會調用對象的destructor.

 

9.觀察者模式的缺點

(1) 如果一個被觀察者對象有很多直接和間接的觀察者的話,將所有的觀察者都通知到會花費很多時間。

(2)如果在被觀察者之間有循環依賴的話, 被觀察者會觸發它們之間進行循環調用,導致系統崩潰。在使用觀察考模式時要特別注意這一點。

(3)如果對觀察者的通知是通過另外的線程進 行異步投遞的話,系統必須保證投遞是以自恰(?)的方式進行的。

(4)雖然觀察者模式可以隨時使觀察者知道所觀察的對象發生了變化,但是觀察者 模式沒有相應的機制使觀察者知道所觀察的對象是怎麼發生變化的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章