mmap操作思考題

2021-08-29 12:09:23 字數 657 閱讀 4929

父子程序共享什麼?

共享檔案,和mmap的對映區(但是要用map_share)

1.men++後mmap能否成功?

不可以。位址必須相同

2.如果open時o_rdonly,mmap時prot引數指定prot_read|prot_write會怎樣?

許可權不夠。原因:

建立對映區的許可權<=開啟檔案的許可權

但是在對映區建立的過程中隱含讀檔案的操作

3.如果檔案偏移量1000會怎麼樣?(從檔案開頭偏移100個位元組再進行對映)

對映是核心得mmu幫助的得(其幫助對映,而mmu得單位是4k)

偏移必須得是4k得整數倍才可以。

4.如果不檢測mmap的返回值會怎樣?

出現mmap引數在內的所有問題(後5個)

5.mmap什麼情況下會呼叫失敗

空間不夠大。。。。

6.隊men越界操作會怎樣?

使位址和mmap不相同,使用失敗

7.檔案描述符先關閉,隊mmap對映有沒有影響?

沒有,檔案描述符是檔案操作的控制代碼

對映區創立成功後由位址進行操作,控制代碼沒有用了

補:

討論 思考題

1 功能 編寫函式 float fun 利用以簡單迭代方法 xn 1 cos xn 求方程 cos x x 0 的乙個實根。迭代步驟如下 1 取x1 初值為0.0 2 x0 x1 把x1 的值賦給x0 3 x1 cos x0 求出乙個新的x1 4 若x0 x1 的絕對值小於 0.000001 執行步...

討論 思考題

1 功能 請編寫函式 void fun char s n char b 將 m行n列的二維陣列中的字元資料按列的順序依次放到乙個字串中。例如 二維陣列中的資料為 w w w w s s s s h h h h 則字串中的內容應是 wshwshwshwsh 2 功能 編寫函式 void fun cha...

趣味思考題

1.一間囚房裡關押著兩個犯人。每天監獄都會為這間囚房提供一罐湯,讓這兩個犯人自己來分。起初,這兩個人經常會發生爭執,因為他們總是有人認為對方的湯比自己的多。後來他們找到了乙個兩全其美的辦法 乙個人分湯,讓另乙個人先選。於是爭端就這麼解決了。可是,現在這間囚房裡又加進來乙個新犯人,現在是三個人來分湯。...