linux之檔案對映mmap munmap

2021-08-02 01:25:22 字數 524 閱讀 1462

1.檔案對映,能夠將硬碟對映到程序的位址,這樣可以向操作記憶體一樣來操作檔案,而且效率高;但是有一定的限制,

· 檔案的長度必須大於等於對映的長度;

· 對映的offset必須是頁(page)的整數倍;

注意:對映不會增長檔案的長度;對映部分的內容應該是檔案本來就應該有的內容;

2 .檔案對映主要使用到兩個函式;分別是:mmap和munmap;其函式的原型和所需標頭檔案如下:

#include 

void *mmap(void *addr, size_t length, int prot, int flags,int fd, off_t offset);

引數:addr通常都指定為null,讓作業系統來決定在記憶體空間中開闢對映的空間;

length:為所對映的長度;

prot:表示protect,該引數描述了對映的所需記憶體保護;並且不能與檔案的開放模式發生衝突)。

flags: map_shared才會將記憶體體現在硬碟, map_p

Linux的檔案對映

include include include include include include include int main void ptr mmap null,指定對映的位址,如果為空,那麼核心自動選擇乙個位址 4096,對映長度 prot read prot write,訪問方式,要和開啟...

MyBatis之sql對映檔案

mybatis的強大之處就在於它的sql對映檔案,下面介紹sql對映檔案的幾個頂級元素配置 2 cache 配置給定的命名空間的快取 3 cache ref 從其他冥冥空間的引用快取配置 4 resultmap 用來描述資料庫結果集和物件的對應關係 5 sql 可以重用的sql塊,也可以被其他語句引...

linux 建立檔案對映

這是linux中乙個非常重要命令,請大家一定要熟悉。它的功能是為某乙個檔案在另外乙個位置建立乙個同不的鏈結,這個命令最常用的引數是 s,具體用法是 ln s 原始檔 目標檔案。當我們需要在不同的目錄,用到相同的檔案時,我們不需要在每乙個需要的目錄下都放乙個必須相同的檔案,我們只要在某個固定的目錄,放...