mmap

    0熱度

    1回答

    Windows上的Python 2.7。試圖使用mmap模塊,但使用打開文件處理程序而不是with open(filename, "r+b") as f:我只是打開它並得到一個WindowsError [Error 5]。 它重現,要麼以管理員身份運行,要麼不以管理員身份運行。 使用codecs.open()不能解決問題。 # -*- coding: utf8 -*- from __future

    2熱度

    1回答

    語境 的Linux 4.4.0-57泛型#78,Ubuntu的SMP週五12月9日23時50分32秒UTC 2016 x86_64的x86_64的x86_64的GNU/Linux的 法國區域設置 代碼 #include <stdio.h> #include <string.h> #include <fcntl.h> #include <sys/mman.h> int main() {

    0熱度

    2回答

    我正在編寫一個程序,並得到了一個內存位置,我已經存儲爲一個無符號整型和映射的長度爲一個無符號整型,我想取消映射。 我下面的方法產生的警告: warning: passing argument 1 of ‘munmap’ makes pointer from integer without a cast [enabled by default] /usr/include/i386-linux-g

    0熱度

    1回答

    情況:我使用mmap將CVD(ClamAV病毒數據庫)文件加載到RAM中。 CVD文件中每一行的格式都與CSV文件(':'分隔)相同。下面的代碼片段: def mapping(): with open("main.cvd", 'rt') as f: global mapper mapper = mmap.mmap(f.fileno(), 0, prot=mmap.

    2熱度

    1回答

    以下我的問題here,我在調用文件mmap時將我的研究擴展到了從文件到內存的實際讀取/寫入,反之亦然。不同的讀寫系統調用,MMAP的情況是不同的,因爲它可以在下面的回溯顯示: (lldb) bt * thread #3, name = '0xffffff801a6c24c0', queue = '0x0', stop reason = step in * frame #0: 0xffffff8

    0熱度

    1回答

    我不是一個不安全的軟件包專家 - 我也不是一個經驗豐富的C程序員。我正嘗試在go中使用mmap syscall讀取一個大文件> 1G。我做mmap和munmap的原因有很多,而不是讀取,寫入I/O。這是在旁邊 - 我可以在測試中寫入文件,當我從文件讀取時,我可以確定字節長度匹配,但我無法讀取此字符串文件的內容:(可以有人建議一些閱讀?需要做進一步走一點,這裏的一些代碼,我做了樣品的測試: file

    1熱度

    1回答

    我將一個文件轉換爲String。 int fd = open(FILE_PATH, O_RDWR); struct stat s; int status = fstat(fd, &s); char *f = (char*) mmap (0, s.st_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0); 然後我cJSON解析f並做一些修改。

    0熱度

    1回答

    我試圖通過映射一個1 MiB文件(對應於RAM大小)來建模一個基本CPU。我想讀/寫這個文件。我的困惑是,我想我可以只是mmap我的文件,然後索引到內存塊,就好像它是一個數組。我在網上看到了幾個例子,這些例子都做得很好。例如,給出以下代碼片段: int16_t ramD; if ((ramD = open("ramMap.txt", O_RDWR | O_CREAT, 1)) == -1) {

    2熱度

    1回答

    我試圖通過映射一個1 MiB文件,對應於RAM大小來建模一個基本的CPU。我想讀/寫這個文件。目前我收到一個SIGBUS錯誤ram[2] = 1,我收集的是試圖在文件範圍之外的mmap。我讀過,也許我需要用零填充文件作爲佔位符,但我有點困惑,爲什麼我必須這樣做,因爲我認爲mmap會自動爲我分配一個內存塊,將分配給我當我第一次觸摸它時(正如我試圖在我的測試中做的那樣)。我錯過了什麼? int16_t

    0熱度

    1回答

    我想按字符讀取一個30 MB字符的大文件。我發現了一篇關於如何閱讀大文件的有趣文章。 Fast Method to Stream Big files 問題:輸出打印代替實際人類可讀的文本二進制數據 代碼: def getRow(filepath): offsets = get_offsets(filepath) random.shuffle(offsets) with