linux-device-driver

    2熱度

    1回答

    我已經嘗試讀取/ proc/bus/pci目錄下的用戶空間pci條目,並在驅動程序中調用內核空間API pci_read_config_word()。但似乎兩者只能讀取pci的基本配置空間,偏移量小於0x100。 我想要讀取的偏移量超出了0x100,誰能告訴我如何在Linux中執行此操作?如果在內核空間中完成,告訴哪個API將被非常讚賞。非常感謝你!

    7熱度

    2回答

    我想知道內核模塊的地址。實際上,從堆棧跟蹤看來,崩潰是由內核模塊觸發的(系統啓動後已崩潰)。有幾個模塊我手動insmod。所以我需要檢測其中哪些模塊觸發了崩潰。請讓我知道如何獲得使用insmod加載的每個模塊的地址。

    0熱度

    2回答

    我正在研究一個由多個內核模塊組成的項目。不同模塊之間有一些共享功能,但我不想在每個模塊中包含相同的代碼。 Linux內核有一個「共享對象庫」還是通用代碼進入一個單獨的模塊?

    3熱度

    1回答

    我在linux內核(2.4)的一些代碼上工作,出於某種原因,kmalloc返回相同的地址(我相信它只發生在測試的中間) 。我檢查了在調用kmalloc之間沒有調用kfree(即內存仍在使用中)。 也許我內存不足? (kmalloc沒有返回NULL ...) 關於如何發生這種事情的任何想法? 在此先感謝您的幫助! 代碼: typedef struct { char* buffer;

    3熱度

    1回答

    開始研究Linux中的設備驅動程序開發。我來自學術背景。開始使用Robert Love的book瞭解更多關於基礎知識。然後開始閱讀Ori Pomerantz的Linux Kernel Module Programming Guide。但感覺設備驅動程序書籍有點難以理解。尋找解釋Linux設備驅動程序開發的一些不錯的講座/書籍。長列表將幫助這裏的讀者

    5熱度

    1回答

    什麼是可以完全在內存中創建的不同類型的Linux文件? 例如,可能會創建管道文件,但創建文件的位置(或文件路徑的文件系統類型)會影響是否涉及磁盤訪問?如果我在ext3文件系統中創建管道文件,是否可以使用物理磁盤訪問結果?

    1熱度

    2回答

    我有一個字符設備可以訪問外部SPI存儲器,我想mmap()外部存儲器,以便我可以從它訪問一個程序就好像它是正常的記憶。 如果我使用重映射的字符設備文件執行通常的mmap()的頁面,它只是讓我看到一個設備的存儲區域,而不是它的虛擬字符的文件... 有沒有竅門,讓我這樣做? TIA

    0熱度

    1回答

    我增加了陀螺儀/加速驅動程序(Invensense公司MPU3050),可here到我的內核(LPC的Linux)。我使用LTIB來構建映像和rootfs。 我管理將所有文件和驅動程序可用,完美編譯! 現在我需要在i2c_board_info_structure在「板GENERIC.C」文件(README)添加mpu3050_platform_data結構,然後註冊其添加在相同的「板GENERIC

    4熱度

    2回答

    我正在研究Linux內核版本2.6.39.1,並且正在開發塊設備驅動程序。在這方面,我想將多個struct bio組合成單個的struct request,然後將其添加到request_queue以供設備驅動程序處理,即 - scsi_request_fn()。 我嘗試使用->bi_next字段struct bio來鏈接我編寫的多個struct bio,從而創建了一個鏈接列表struct bio

    34熱度

    3回答

    我正在尋找linux內核中棧的很好的描述,但是我發現它很難找到有用的東西。 我知道大多數系統的堆棧限制爲4k,其他系統限制爲8k。我假設每個內核線程/下半部分都有自己的堆棧。我也聽說如果中斷髮生,它會使用當前線程的堆棧,但是我找不到任何這樣的文檔。我正在尋找的是如何分配棧,如果有任何良好的調試例程(我懷疑特定問題的堆棧溢出,並且我想知道是否可以將內核編譯爲警察堆棧大小等)。