mmap

    3熱度

    1回答

    我正在使用Vagrant(與一個Linux來賓)的構建環境的項目。構建過程依賴於mmap()來構建某些特定於應用程序的二進制文件。不幸的是,vboxsf,VirtualBox與主機共享目錄的機制,seems to have some (7 year old) problems with mmap。 我可以通過在guest虛擬機的私有存儲中工作,然後將文件複製回共享目錄來解決此問題,但這很醜且很慢。

    0熱度

    1回答

    我的任務是建立一個聊天服務器和客戶端與beej的指導示例,以便客戶端可以上傳文件到服務器。 這些指令用於映射文件並使用send()發送數據。 012'iv'e首先嚐試發送簡單的txt文件,但它不會工作。由於某種原因,當調試程序並逐行執行它時,它會起作用。 也許有人可以指出我錯過了什麼? 客戶端代碼: #include <stdio.h> #include <stdlib.h> #include

    0熱度

    1回答

    我從TRM知道要修改控制寄存器中的值我需要特權模式,這可以通過Linux中的內核模塊完成。 但是,雖然在TRM中沒有特別提及,但如果我嘗試使用/ dev/mem來完成這些操作,則爲ADC啓用時鐘併爲EPWM配置時基時鐘始終會失敗。 爲什麼我不能在用戶空間中使用/ dev/mem?

    0熱度

    1回答

    無論出於何種原因,我無法在C中使用mmap打開任何大小的文件。我可能會丟失明顯的東西,因此您的建議將不勝感激。我搜索了類似的回覆,但沒有找到任何幫助。這是我的代碼 - 是的,它非常簡單。 #include <stdio.h> #include <stdlib.h> #include <sys/mman.h> #include <sys/stat.h> #include <fcntl.h>

    2熱度

    2回答

    我有一個關於mmap和munmap在Linux中的簡單問題:是否有可能mmap成功,但munmap失敗? 假設所有參數都正確給出,例如,請參閱以下代碼片段。在什麼情況下munmap failed!會被打印? char *addr = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); ...

    2熱度

    2回答

    我正嘗試使用MAP_SHARED創建一個內存映射文件。當文件大小達到2GB時遇到問題。下面粘貼的代碼是我正在使用的(作爲測試)。 #include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <sys/mman.h> #include <unistd.h> #include <fcntl.h> #define

    1熱度

    3回答

    #include <iostream> #include <sys/mman.h> #include <unistd.h> void signal_handler(int signal) { using namespace std; cout << "WE GET SIGNAL!" << endl; exit(0); } int main() {

    1熱度

    1回答

    我想學習使用mmap讀取和寫入一些寄存器。我有以下代碼。 #define MY_BASE_ADDRESS 0xC0000000 //Base Address for the PCIe #define LED_ADDRESS 0x00010000 //Offset for LEDS 0x00010000 #define MAPPED_FILE_SIZE (50 * sizeof(int)) /

    3熱度

    1回答

    有沒有辦法檢查內存區域是否使用mmap映射到某個底層文件? 我的意思是我想寫的函數: int is_mmapped(void *ptr, size_t length); 它返回其完全映射使用mmap系統調用到文件存儲區域非零值。

    0熱度

    1回答

    嗨即時通訊使用在debian上運行的beaglebone黑色,我使用mmap上的/dev/mem文件來訪問GPIO寄存器。 我有一個包含我的映射功能.c文件: //sample code unsigned int *gpio_get_map(int gpio) { unsigned int *gpio_addr = NULL; int fd = open("/dev