Linux學習碎片 1

2021-07-09 09:11:35 字數 889 閱讀 3667

以下部分內容學習記錄, 部分為『lingdxuyan'的部落格《linux fork函式和vfork函式》

1. file operation 函式指標的集合

2.裝置新增:註冊->初始化->新增

3. fopen(c庫函式)->open(api對應的函式)->xx_open(kernel內裝置驅動的函式) 這是從應用到核心的經過

5. 資源鎖(計算訊號量 n)、**鎖(互斥訊號量 1)

6. 自旋鎖和訊號量的對比:自旋鎖只允許乙個持有者;訊號量允許有多個持有者。 自旋鎖適合保持時間非常短的情況(臨界區短);訊號量適合保持時間長的情況。同一程序的不同執行緒比較適合用自旋鎖,程序間的共享資源比較適合訊號量。

7. fork()函式通過系統呼叫建立乙個與原來程序幾乎完全相同的程序,相當於程序的轉殖。

pid_t fork(void);

正確返回:在父程序中返回子程序的程序號,在子程序中返回0

錯誤返回:-1

子程序是父程序的乙個拷貝。即,子程序從父程序得到了資料段和堆疊段的拷貝,這些需要分配新的記憶體;而對於唯讀的**段,通常使用共享記憶體的方式訪問。fork返回後,子程序和父程序都從呼叫fork函式返回處開始執行。

父程序與子程序的不同之處在於:fork的返回值不同——父程序中的返回值為子程序的程序號,而子程序為0

vfork()

7.1. 呼叫方法

與fork函式完全相同

#include

#include

pid_t fork(void);

正確返回:在父程序中返回子程序的程序號,在子程序中返回0

錯誤返回:-1

7.2. vfork函式呼叫的用途

用vfork建立的程序主要目的是用exec函式執行另外的程式,與fork的第二個用途相同

天書 碎片1

空間 時間 記憶 蘋果,兩個蘋果,兩個不同空間的蘋果,兩個不同時間的蘋果,何解?多維度空間生長 臨時模式生長,可以解決同一模式在不同時間的出現,從而區別出時間。模式的輸出 輸入即是另一模式空間的輸入。多模式空間的自指輸入。模式生成法 1.當前空間的活動模式總結產生信的模式。臨時模式?2.模式融合,清...

碎片化學習不是學習碎片,看這篇了解碎片化學習的真相

高效學習的定義 找到最適合自己的學習手法,在相對短的時間內集中注意力,以解決乙個工作生活當中的難題為目的著手學習,你需要勤加練習,有時候還需要向名師求助。許岑 為什麼會出現碎片化學習?隨著科技的進步 閱讀載體的變化 可可攜式裝置的普及還有人們的浮躁求快的心理,人們越來越關注碎片化學習,期望在短時間內...

日常知識碎片 1

sql express server sqlexpress database nhibernatedemo uid sa pwd nh nhibernate.driver.sqlclientdriver2.sql server compact edition data source firstsam...