mmap

    2熱度

    1回答

    我想使用packet_mmap發送數據包以獲得高數據包傳輸速率。我設法送使用原始模式的分組插座,其中用於這一目的,我創建L2,L3等數據包,並在緩衝區和使用 sendto(fd_socket, NULL, 0, 0, NULL, sizeof(struct sockaddr_ll)); 但是把它,我不想和目的MAC地址來打擾。所以我轉而使用Dgram。如果我想使用sendto,則會有目標MAC

    8熱度

    4回答

    我有一個數據結構,我想重新進行按需分頁。 mmap似乎是運行一些初始實驗的簡單方法。但是,我想限制mmap使用的緩衝區緩存量。該機器有足夠的內存將整個數據結構分頁到緩存中,但出於測試原因(也有一些生產原因),我不想讓它這樣做。 有沒有辦法限制mmap使用的緩衝區緩存量? 或者,mmap替代方案可以實現類似的功能,但仍會限制內存使用情況。

    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

    0熱度

    1回答

    我想在用戶和內核空間之間構造兩個共享隊列(一個命令隊列和一個回覆隊列)。這樣內核就可以向用戶空間發送消息,用戶空間在完成處理後可以向內核發送回覆。我所做的是使用爲用戶空間分配內核內存頁面(用於隊列)和mmap,現在用戶和內核都可以訪問這些頁面(這裏我指的是在內核空間中寫入的內容可以正確讀取在用戶空間中,或反之亦然)。 問題是我不知道如何在內核和用戶空間之間同步訪問。假設我要爲多製造商1用戶方案構建

    -1熱度

    1回答

    我想對12GB文本文件中的字符串執行4000多次搜索。 目前,我使用mmap來將文件加載到內存中,這是很好的作品(大約需要5秒鐘): with open('my_file.txt', 'rb') as f: m = mmap.mmap(f.fileno(), 0, prot=mmap.PROT_READ) data = m.read(-1) 不幸的是,搜索是永遠走: for

    1熱度

    1回答

    當memmap數組被垃圾收集時,是否有可能刪除Numpy memmap文件? 我曾嘗試: import tempfile import numpy as np arr = np.memmap(tempfile.NamedTemporaryFile(), mode='w+', shape=(10, 10), dtype=np.int) os.path.exists(arr.fi

    0熱度

    1回答

    我試圖找出什麼是在Windows中編寫文件的最佳方法。爲此,我一直在用內存映射進行一些測試,試圖找出發生了什麼以及我應該如何組織事物... 場景:該文件旨在用於單個進程,在多個線程中。你應該看到一個線程作爲工作在文件存儲上的工作者;其中一些會閱讀,一些會寫 - 在某些情況下,文件會增長。我希望我的狀態能夠在流程和操作系統崩潰中倖存下來。文件可能很大,例如:1 TB。 在MSDN上閱讀了很多內容後,

    1熱度

    1回答

    有人知道mmap(在C++/c中)是否可以與/ dev/input/event *設備文件一起使用?我一直在麻煩得到它的工作。我一直收到錯誤19(沒有這樣的設備)錯誤。任何幫助將不勝感激!

    -1熱度

    1回答

    我有一個包含32位浮點數N的大文件。此文件是使用numpys MEMMAP功能如下創建: mmoutput = np.memmap("filename", dtype='f4', mode='w+', offset=0, shape=N) mmoutput[:] = my_floats mmoutput.flush() 當我使用numpy的加載這些係數回來,並使用它們求和: mminput