應用層總結 系統呼叫和應用程式設計介面

2021-08-20 14:28:44 字數 1425 閱讀 6182

大多數作業系統使用系統呼叫機制在應用程式和作業系統之間傳遞控制權

對程式設計師來說,系統呼叫和一般程式設計中的函式呼叫非常相似,只是系統呼叫是將控制權傳遞給了作業系統(使用者態->核心態)

1)作用:應用程序的控制權和作業系統的控制權進行轉換的介面

①當某個應用程序啟動系統呼叫時,控制權就從應用程序傳遞給了系統呼叫介面

②此介面再將控制權傳遞給計算機的作業系統,作業系統將此呼叫轉給某個內部過程,並執行所請求的操作

③內部過程一旦執行完畢,控制權就又通過系統呼叫介面返回給應用程序

1)套接字的作用

①當應用程序需要使用網路進行通訊時就發出系統呼叫,請求作業系統為其建立「套接字」,以便把網路通訊所需要的系統資源分配給該應用程序

②作業系統為這些資源的總和用乙個叫做套接字描述符的號碼來表示,並把此號碼返回給應用程序,應用程序所進行的網路操作都必須使用這個號碼

③通訊完畢後,應用程序通過乙個關閉套接字的系統呼叫通知作業系統**與該「號碼」相關的所有資源

2)連線建立階段

①套接字被建立後,其埠號和 ip 位址都是空的,應用程序要呼叫bind(繫結)來指明套接字的本地位址(在伺服器端呼叫 bind 時就是把熟知埠號和本地ip位址填寫到已建立的套接字中)

②伺服器呼叫 bind 後,還必須呼叫listen(收聽) 把套接字設定為被動方式,以便隨時接受客戶的服務請求(udp 伺服器由於只提供無連線服務,不使用 listen 系統呼叫)

③客戶程序傳送連線請求後,伺服器緊接著呼叫accept(接受),以把客戶程序發來的連線請求提取出來(系統呼叫 accept 的乙個變數就是要指明從哪乙個套接字發起的連線)

3)資料傳輸階段

客戶和伺服器都在 tcp 連線上使用send系統呼叫傳送資料,使用recv系統呼叫接收資料

4)連線釋放階段

一旦客戶或伺服器結束使用套接字,就把套接字撤消,此時呼叫close釋放連線和撤銷套接字

診斷網路層和應用層互動 傳輸層 應用層

計算機1 計算機2 應用層 應用層 傳輸層 段 傳輸層 網路層 包 網路層 資料鏈路層 幀 資料鏈路層 物理層 物理層 位ethernet頭 ip頭 tcp頭 應用層的頭 應用層資料 那麼我們通過ip和mac找到了一台特定的主機,如何標識這台主機上的應用程式,答案就是埠,埠即應用程式與網絡卡關聯的編...

計網應用層總結

應用層的幾個協議 2.郵件傳輸協議 其他的一些知識點 cookie,它用來標識使用者的身份,是web站點用來識別使用者的乙個唯一的識別碼。當使用者首次訪問某個 這個 會生成乙個唯一的識別碼,並以此作為索引在它的後端資料庫中產生乙個表項,然後這個 的伺服器會用乙個包含set cookie的首部的htt...

利用應用UID呼叫應用程式

利用應用uid呼叫應用程式 from forum nokia wiki 利用應用uid呼叫應用程式通常有兩種方法 便可以啟用相機程式。二.使用tapatask類 便可以呼叫瀏覽器並直接訪問移動夢網。以下是一些常用功能的uid 瀏覽器0x10008d39 日曆0x10005901 情景模式0x1000...