x86

    3熱度

    3回答

    我想在x86平臺(Pentium或更高保證)上執行和原子讀取64b對齊的64b數據。 有沒有辦法做到這一點? (不,我不想爲此使用臨界區或互斥鎖,我希望這是無鎖的)。

    0熱度

    2回答

    我們有一個在x86上運行良好的WinForms應用程序,但有許多第三方組件可以進行win32調用。爲了讓應用程序在x64上運行,我現在編譯x86平臺。我們的習慣是在系統分區之外的服務器上安裝我們的胖客戶端,所以我們昨天在Win2003 x64服​​務器上安裝了「F:\ Program Files(x86)」。從該目錄運行時,進程拒絕退出。我試圖在任務管理器,taskkill和Process Exp

    5熱度

    1回答

    我正在開發一個基本系統,在該系統中,我需要在啓動後的某個時間確定啓用了多少個內核和線程,以便我可以發送他們SIPI事件。我也希望每個線程知道它是哪個線程。 例如,在與HT單核配置中啓用,我們有(例如,英特爾凌動): thread 0 --> core 0 thread 0 thread 1 --> core 0 thread 1 雖然沒有HT我們有一個雙核的配置(例如,酷睿2): threa

    6熱度

    4回答

    我在某處讀取x86指令中的有效地址(如LEA指令中)是由「EU」計算的。什麼是歐盟?準確計算有效地址涉及什麼?我只學過MC68k指令集(UC Boulder先教導了這一點),我無法通過google = /找到一個好的x86網頁。 謝謝!

    0熱度

    3回答

    我注意到有兩個Windows Server 2008的版本W/Hyper-V的可供下載的MSDN訂閱許可證的網站: 的Windows Server 2008數據中心,企業和標準(64) 的Windows Server 2008數據中心,企業版和標準(86) 我想建立一個開發服務器用於測試/使用Hyper-V軟件開發。根據pre-requisites,您只能在基於x64的處理器上運行Hyper-V。

    2熱度

    1回答

    爲什麼不打印「測試」? #include <stdio.h> #include <stdlib.h> void foo (void) { printf("test\n"); } __declspec(naked) void bar (void) { asm { push 0x000FFFFF call malloc pop ec

    13熱度

    3回答

    我需要將一些傳統的32位代碼(我沒有源代碼)集成到項目中,以便可以從64位.NET程序集中調用它。原始代碼是作爲DLL中的32位COM對象實現的。 Windows不允許從64位到32位的對象進行直接調用,所以我正在尋找如何處理這種情況的靈感。 如何從64位.NET程序集訪問傳統的32位COM對象? 更新:我們發現COM組件本身就是一些ANSI C的包裝,我們可以爲其創建源代碼。我們可以在Visua

    19熱度

    5回答

    我一直在閱讀x86指令集擴展,它們在一些非常特殊的情況下似乎很有用(例如SSE3中的HADDPD - (Horizo​​ntal-Add-Packed-Double))。這些需要一個特定的寄存器佈局,需要有意設置,或者從之前的一系列指令出現。像gcc這樣的通用編譯器實際上使用這些指令(或其子集)的頻率如何?還是主要用於手工編碼的彙編程序?編譯器如何檢測使用SIMD指令的適當位置?

    4熱度

    1回答

    好的,在學校我們正在開發一個操作系統。我的項目是開發一個ATA硬盤驅動器。我認爲我的中斷服務程序工作得很好,當時我的教授指出我只發送中斷結束命令給slave PIC,而不是master。 我的問題是,無論何時將中斷結束髮送給主PIC,它都會導致三重故障,從而導致我的系統重新啓動。現在我已經解開/評論了一堆行,並且似乎只要將代碼結束髮送給主PIC的功能留在代碼中,就會出現三重故障。 現在我敢肯定如下

    5熱度

    2回答

    我期待在做裸CPU(86),32位保護模式和沒有OS上運行的硬件調試工具。由於時間限制,我不會在x86程序集中編寫所有的工具。我喜歡Ada語言(但對此並不熟悉),並認爲在此項目中使用Ada而非C可能很有趣。 用C可以使用內聯彙編或致電彙編語言編寫的子程序訪問BIOS的基本的東西,如鍵盤I/O或顯示在屏幕上的文字。阿達是否有類似的能力?如果是這樣,有沒有人知道任何資源或教程來調用匯編方法和鏈接?