徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
自由
比浏览器更快的访问!
 

X32 ABI

指数 X32 ABI

x32 ABI(x32应用程序二进制接口)是一种ABI及Linux内核接口之一。它允许程序得到x86-64的优点(较大的CPU寄存器号码,更佳的浮点性能,更快的地址无关代码共享库,通过寄存器传递函数参数,更快的系统调用指令),而使用32位指针,从而避免了对64位指针的开销。.

24 关系: AMD Athlon 64寄存器应用二进制接口地址无关代码系统调用Debian高德纳调用约定電腦記憶體虚拟地址GNU C 函式庫IA-32LinuxSolaris (操作系统)SPARCSPEC~警視廳公安部公安第五課 未詳事件特別對策係事件簿~SSEUNIX时间X86-64林纳斯·托瓦兹指標 (電腦科學)浮点数2038年问题64位元

AMD Athlon 64

Athlon 64是美國AMD公司的64位微處理器型號之一,它支援AMD64架構,用於針對個人客戶的64位處理器市場。早期AMD K8開發計劃中,K8代號為Hammer,並使用與IBM共同開發的SOI(絕緣上覆矽)技術。 Athlon 64分為64、FX及X2三個版本,當中以Athlon 64-FX的效能為最高,與Opteron相似。Athlon 64除支援AMD64外,還兼容16位和32位的x86平台。 此外,Athlon 64有一種名為Cool'n'Quiet的技術,當用户執行一些對處理器負荷較少的程式時,處理器的速度和電壓相應降低,從而達到省電的效果。 Athlon 64使用HyperTransport总线技术,从而提高了效能。 Socket754的Athlon 64大多为ClawHammer核心,封装为mPGA。内置单通道DDR400内存控制器。 Socket939的Athlon 64大多为Winchester核心,封装为mPGA。功耗较ClawHammer核心小。内置双通道DDR400内存控制器。 Socket940的FX-51为SledgeHammer核心;FX-53、FX-55为ClawHammer核心;FX-57則為San Diego核心。封装为CuPGA。内置双通道DDR400内存控制器。支持ECC校检。.

新!!: X32 ABI和AMD Athlon 64 · 查看更多 »

寄存器

寄存器(Register),是中央處理器內的其中組成部份。寄存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、數據和位址。在中央處理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序計數器。在中央處理器的算術及邏輯部件中,包含的寄存器有累加器。 在電腦架構裡,處理器中的暫存器是少量且速度快的電腦記憶體,藉由提供快速共同地存取數值來加速電腦程式的執行:典型地說就是在已知時間點所作的之計算中間的數值。 暫存器是記憶體階層中的最頂端,也是系統操作資料的最快速途徑。暫存器通常都是以他們可以保存的位元數量來估量,舉例來說,一個8位元暫存器或32位元暫存器。暫存器現在都以暫存器陣列的方式來實作,但是他們也可能使用單獨的正反器、高速的核心記憶體、薄膜記憶體以及在數種機器上的其他方式來實作出來。 這個名詞通常都用來意指由一個指令之輸出或輸入可以直接索引到的暫存器群組。更適當的是稱他們為「架構暫存器」。例如,x86指令集定義八個32位元暫存器的集合,但一個實作x86指令集的CPU可以包含比八個更多的暫存器。.

新!!: X32 ABI和寄存器 · 查看更多 »

应用二进制接口

在軟體開發中,應用程式機器二元碼界面(application binary interface,縮寫為 ABI)是指兩程式模組間的界面;通常其中一個程式模組會是函式庫或作業系統所提供的服務,而另一邊的模組則是使用者所執行的程式。一個ABI定義了機器碼如何存取資料結構與運算程序,此處所定義的界面相當低階並且相依於硬體。而類似概念的''API''則在原始碼定義這些,則較為高階,並不直接相依於硬體,通常會是人類可閱讀的程式碼。一個ABI常見的樣貌即是調用約定(calling convention):資料怎麼成為計算程序的輸入或者從中得到輸出;x86的調用約定(X86调用约定)即是一個ABI的例子。決定要不要採取既定的ABI(不論是否由官方提供),通常由編譯器,作業系統或函式庫的開發者來決定;然而,如果撰寫一個混和多個程式語言的應用程式,就必須直接處理ABI,採用外部函式呼叫(Foreign function interface)來達成此目的。.

新!!: X32 ABI和应用二进制接口 · 查看更多 »

地址无关代码

在计算机领域中,地址无关代码 (英文: position-independent code,缩写为PIC),又称地址无关可执行文件 (英文: position-independent executable,缩写为PIE) ,是指可在主存储器中任意位置正确地运行,而不受其绝对地址影响的一种机器码。PIC广泛使用于共享库,使得同一个库中的代码能够被加载到不同进程的地址空间中。PIC还用于缺少内存管理单元的计算机系统中, 使得操作系统能够在单一的地址空间中将不同的运行程序隔离开来。 地址无关代码能够在不做修改的情况下被复制到内存中的任意位置。这一点不同于重定位代码,因为重定位代码需要经过链接器或加载器的特殊处理才能确定合适的运行时内存地址。 地址无关代码需要在源代码级别遵循一套特定的语义,并且需要编译器的支持。那些引用了绝对内存地址的指令(比如绝对跳转指令)必须被替换为PC相对寻址指令。这些间接处理过程可能导致PIC的运行效率下降,但是目前大多数处理器对PIC都有很好的支持,使得这效率上的这一点点下降基本可以忽略。.

新!!: X32 ABI和地址无关代码 · 查看更多 »

系统调用

在電腦中,系統調用(system call),又稱為系統呼叫,指運行在使用者空間的程序向操作系統內核請求需要更高權限運行的服務。系統調用提供用戶程序與操作系統之間的接口。大多數系統交互式操作需求在內核態執行。如設備IO操作或者進程間通信。.

新!!: X32 ABI和系统调用 · 查看更多 »

Debian

Debian()是完全由自由軟件組成的类UNIX作業系統,其包含的多数软件使用GNU通用公共许可协议授權,并由Debian计划的参与者组成团队对其进行打包、开发与维护。 Debian計畫最初由伊恩·默多克于1993年发起,Debian 0.01版在1993年9月15日发布,而其第一个稳定版本则在1996年发布。 该计划的具体工作在互联网上协调完成,由Debian计划领导人带领一个志愿者团队开展工作,并以三份奠基性质的文档作为工作指导:、Debian宪章和Debian自由软件指导方针。操作系统版本定期进行更新,候选发布版本将在经历过一定时间的之后进行发布。 作为最早的Linux发行版之一,Debian在建立之初便被定位为在GNU计划的精神指导下进行公开开发并自由发布的项目。该决定吸引自由软件基金会的注意与支持,他们为该项目提供从1994年11月至1995年11月为期一年的赞助。赞助终止后,Debian计划创立非营利机构以提供--并令其持有Debian商标作为保护機構。Debian也接受世界多个非营利组织的资金支持。.

新!!: X32 ABI和Debian · 查看更多 »

高德纳

德納(Donald Ervin Knuth,音譯:唐納德·爾文·克努斯,),出生於美国密尔沃基,著名计算机科学家,斯坦福大学计算机系榮譽退休教授。高德纳教授為现代计算机科学的先驅人物,創造了演算法分析的領域,在數個理論計算機科學的分支做出基石一般的貢獻。在计算机科学及数学领域发表了多部具广泛影响的论文和著作。1974年圖靈獎得主。 高德纳最為人知的事蹟是,他是《计算机程序设计艺术》的作者。此書是計算機科學界最受高度敬重的參考書籍之一。此外還是排版軟件tex和字型設計系統Metafont的发明人。提出文学编程的概念,並創造了WEB與CWEB軟體,作為文學編程開發工具。.

新!!: X32 ABI和高德纳 · 查看更多 »

调用约定

在计算机科学中, 调用约定是一种定义子过程从调用处接受参数以及返回结果的方法的约定。不同调用约定的区别在于:.

新!!: X32 ABI和调用约定 · 查看更多 »

電腦記憶體

電腦記憶體(Computer memory)是一種利用半導體技術制成的儲存資料的電子裝置。其電子電路中的資料以二進位方式儲存,記憶體的每一個儲存單元稱做記憶元。 電腦記憶體可分为内部存储器(简称内存或主存)和外部存储器,其中内存是CPU能直接寻址的存储空间,由半导体器件制成。内存的特点是存取速率快。内存是电脑中的主要部件,它是相对于外存而言的。我们平常使用的程序,如Windows操作系统、打字软件、游戏软件等,一般都是安装在硬盘等外存上的,但仅此是不能使用其功能的,必须把它们调入内存中运行,才能真正使用其功能,我们平时输入一段文字,或玩一个游戏,其实都是在内存中进行的。就好比在一个书房里,存放书籍的书架和书柜相当于电脑的外存,而我们工作的办公桌就是内存。通常我们把要永久保存的、大量的数据存储在外存上,而把一些临时的或少量的数据和程序放在内存上,当然内存的好坏会直接影响电脑的运行速度。.

新!!: X32 ABI和電腦記憶體 · 查看更多 »

虚拟地址

虚拟地址(Virtual address space)在電腦的专用术语中是指标识一个虚拟(非物理地址)的实体地址。虚拟地址这个术语常用在虚拟内存和虚拟网络地址当中。.

新!!: X32 ABI和虚拟地址 · 查看更多 »

GNU C 函式庫

#重定向 GNU C函式庫.

新!!: X32 ABI和GNU C 函式庫 · 查看更多 »

IA-32

英特爾32位元架構(Intel Architecture, 32-bit,縮寫為IA-32),常被稱為i386、或x86,由英特爾公司於1985年推出的指令集架構。它是8086架構的延伸版本,可支援32位元運算,首次應用在Intel 80386晶片中。.

新!!: X32 ABI和IA-32 · 查看更多 »

Linux

Linux( )是一種自由和開放源碼的類UNIX作業系統。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。,在加上使用者空間的應用程式之後,成為Linux作業系統。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证(GPL),任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。大多數Linux系統還包括像提供GUI的X Window之類的程序。除了一部分專家之外,大多數人都是直接使用Linux發行版,而不是自己選擇每一樣組件或自行設置。 Linux嚴格來說是單指作業系統的内核,因作業系統中包含了許多用戶圖形介面和其他实用工具。如今Linux常用来指基于Linux的完整操作系统,內核則改以Linux内核稱之。由于这些支持用户空间的系统工具和库主要由理查德·斯托曼于1983年发起的GNU计划提供,自由软件基金会提议将其组合系统命名为GNU/Linux,但Linux不屬於GNU計劃,這個名稱並沒有得到社群的一致認同。 Linux最初是作为支持英特尔x86架构的个人电脑的一个自由操作系统。目前Linux已经被移植到更多的计算机硬件平台,远远超出其他任何操作系统。Linux可以运行在服务器和其他大型平台之上,如大型主机和超级计算机。世界上500个最快的超级计算机90%以上运行Linux发行版或变种,包括最快的前10名超级电脑运行的都是基于Linux内核的操作系统。Linux也广泛应用在嵌入式系统上,如手机(Mobile Phone)、平板电脑(Tablet)、路由器(Router)、电视(TV)和电子游戏机等。在移动设备上广泛使用的Android操作系统就是建立在Linux内核之上。 通常情况下,Linux被打包成供个人计算机和服务器使用的Linux发行版,一些流行的主流Linux发布版,包括Debian(及其衍生版本Ubuntu、Linux Mint)、Fedora(及其相关版本Red Hat Enterprise Linux、CentOS)和openSUSE等。Linux发行版包含Linux内核和支撑内核的实用程序和库,通常还带有大量可以满足各类需求的应用程序。个人计算机使用的Linux发行版通常包含X Window和一个相应的桌面环境,如GNOME或KDE。桌面Linux操作系统常用的应用程序,包括Firefox网页浏览器、LibreOffice办公软件、GIMP图像处理工具等。由于Linux是自由软件,任何人都可以创建一个符合自己需求的Linux发行版。.

新!!: X32 ABI和Linux · 查看更多 »

Solaris (操作系统)

#重定向 Solaris.

新!!: X32 ABI和Solaris (操作系统) · 查看更多 »

SPARC

SPARC,名稱源自於可擴充處理器架構(Scalable Processor ARChitecture)的縮寫,是一種RISC指令集架構,最早於1985年由昇陽電腦所設計,也是SPARC國際公司的注冊商標之一。這家公司於1989年成立,其目的是向外界推廣SPARC,以及為該架構進行符合性測試。此外該公司為了擴闊SPARC設計的生態系統,SPARC國際也把標準開放,並授權予多間生產商採用,包括德州儀器、Cypress半導體、富士通等。由於SPARC架構也對外完全開放,因此也出現了完全開放原始碼的LEON處理器,這款處理器以VHDL語言寫成,並採用LGPL授權。 SPARC架構原設計給工作站使用,及後應用在昇陽、富士通等製造的大型SMP伺服器上。而昇陽開發的Solaris作業系統也是為SPARC設計的系統之一,除Solaris外,NeXTSTEP、Linux、FreeBSD、OpenBSD及NetBSD系統也提供SPARC版本。 現時最新版本的SPARC為第8及第9版,在2005年12月,昇陽方面宣佈其UltraSPARC T1處理器將採用開放原始碼方式。2007年,昇陽電腦宣佈UltraSPARC T2處理器已經加入OpenSPARC開放原始碼計劃。.

新!!: X32 ABI和SPARC · 查看更多 »

SPEC~警視廳公安部公安第五課 未詳事件特別對策係事件簿~

《SPEC~警視廳公安部公安第五課 未詳事件特別對策係事件簿~》是日本TBS電視台自2010年10月8日至12月17日,每星期五22:00~22:54(日本時間)在「週五連續劇」時段播出的電視連續劇,由戶田惠梨香、加瀨亮主演。初回加長15分。.

新!!: X32 ABI和SPEC~警視廳公安部公安第五課 未詳事件特別對策係事件簿~ · 查看更多 »

SSE

SSE(Streaming SIMD Extensions)是英特尔在AMD的3D Now!发布一年之后,在其计算机芯片Pentium III中引入的指令集,是繼MMX的擴充指令集。SSE指令集提供了70條新指令。AMD后来在Athlon XP中加入了对这个新指令集的支持。.

新!!: X32 ABI和SSE · 查看更多 »

UNIX时间

UNIX時間,或稱POSIX時間是UNIX或類UNIX系統使用的時間表示方式:從協調世界時1970年1月1日0時0分0秒起至現在的總秒數,不考慮閏秒。 在多數Unix系統上Unix時間可以透過指令來檢查。.

新!!: X32 ABI和UNIX时间 · 查看更多 »

X86-64

x86-64( 又稱x64,即英文詞64-bit extended,64位元拓展 的簡寫)是x86架構的64位拓展,向后相容於16位及32位的x86架構。x64於1999年由AMD設計,AMD首次公開64位元集以擴充給x86,稱為「AMD64」。其後也為英特爾所採用,現時英特爾稱之為「Intel 64」,在之前曾使用過「Clackamas Technology」 (CT)、「IA-32e」及「EM64T」。 蘋果公司和RPM套件管理員以「x86-64」或「x86_64」稱呼此64位架構。甲骨文公司及Microsoft稱之為「x64」。BSD家族及其他Linux發行版則使用「x64-64」,32位元版本則稱為「i386」(或 i486/586/686),Arch Linux用x86_64稱呼此64位元架構。.

新!!: X32 ABI和X86-64 · 查看更多 »

林纳斯·托瓦兹

林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds,,),生於芬兰赫尔辛基市,擁有美國國籍,Linux内核的最早作者,隨後發起了這個开源项目,擔任Linux內核的首要架構師與專案協調者,是当今世界最著名的电脑程序员、黑客之一。他还发起了Git这个开源项目,并为主要的开发者。.

新!!: X32 ABI和林纳斯·托瓦兹 · 查看更多 »

指標 (電腦科學)

在计算机科学中,指標(Pointer),是程式語言中的一类数据类型及其物件或變數,用來表示或儲存一個記憶體位址,這個位址的值直接指向(points to)存在该地址的对象的值。 指標參考(reference)了記憶體中一個位址。通過被稱為指標反參考(dereferencing)的動作,可以取出在那個位址中儲存的值。保存在指標指向的位址中的值,可能代表另一個變數、結構、物件或函數。但是從指標值是無法得知它所參照的記憶體中儲存了什麼資料型別的資訊。可以打个比方,假設將電腦記憶體當成一本書,一張內容記錄了某個頁碼加上行號的便利貼,可以被當成是一個指向特定頁面的指標;根據便利貼上面的頁碼與行號,翻到那個頁面,把那個頁面的那一行文字讀出來,就相當於是對這個指標進行反參考的動作。可做一类比以增强对指针的理解:整形(integral)也是一类数据类型及其物件或變數,可定义具体的数据类型如短整形(short)、长整形(long)、超长整形(long long)、无符号整形(unsigned)等等;也可以用于称呼整形值、整形对象、整形变量等。又如,一个浮点指针(float *),可称作指向了一个浮点类型的对象。 在高級語言中,指標有效的取代了在低階語言(如匯編語言與機器碼)直接使用内存地址。但它可能只適用於合法位址之中。因為指標更貼近硬體,編譯器能夠很容易的將指標翻譯為機械碼,這使指標操作時的負擔較少,因此能夠提高程式的運作速度。 使用指標能夠簡化許多資料結構的實作,例如在遍歷字串,查取表格,控制表格及樹狀結構上。對指標進行複製,之後再解參照指標以取出資料,無論在時間或空間上,都比直接複製及存取資料本身來的經濟快速。指標表示法較為直覺,使程式的表達更為簡潔,同時也能夠提供動態機制來建立新的節點。 在程序編程(procedural programming)中,指標也被用來保存系統呼叫流程,以及動態連結資料庫(DLL)的進入點位址。在物件導向編程中,使用函數指標(Function pointer)來綁定方法(method),常見於虛擬方法表(Virtual method table)中。 但是指標本身也存在一些可被滥用之处,在存取某個資料結構時,可能會超出可用範圍,使軟體或作業系統出現異常,嚴重時可造成當機。利用指標去存取或修改非合法可取用的資料,也可能造成安全性問題。为此,C与C++语言规定指针类型为强类型,即指针值不仅是一个内存地址,同时它的数据类型说明了存在这个地址可以安全访问的地址的范围,例如,float*可以访问4个字节的内存空间,double*可以访问8个字节的内存空间。 許多程式語言中都支援某種形式的指標,最著名的是C語言,但是有些程式語言對指標的運用採取比較嚴格的限制。因為指標的機制比較簡單,其功能可以被集中重新實作成更抽象化的參照(reference)資料形別,如Java一般避免用指针,改為使用參照。.

新!!: X32 ABI和指標 (電腦科學) · 查看更多 »

浮点数

在計算機科學中,浮點(floating point,縮寫為FP)是一種對於實數的近似值數值表現法,由一个有效數字(即尾数)加上冪數來表示,通常是乘以某个基数的整数次指數得到。以這種表示法表示的數值,稱為浮点數(floating-point number)。利用浮點進行運算,稱為浮点计算,這種运算通常伴随着因为无法精确表示而进行的近似或舍入。 計算機使用浮點數運算的主因,在於電腦使用二進位制的運算。例如:4÷2.

新!!: X32 ABI和浮点数 · 查看更多 »

2038年问题

在计算机应用上,2038年问题可能会导致某些软件在2038年1月19日3时14分07秒之后无法正常工作。所有使用POSIX时间表示时间的程序都将受其影响,因为它们以自1970年1月1日经过的秒数(忽略闰秒)来表示时间。这种时间表示法在类Unix(Unix-like)操作系统上是一个标准,并会影响以其C编程语言开发给其他大部份操作系统使用的软件。在大部份的32位操作系统上,此「time_t」数据模式使用一个有正負號的32位元整數(signed int32)存储计算的秒数。依照此「time_t」标准,在此格式能被表示的最后时间是2038年1月19日03:14:07,星期二(UTC)。超过此一瞬间,时间将会“绕回”(wrap around)且在内部被表示为一个负数,并造成程序无法工作,因为它们无法将此时间识别为2038年,而可能会依個別實作而跳回1970年或1901年。因此可能产生错误的计算及动作。 有少數的情況下,在制定規格時,特別規定以無正負號的32位元整數(unsigned int32)儲存 POSIX 时间,因此錯誤會被延後到 2106 年。例如比特幣區塊鏈中的區塊時間戳記,就是以這種方法儲存。 目前并没有针对现有的CPU/操作系统搭配的简单解决方案。直接将POSIX时间更改为64位模式将会破坏对于软件、数据存储以及所有与二进制表示时间相关的部份的二进位兼容性。更改成无符号的32位整数则会影响许多与两时间之差相关的程序。不过,那时使用32位系统的计算机可能会很少。 大部份64位操作系统已经把time_t這個系統變數改為64位寬。不過,其他現有架構的改動仍在進行中,不過預期「應該可以在2038年前完成」。然而,直到2006年,仍然有数以亿計的32位系统在運行中,特別是许多嵌入式系统。相对于一般电脑科技18至24个月的革命性更新,嵌入式系统可能直至使用寿命终结都不会改变。32位time_t的使用亦被编码于文件格式,例如众所周知的ZIP压缩格式。其能存在的时间远比受影响的机器长。 新的64位运算器可以记录至约2900亿年后的292,277,026,596年12月4日15:30:08,星期日(UTC)。.

新!!: X32 ABI和2038年问题 · 查看更多 »

64位元

64位元CPU是指CPU内部的通用寄存器的宽度为64位元,支持整数的64--宽度的算术与逻辑运算。早在1960年代,64位架构便已存在於当时的超級電腦,且早在1990年代,就有以RISC為基礎的工作站和伺服器。2003年才以x86-64和64位元PowerPC處理器架構的形式引入到(在此之前是32位元)個人電腦領域的主流。 一個CPU,联系外部的資料匯流排与位址匯流排,可能有不同的宽度;術語「64位元」也常用於描述這些匯流排的大小。例如,目前有許多機器有着使用64位元匯流排的32位元處理器(如最初的Pentium和之後的CPU,但Intel的32位CPU的地址总线宽度最大为36位),因此有時會被稱作「64位元」。同樣的,某些16位元處理器(如MC68000)指的是16/32位元處理器具有16位元的匯流排,不過內部也有一些32位元的性能。這一術語也可能指電腦指令集的指令長度,或其它的資料項(如常見的64位元雙精度浮點數)。去掉進一步的條件,「64位元」電腦架構一般具有64位元寬的整數型暫存器,它可支援(內部和外部兩者)64位元「區塊」(chunk)的整數型資料。.

新!!: X32 ABI和64位元 · 查看更多 »

传出传入
嘿!我们在Facebook上吧! »