1 程序和執行緒得基本概論
(1)處於執行過程中得程式例項,是作業系統排程和分配資源得基本單位。,但不是執行和排程資源得單位。
(2)乙個程序可以有多個執行緒,所有得執行緒都"同時"執行程序位址空間中得**,那麼要讓所有得執行緒都能夠執行緒,誰先執行誰後執行怎麼辦呢
,作業系統大哥通過一種迴圈得方式提供時間片,造成一種假象(看起來是同時執行得)。
(3)當建立乙個程序的時候,系統自動建立它得第乙個執行緒稱為主線程,這樣這些程序可以繼續生產更多得孩子。
2實現網間程序通訊必須解決的問題有哪些呢
(1)標識問題:乙個主機可以有唯一的id來標識,但是兩個主機,如果a主機標識為4,b主機也可能是4,這樣在網路環境下沒有勒意義
(2)與網路協議棧的問題:兩個主機通訊,通過畫圖更能體現分層的關係應用程序->交給下層傳輸層通過可靠的傳輸->傳輸層及其協議往下最後到物理層
將資料變為訊號->經過各種網路裝置儲存**到目的主機->然後往上層走就是逆向得過程,這樣相當的複雜,windows通過socket來解決
(3)解決多重協議識別問題:不同的協議,格式不同,工作方式不同。
3埠(1)應用層程序與傳輸層協議實體之間的通訊介面,再osi模型中稱為應用層程序與傳輸層協議實體間的服務訪問點sap
(2)應用層程序通過和埠繫結,通過這個埠進行資料的傳送和接受。就類似檔案描述符。
埠的分配機制:
(1)全部埠數65535個埠分為保留埠(0-1023)和自由埠(1024-).首先需要向本地作業系統提出申請,作業系統返回乙個本地唯一的埠號,程序通過合適系統呼叫講自己與這個埠號繫結,然後進行通訊。
具體分配:
0:不使用或者特殊
1-255:保留特定的服務
256-1023:保留給其他服務 如路由
1024-4999:可以用作任意客戶機的額埠
5000-65535 使用者的伺服器端口
1 網路程式設計的基本概念
1.協議 協議就是通訊雙方的乙個約定。乙個簡單的檔案傳輸協議如下 1 傳送檔名,對方返回ok 2 傳送檔案大小,對方返回ok 3 傳送檔案內容1024位元組,對方返回1024 簡單協議 發展與完善 達到通用 指定標準協議 tcp udp.2.通訊模式 2 b s模式 瀏覽器端與服務端 維護方便,開發...
1 1 2 10 網路程式設計1
知名埠 well known ports 知名埠是眾所周知的埠號,範圍從0到1023 80埠分配給http服務 21埠分配給ftp服務 動態埠 dynamic ports 動態埠的範圍是從1024到65535,之所以稱為動態埠,是因為它一般不固定分配某種服務,而是動態分配。動態分配是指當乙個系統程式...
網路程式設計 socket基本概念
什麼是socket?socket是連線應用程式和網路驅動程式的橋梁,socket在應用程式中建立,通過繫結操作和驅動程式建立聯絡。什麼是ip位址?在網路上,主機與主機間的通訊,首先需要知道對通訊方主機的名稱。在internet上用ip位址來標記網路裝置。廣義上的主機可以是工作在網路上的工作台 伺服器...