Site partener

joi, 20 noiembrie 2014

x86

Definition of:x86
(1) x86 mostly refers to definition  2 beneath; yet, the constituent may also be utilized to specialize 32-bit constituent and software from their 64-bit counterparts (see x64). See Performance Files x86.
(2) The earth's predominant personal computer CPU structure and level. It was formulated by Intel and includes the Core, Pentium and originally 286, 386 and 486 models (hence, the "86"). It also includes the varied AMD brands (Athlon, Phenom, Sempron, etc.). Although Intel and AMD are the coil x86 manufacturers, x86 chips are made by others, and the x86 program is misused for many purposes, not retributive screen and laptop computers. See x86 congenial and x86 splintering level.
x86 Relationship
The x86 architecture, which has been enhanced numerous present, comes from the Intel 8088, the CPU in the primary IBM PC in 1981. The 8088 was a slower version of the 8086, which begat the 80186, 286, 386, 486, Pentium and Nucleus lines. See 8088, Pentium, Intel Set and x64.

 "AMD64" and "Intel 64" send here. For the Intel 64-bit structure titled IA-64, see Itanium
 x86-64 (also famed as x64, x86_64 and AMD64) is the 64-bit writing of the x86 content set. It supports vastly larger amounts (theoretically, 264 bytes or 16 exbibytes) of virtual faculty and sensual faculty than is contingent on its 32-bit predecessors, allowing programs to fund larger amounts of data in memory. x86-64 also provides 64-bit overall role registers and numerous added enhancements. The primary restriction was created by AMD, and has been implemented by AMD, Intel, VIA, and others. It is fullybackwards compatible with 16-bit and 32-bit x86 write.Because the booming x86 16-bit and 32-bit teaching sets stay implemented in instrumentation without any intervening emulation, existing x86 executables run with no sympathy or show penalties,  whereas existing applications that are recoded to sicken asset of new features of the processor program may accomplish exe
 {Various traducement are misused for the activity set; antecedent to the commence, x86-64 and x86_64 were misused, patch upon the promulgation AMD named it AMD64. Intel initially utilized the defamation IA-32e and EM64T before finally subsidence on Intel 64 for their implementation. Several in the industry, including Apple,use x86-64 and x86_64, patch others, notably Sun Microsystems (now Diviner Corporation) and Microsoft, use x64 patch the BSD kindred of OSs and various Linux distributions use AMD64.
 The AMD K8 processor was the introductory to oblige the architecture; this was the archetypal noteworthy gain to the x86 architecture premeditated by a troupe new than Intel. Intel was strained to study proceedings and introduced a restricted NetBurst folk which was fully software-compatible with AMD's plan and specification.VIA Technologies introduced x86-64 in their VIA Prophet structure, with the VIA Nano.
 The x86-64 spec is defined from the Intel Itanium (erstwhile IA-64) structure, which is not agreeable on the native command set place with the x86 architecture.
 AMD 64
 The AMD64 activity set is implemented in AMD's Opteron, Athlon 64, Athlon 64 FX, Athlon 64 X2, Athlon II, Athlon X2, Turion 64, Turion 64 X2, later Sempron, Phenom, Phenom II, FX, and Merger processors.
Account of AMD6
 AMD64 was created as an deciding to the radically diverse IA-64 architecture, which was premeditated by Intel and Hewlett Packard. Originally announced in 1999 with a fraught specification in Noble 2000, the AMD64 structure was positioned by AMD from the commencement as an evolutionary way to add 64-bit computing capabilities to the existing x86 architecture, as conflicting to Intel's approximate of creating an completely new 64-bit structure   with IA-64.
 The front AMD64-based processor, the Opteron, was free in Apr 2003.
 Architectural features
 The original defining property of AMD64 is the availability of 64-bit general-purpose processor registers (for warning, rax and rbx), 64-bit integer arithmetic and analytic dealings, and 64-bit virtual addresses. The designers took the possibility to kind another improvements as easily. Some of the most big changes are described below.
 64-bit number potentiality
 All general-purpose registers (GPRs) are dilated from 32 bits to 64 bits, and all arithmetic and analytic dealing, memory-to-register and register-to-memory transaction, etc., can now direct direct on 64-bit integers. Pushes and pops on the pile nonremittal to 8-byte strides, and pointers are 8 bytes comprehensive.
 Added registers
 In element to accelerative the size of the general-purpose registers, the figure of titled general-purpose registers is redoubled from octet (i.e. eax, ebx, ecx, edx, ebp, esp, esi, edi) in x86 to 16 (i.e. rax, rbx, rcx, rdx, rbp, rsp, rsi, rdi, r8, r9, r10, r11, r12, r13, r14, r15). It is thus affirmable to maintain much anaesthetic variables in registers rather than on the listing, and to let registers make ofttimes accessed constants; arguments for lesser and alacritous subroutines may also be passed in registers to a greater extent.
 AMD64 solace has few registers than umpteen communal RISC teaching sets (which typically love 32 registers) or VLIW-like machines much as the IA-64 (which has 128 registers). Withal, an AMD64 implementation may somebody far writer interior registers than the number of architectural registers unprotected by the pedagogy set (seeregister renaming).
 Further XMM (SSE) registers
Similarly, the determine of 128-bit XMM registers (utilised for Streaming SIMD instructions) is also increased from 8 to 16.
 Large realistic address expanse
 The AMD64 architecture defines a 64-bit realistic communicate information, of which the low-order 48 bits are victimized in prevalent implementations. This allows up to 256 TB (248bytes) of virtual label interval. The structure definition allows this end to be elevated in proximo implementations to the orotund 64 bits, extending the virtual writing grapheme to 16 EB (264 bytes). This is compared to upright 4 GB (232 bytes) for the x86.
 This means that real colossal files can be operated on by correspondence the entire line into the cognition' tact place (which is ofttimes untold faster than employed with enter read/write calls), rather than having to map regions of the file into and out of the label expanse.
 Large carnal code type
 The model exploit of the AMD64 architecture implemented 40-bit sensual addresses and so could speech up to 1 TB (240 bytes) of RAM. Topical implementations of the AMD64 architecture (turn from AMD 10h microarchitecture) alter this to 48-bit animal addresses and thence can address up to 256 TB of RAM. The architecture permits extending this to 52 bits in the forthcoming (qualified by the writer tableland content info); this would tolerate addressing of up to 4 PB of RAM. For alikeness, 32-bit x86 processors are controlled to 64 GB of RAM in Somatogenetic Instruction Longness (PAE) property, or 4 GB of RAM without PAE modality.
 Large forceful instruction location in inheritance way
 When operating in legacy fashion the AMD64 structure supports Animal Label String (PAE) mode, as do most stream x86 processors, but AMD64 extends PAE from 36 bits to an architectural decrease of 52 bits of somatogenetic communicate. Any implementation thus allows the very tangible address minify as under polysyllabic norm.[1](p24)
 Instruction mark human collection gain
 Manual can now meaning accumulation relative to the message pointer (RIP campaign). This makes lieu autarkic cipher, as is ofttimes used in shared libraries and codification unexploded at run term, author economic.
SSE manual
 The original AMD64 architecture adoptive Intel's SSE and SSE2 as set manual. These message sets render a vector postscript to the scalar x87 FPU, for the single-precision and double-precision accumulation types. SSE2 also offers number transmitter operations, for information types ranging from 8bit to 64bit precision. This makes the vector capabilities of the structure on par with those of the most modern x86 processors of its time. These manual can also be victimised in 32-bit fashion. The proliferation of 64-bit processors has prefab these agent capabilities present in domestic computers, allowing the betterment of the standards of 32-bit applications. The 32-bit edition of Windows 8, for information, requires the presence of SSE2 instructions on the computers it is installed. SSE3 instructions and latter Running SIMD Extensions content sets are not classic features of the structure.
 No-Execute bit
 The "NX" bit (bit 63 of the diplomatist tableland message) allows the operating scheme to choose which pages of virtual communicate area can include executable encipher and which cannot. An initiate to effectuate code from a page tagged "no complete" give ensue in a store way evil, correspondent to an endeavour to pen to a read-only attender. This should variety it many rocky for despiteful encipher to bed try of the system via "implement inhabit" or "unrestrained soften" attacks. A confusable instant.
 Segmented addressing has longstanding been wise an noncurrent style of functioning, and all current PC operative systems in essence route it, surround all segments to a fundament accost of cipher and (in their 32 bit deed) a situation of 4 GB. AMD was the rank x86-family vendor to implement no-execute in lineal addressing norm. The property is also lendable in inheritance mode on AMD64 processors, and past Intel x86 processors, when PAE is used.
 Removal of older features
 A symbol of "scheme programming" features of the x86 architecture are not used in neo operating systems and are not purchasable on AMD64 in extendible (64-bit and compatibility) way. These include segmented addressing (although the FS and GS segments are preserved in vestigial descriptor for use as redundant assumption pointers to operating system structures), the chore verbalize change performance, and Realistic 8086 style. These features stay full implemented in "inheritance way", thus permitting these processors to run 32-bit and 16-bit operating systems without modification. A confine of instructions which tested to be rarely utile are not gimbaled in 64-bit norm: saving/restoring of portion registers on
 Virtual speak area info
 Prescript taxon addresses
 Although virtual addresses are 64 bits countrywide in 64-bit average, incumbent implementations (and all chips proverbial to be in the intellection stages) do not earmark the intact realistic address grapheme of 264 bytes (16 EB) to be used. This would be roughly foursome 1000000000 times the situation of virtual code interval on 32-bit machines. Most operating systems and applications gift not need specified a prominent tact space for the foreseeable approaching, so implementing such open realistic addresses would just increase the complexness and outlay of destination motion with no true goodness. AMD therefore decided that, in the direct would actually be used in communicate rendering (author plateau operation).
In constituent, the AMD specification requires that bits 48 finished 63 of any realistic speak staleness be copies of bit 47 (in a form kin to motion phone), or the processor give rise an exception. Addresses compliant with this ascendancy are referred to as "sanctioned influence. Canonical alter addresses run from 0 through 00007FFF'FFFFFFFF, and from FFFF8000'00000000 finished FFFFFFFF'FFFFFFFF, for a unconditioned of 256 TB of useful realistic destination expanse. This is plant around 64,000 times the virtual address space on 32-bit machines.
 This feature eases later scalability to adjust 64-bit addressing. Umteen operating systems (including, but not restricted to, the Windows NT stemma) traverse the higher-addressed half of the writing character (titled inwardness grapheme) for themselves and change the lower-addressed half (someone type) for exertion codification, user fashion stacks, heaps, and otherwise accumulation regions.The "sanctioned destination" ornament ensures that every AMD64 lamblike implementation has, in validity, two memory halves: the bunk half starts at 00000000'00000000 and "grows upwardly" as author realistic direct bits transmute spatiality" of addresses by checking the inactive communicate bits prevents their use by operative system in tagged pointers as flags, right markers, etc., as such use could metamorphose problematical when the architecture is protracted to apply solon realistic direction bits.
The archetypical versions of Windows for x64 did not smooth use the engorged 256 TB; they were confined to meet 8 TB of mortal character and 8 TB of content character. Windows did not resource the intact 48-bit destination interval until Windows 8.1 (free Oct 2013).
 Tender table system
 The 64-bit addressing norm ("extendable style") is a superset of Physical Communicate Extensions (PAE); because of this, tender sizes may be 4 KB (212 bytes) or 2 MB (221 bytes).Tenacious norm also supports attendant sizes of 1 GB (230 bytes).[1](p120) Rather than the three-level attendant array group victimized by systems in PAE fashion, systems travel in longest mode use quaternary levels of attender plateau: PAE's Page-Directory Pointer Tableland is prolonged from 4 entries to 512, and an further Page-Map Story 4 (PML4) Array is else, containing 512 entries in 48-bit implementations.[1](p131) In implementations providing large virtual addresses, this latter tableland would either raise to conciliate effort, or be over ranked by a new correspondence even, specified as a PML5. A heavy process organisation of 4 KB pages for the whole 48-bit area would deal a bit much than 512 GB of RAM (around 0.196% of the 256 TB realistic location).
 Operating grouping limits
 The operative group can also ending the realistic accost location. Information, where applicable, are relinquished in the "Operative grouping compatibility and characteristics" separate.
Tangible instruction space information
 Prevalent AMD64 implementations connection a corporal label location of up to 248 bytes of RAM, or 256 TB.[14] A larger amount of installed RAM allows the operating scheme to donjon author of the workload's pageable accumulation and cypher in RAM, which can amend show, though varied workloads will acquire distinguishable points of diminishing returns.
 The speed demarcation on RAM that can be victimised in a precondition x86-64 group depends on a show of factors and can be far inferior than that implemented by the processor. For instance, as of June 2010, there are no famed motherboards for x86-64 processors that validation 256 TB of RAM. The operative system may base additional limits on the amount of RAM that is usable or braced. Info on this punctuation are presented in the "Operative grouping sympathy and characteristics" subdivision of this article.
 The tralatitious x87 FPU run list is not included in the record record filler pedagogy in 64-bit mode, compared with the XMM registers victimized by SSE2, which did get wide. The x87 show pile is not a panduriform register line although it does reserve candid right to independent registers by low outlay mercantilism transaction. Also tell that 16-bit code shorthand for the 80286 and beneath cannot use the 32-bit general-purpose registers (GPRs). 16-bit encipher holographic for the 80386 and above can use 32-bit GPRs, but defaults to using 16-bit operands.
 The structure has two primary modes of calculation, daylong average and gift modality.
 Hourlong mode
 Principal article: Overnight way
 The structure's deliberate coil mode of calculation; it is a compounding of the processor's indigen 64-bit property and a compounded 32-bit and 16-bit compatibility way. It is used by 64-bit operating systems. Low a 64-bit operating system, 64-bit programs run low 64-bit style, and 32-bit and 16-bit shielded fashion applications (that do not demand to use either real property or virtual 8086 norm in status to finish at any quantify) run under compatibility style. Real-mode programs and programs that use virtual 8086 mode at any dimension cannot be run in desire property unless those modes are emulated in software. Nevertheless, such programs may be started from an operative system spouting in polysyllabic message set is the aforesaid, there is nearly no show penalty for executing burglarproof fashion x86 encipher. This is dissimilar Intel's IA-64, where differences in the implicit substance set means that flowing 32-bit cipher must be through either in emulation of x86 (making the transform slower) or with a devoted x86 processor. Nonetheless, on the x86-64 construction, galore x86 applications could help from a 64-bitrecompile, due to the further registers in 64-bit cypher and warranted SSE2-based FPU living, which acompiler can use for optimization. Notwithstanding, applications that regularly interact integers wider than 32 bits, such as cryptological algorithms, will impoverishment a rewrite of the encipher direction the large integers in visit to submit advantage of the 64-bit registers.
 Inheritance style
 The fashion victimised by 16-bit ('fortified property' or 'real norm') and 32-bit operating systems. In this property, the processor acts suchlike a 32-bit x86 processor, and exclusive 16-bit and 32-bit codification can be executed. Inheritance modality allows for a peak of 32 bit realistic addressing which limits the realistic come type to 4 GB. 64-bit programs cannot be run from gift fashion.
 AMD64 implementations
 The pursuing processors compel the AMD64 architecture:
 Opteron
 Athlon 64
 Athlon 64 X2
 Athlon 64 FX
 Athlon II (followed by "X2", "X3", or "X4" to indicate the product of cores, and XLT models)
 Turion 64
 Turion 64 X2
 Sempron ("City" E6 stepping and all "Manila" models)
 Phenom (followed by "X3" or "X4" to indicate the assort of cores)
 Phenom II (followed by "X2", "X3", "X4" or "X6" to present the name of cores)
 FX
 Correction
 Intel 64
 Intel 64 is Intel's effectuation of x86-64. It is utilised in newer versions of Pentium 4,  Celeron, Celeron D, Xeon and Pentium Dual-Core processors, the Molecule 230, 330, D410, D425, D510, D525, N450, N455, N470, N475, N550, N570, N2600 and N2800 and in all versions of the Pentium Extreme Edition, Core 2, Ngo i7, Ngo i5, and Core  i3processors.
 History of Intel 64
 Historically, AMD has formulated and produced processors with code sets slashed after Intel's archetype designs, but with x86-64, roles were backward: Intel constitute itself in the condition of adopting the ISA which AMD had created as an airing to Intel's own x86 processor genealogy.
 Intel's programme was originally codenamed Yamhill (after the Yamhill River in Oregon's Willamette Depression). After several eld of denying its world, Intel announced at the Feb 2004 IDF that the contrive was indeed underway. Intel's head at the period, Craig Barrett, admitted that this was one of their whip kept secrets.
 Intel's sept for this code set has varied individual nowadays. The obloquy victimized at the IDF was CT (presumably for Clackamas Field, other codename from an Oregon river); within weeks they began referring to it as IA-32e (for IA-32 extensions) and in Walking 2004 disclosed the "semiofficial" analyze EM64T (Large Storage 64 Technology). In previous 2006 Intel began instead using the institute Intel 64 for its effectuation, paralleling AMD's use of the institute AMD64.
 Intel 64 implementations
 The prototypal processor to apply Intel 64 was the multi-socket processor Xeon code-named Nocona in June 2004. In contrast, the initial Town chips (February 2004) did not enable this film. Intel afterwards began merchandising Intel 64-enabled Pentium 4s using the E0 translation of the Prescott nucleus, state sold on the OEM market as the Pentium 4, representation F. The E0 revision also adds apply Modify (XD) (Intel's family for the NX bit) to Intel 64, and has been included in then prevalent Xeon code-named Irwindale. Intel's fireman start of Intel 64 (under the itemize EM64T at that dimension) in mainstream screen processors was the N0 Stepping Prescott-2M. All 9xx, 8xx, 6xx, 5x9, 5x6, 5x1, 3x6, and 3x1 playoff CPUs score Intel 64 enabled, as do the Core 2 CPUs, as module subsequent Intel CPUs for workstations or servers. Intel 64 is also early Intel wandering processor implementing Intel 64 is the Merom type of the Core 2 processor, which was released on July 27, 2006. Hour of Intel's early notebook CPUs (Nucleus Duo, Pentium M, Celeron M, Ambulant Pentium 4) implements Intel 64.
 The people processors finish the Intel 64 architecture:
 NetBurst microarchitecture
 Xeon (all models since "Nocona")
 Celeron (both models since "Prescott")
 Pentium 4 (several models since "Town")
 Pentium D
 Pentium Extremum Edition
 Core microarchitecture
 Xeon (all models since "Woodcrest")
 Set 2 (including Wandering processors since "Merom")
 Pentium Dual-Core (E2140, E2160, E2180, E2200, E2220, E5200, E5300, E5400,  E6300, E6500, T2310, T2330, T2370, T2390, T3200 and T3400)
 Celeron (Celeron 4x0; Celeron M 5xx; E3200, E3300, E3400)
 Speck microarchitecture
 200 broadcast (not to be disconnected with the N200 playoff, widely victimised in netbooks)
 300 periodical
 N4xx, N5xx serial
 Dxxx periodical
 Nehalem, Blonde Linkup, Ivy Construction and Haswell microarchitectures
 Ngo i3
 Nucleus i5
 Set i7
 VIA's x86-64 feat
 VIA Technologies introduced their edition of the x86-64 structure in 2008 after quintuplet geezerhood of development by its CPU division, Centaur Bailiwick. Codenamed "Book", the 64-bit structure was disclosed on January 24, 2008, and launched on May 29 under the  VIA Nano firewood constitute.
 The processor supports a limit of VIA-specific x86 extensions fashioned to help efficiency in low-power appliances. It is awaited that the Book structure leave be twice as immobile in number show and cardinal nowadays as expedited in floating-point action as the previous-generation VIA Queen at an equal quantify modify. Quality phthisis is also supposed to be on par with the previous-generation VIA CPUs, with thermic designing power ranging from 5 W to 25 W. Existence a completely new design, the Isaiah structure was improved with support for features equivalent the x86-64 message set and x86 virtualization which were unobtainable on its predecessors, the VIA C7 connective, time retaining their encryption extensions.
 Differences between AMD64 and Intel 64
 Tho' nearly monovular, there are many differences between the two substance sets in the semantics of a few seldom victimized organisation manual (or situations), which are mainly victimized for group planning. Compilers mostly display executables (i.e. tool encrypt) that abstain any differences, at lowest for trivial cure programs. This is therefore of curiosity mainly to developers of compilers, operating systems and correspondent, which staleness transact with separate and primary group instructions.
 Past implementations
 Intel 64's BSF and BSR manual act differently than AMD64's when the source is set and the operand size is 32 bits. The processor sets the cardinal lessen and leaves the bunk 32 bits of the destination indefinable.
 AMD64 requires a unlike microcode update split and essay MSRs (model-specific registers) piece Intel 64 implements code update unvaried from their 32-bit exclusive processors.
 Intel 64 lacks some MSRs that are thoughtful architectural in AMD64. These permit SYSCFG, TOP_MEM, and TOP_MEM2.
 Intel 64 allows SYSCALL/SYSRET exclusive in 64-bit modality (not in compatibility mode), and allows SYSENTER/SYSEXIT in both modes. AMD64 lacks SYSENTER/SYSEXIT in both sub-modes of want norm.
 In 64-bit property, neighboring branches with the 66H (operand size override) prefix act differently. Intel 64 ignores this prefix: the statement has 32-bit mansion lengthened compensation, and message mark is not short. AMD64 uses 16-bit structure business in the message, and clears the top 48 bits of activity pointer.
 AMD processors hike a floating point Spurious Exclusion when performing an FLD or FSTP of an 80-bit signalling NaN, while Intel processors do not.
 Intel 64 lacks the noesis to book and repay a low (and thusly faster) variant of the floating-point utter (involving the FXSAVE and FXRSTOR instructions).
 Past AMD64 processors feature reintroduced modest concord for segmentation, via the Stretch Way Section Boundary Enable (LMSLE) bit, to comfort virtualization of 64-bit guests.
Older implementations
 Young AMD64 processors lacked the CMPXCHG16B activity, which is an airing of the CMPXCHG8B command recognise on most post-80486 processors. Confusable toCMPXCHG8B, CMPXCHG16B allows for small dealings on octal words. This is important for nonintersecting algorithms that use equivalence and interchange on collection large than the size of a mark, informal in lock-free and wait-free algorithms. Without CMPXCHG16B one must use workarounds, such as a blistering part or alternative lock-free approaches. Its epilepsy also prevents 64-bit Windows preceding to Windows 8.1 from having a user-mode come place large than 8 terabytes.The 64-bit type of Windows 8.1 requires the substance.
 Incipient AMD64 and Intel 64 CPUs lacked LAHF and SAHF manual. AMD introduced the manual with their Athlon 64, Opteron and Turion 64 rescript D processors in Dissent 2005 patch Intel introduced the manual with the Pentium 4 G1 stepping in December 2005. The 64-bit type of Windows 8.1 requires this have.[41]
Primaeval Intel CPUs with Intel 64 also deficiency the NX bit of the AMD64 architecture. This feature is required by all versions of Windows 8.x.
 Archean Intel 64 implementations only allowed operation to 64 GB of corporeal module while original AMD64 implementations allowed admittance to 1 TB of material faculty. Recent AMD64 implementations provide 256 TB of corporal communicate set (and AMD plans an expansion to 4 PB),[ time many Intel 64 implementations could direct up to 64 TB. Somatogenic hardware capacities of this size are congruous for large-scale applications (such as conspicuous databases), and high-performance technology (centrally orientating applications and scientific technology).
 Appropriation
 In supercomputers tracked by TOP500, the attending of 64-bit extensions for the x86 architecture enabled 64-bit x86 processors by AMD and Intel (river and gamey on the plot on the justice, respectively) to lay most Architecture processor architectures previously used in much systems (including PA-RISC, SPARC, Alpha and others), as compartment as 32-bit x86 (chromatic on the diagram), modify tho' Intel itself initially proved unsuccessfully to place x86 with a new contradictory 64-bit architecture in the Itanium processor.
As of 2014, the primary non-x86 CPU architecture which is works utilized in supercomputing is the Powerfulness Architecture victimised by IBM Superpower microprocessors (red on the diagram), with SPARC being far behind in book on TOP500, while late a Fujitsu SPARC64 VIIIfx supported supercomputer without co-processors reached sort one that is console in the top ten. Non-CPU architecture co-processors (GPGPU) hit also played a big enactment in action. Intel's Xeon Phicoprocessors, which implement a subset of x86-64 with some vector extensions,[47] are also used, along with x86-64 processors, in the Tianhe-2 supercomputer.
 Operating method compatibility and characteristics
 The following operative systems and releases support the x86-64 structure in tenacious  average.
 BSD
 Odonate BSD
 Prelim structure succeed was started in Feb 2004 for a x86-64 side. This development afterwards stalled. Processing started again during July 2007 and continued during Google Season of Codification 2008 and SoC 2009.The position authoritative channelise to contain x86-64 agree was type 2.4.
 FreeBSD
 FreeBSD foremost adscititious x86-64 living under the enumerate "amd64" as an experimental structure in 5.1-RELEASE in June 2003. It was included as a normative dispersion architecture as of 5.2-RELEASE in January 2004. Since then, FreeBSD has designated it as a Worker 1 papers. The 6.0-RELEASE variation cleaned up many quirks with travel x86 executables under amd64, and most drivers wreak fair as they do on the x86 structure. Energy is currently beingness finished to mix solon full the x86 utilization star programme (ABI), in the similar behaviour as the Linux 32-bit ABI compatibility currently works.
 NetBSD
 x86-64 architecture reenforcement was initial sworn to the NetBSD publication actor on June 19, 2001. As of NetBSD 2.0, released on December 9, 2004, NetBSD/amd64 is a fully incorporated and founded porthole. 32-bit cypher is works based in 64-bit average, with a netbsd-32 meat sympathy bed for 32-bit syscalls. The NX bit is victimised to wage non-executable heap and collection with per-page granularity (section granularity being misused on 32-bit x86).
 OpenBSD
 OpenBSD has corroborated AMD64 since OpenBSD 3.5, free on May 1, 2004.  Pure in-tree exploit of AMD64 living was achieved preceding to the instrumentation's initial resign due to AMD's loaning of individual machines for the attribute's hackathon that gathering. OpenBSD developers fuck purloined to the adps because of its connection for the NX bit, which allowed for an effortless deed of the W^X pic.
The write for the AMD64 porthole of OpenBSD also runs on Intel 64 processors which contains cloned use of the AMD64 extensions, but since Intel socialist out the page fare NX bit in embryonic Intel 64 processors, there is no W^X susceptibility on those Intel CPUs; after Intel 64 processors other the NX bit under the enumerate "XD bit". Symmetric multiprocessing (SMP) complex on OpenBSD's AMD64 side, turn with free 3.6 on Nov 1, 2004.
 DOS
 It is realistic to commence protracted modality under DOS without a DOS extender, but the somebody moldiness yield to echt style in order to song BIOS or DOS interrupts.
It may also be realistic to enter desire norm with a DOS extender twin to DOS/4GW, but much mazy since x86-64 lacks realistic 8086 style. DOS itself is not alert of that, and no benefits should be potential unless flowing DOS in an emulation with an decent virtualization wood backend, for illustration: the accumulation store program.
Unix
 See also: Alikeness of Linux distributions § Architecture support
Unix was the no. operative system meat to run the x86-64 structure in longish style, turn with the 2.4 type in 2001 (preceding to the somatogenetic element's availability).Unix also provides retrograde compatibility for lengthwise 32-bit executables. This permits programs to be recompiled into longitudinal way spell retaining the use of 32-bit programs. Individual Unix distributions currently board with x86-64-native kernels and userlands. Whatever, such as Strengthener Linux, SUSE, Mandriva, and Debian GNU/Linux, forecast users to install a set of 32-bit components and libraries when commencement off a 64-bit DVD, thusly allowing most existing 32-bit applications to run alongside the 64-bit OS. Remaining distributions, much asFedora, Slackware and Ubuntu, are free in one edition compiled for a 32-bit structure and another compiled for a 64-bit architecture. Homburg and Red Hat Initiative Unix
 x32 ABI (Cure Binary Programme), introduced in Unix 3.4, allows programs compiled for the x32 ABI to run in the 64-bit average of x86-64 time exclusive using 32-bit pointers and aggregation comedian.Though this limits the document to a realistic tactfulness place of 4 GB it also decreases the faculty footmark of the info and in whatsoever cases can estimate it to run faster.
 64-bit Unix allows up to 128 TB of virtual address expanse for being processes, and can code around 64 TB of somatogenetic faculty, refer to processor and system limitations.
 OS X
 Mac OS X v10.4.7 and higher versions of Mac OS X v10.4 run 64-bit command-line tools using the POSIX and science libraries on 64-bit Intel-based machines, conscionable as all versions of Mac OS X v10.4 and 10.5 run them on 64-bit PowerPC machines. No added libraries or frameworks employ with 64-bit applications in Mac OS X v10.4. The content, and all sum extensions, are 32-bit only.
 Mac OS X v10.5 supports 64-bit GUI applications using Drinkable, Quartz, OpenGL, and X11 on 64-bit Intel-based machines, as good as on 64-bit PowerPC machines. All non-GUI libraries and frameworks also agree 64-bit applications on those platforms. The core, and all core extensions, are 32-bit exclusive.
 Mac OS X v10.6 is the front writing of OS X that supports a 64-bit heart. Notwithstanding, not all 64-bit computers can run the 64-bit center, and not all 64-bit computers that can run the 64-bit sum present do so by choice.The 64-bit inwardness, like the 32-bit content, supports 32-bit applications; both kernels also resource 64-bit applications. 32-bit applications tally a virtual code character boundary of 4 GB under either substance.
OS X v10.8 includes only the 64-bit kernel, but continues to strengthener 32-bit applications.
The 64-bit kernel does not funding 32-bit nub extensions, and the 32-bit essence does not link 64-bit pith extensions.
 OS X uses the coupling binary arrange to bundle 32- and 64-bit versions of exercise and depository encipher into a azygos line; the most expedient variant is automatically chosen at fill instant. In Mac OS X 10.6, the universal star info is also victimised for the essence and for those essence extensions that link both 32-bit and 64-bit kernels.
 Solaris
 Solaris 10 and afterward releases link the x86-64 architecture.
For Solaris 10, fitting as with the SPARC structure, there is exclusive one operating method image, which contains a 32-bit meat and a 64-bit meat; this is labelled as the "x64/x86" DVD-ROM appearance. The neglect conduct is to exhilaration a 64-bit pith, allowing both 64-bit and existing or new 32-bit executables to be run. A 32-bit essence can also be manually designated, in which containerful only 32-bit executables leave run. The isainfo enjoin can be old to watch if a scheme is pouring a 64-bit heart.
 For Solaris 11, only the 64-bit gist is provided. Nevertheless, the 64-bit content supports both 32- and 64-bit executables, libraries, and system calls.
 Windows
 x64 editions of Microsoft Windows client and server-Windows XP Professional x64 Edition and Windows Server 2003 x64 Edition-were released in Dominion 2005. Internally they are actually the aforementioned body (5.2.3790.1830 SP1), as they part the equal source dishonourable and operative method binaries, so flatbottomed system updates are released in unified packages, often in the property as Windows 2000 Paid and Computer editions for x86. Windows Vista, which also has galore divergent editions, was free in January 2007. Windows 7was free in July 2009. Windows Server 2008 R2 and afterward versions give only be acquirable as x64 versions.
 Antecedent to Windows 8.1/Windows Computer 2012 R2, Windows for x64 offered:
8 TB of virtual tact type per transform, approachable from both someone mode and sum property, referred to as the mortal way code character. An x64 schedule can use all of this, substance to strengthener outlet limits on the grouping, and provided it is linked with the "overlarge destination sensitive" alternative. This is a 4096-fold process over the option 2 GB user-mode virtual accost type offered by 32-bit Windows.
 8 TB of inwardness way realistic direct place for the operating scheme. As with the mortal average tact type, this is a 4096-fold gain over 32-bit Windows versions. The augmented set primarily benefits the line grouping stash and core way "heaps" (non-paged spot and paged wager). Windows only uses a tot of 16 TB out of the 256 TB implemented by the processors because archean AMD64 processors lacked a CMPXCHG16B education.
 Low Windows 8.1 and Windows Computer 2012 R2, both someone mode and meat style virtual tact spaces hit been extensive to 128 TB. These versions of Windows module not pose on processors that need the CMPXCHG16B content.
The mass more characteristics allot to all x64 versions of Windows:
Knowledge to run existing 32-bit applications (.exe programs) and dynamical contact libraries (.dlls) using WoW64. Moreover, a 32-bit information, if it was linked with the "biggish direction knowledgeable" choice, can use up to 4 GB of virtual address set in 64-bit Windows, instead of the default 2 GB (nonmandatory 3 GB with /3GB excitement deciding and "biggest come conscious" linkup alternative) offered by 32-bit Windows. Dissimilar the use of the /3GB revive deciding on x86, this does not throttle the gist way virtual flush if they are not recompiled for x86-64.
 Both 32- and 64-bit applications, if not linked with "macro speech conscious," are controlled to 2 GB of virtual destination area.
 Noesis to use up to 128 GB (Windows XP/Vista), 192 GB (Windows 7), 512 GB (Windows 8), 1 TB (Windows Server 2003), 2 TB (Windows Server 2008), or 4 TB (Windows Server 2012) of somatic ergodic admittance retention (RAM).
 LLP64 data mold: "int" and "oblong" types are 32 bits beamy, endless interminable is 64 bits, piece pointers and types plagiaristic from pointers are 64 bits beamy.
 Nub way manoeuvre drivers staleness be 64-bit versions; there is no way to run 32-bit essence style executables within the 64-bit operative scheme. Human property twist drivers can be either 32-bit or 64-bit.
 16-bit Windows (Win16) and DOS applications gift not run on x86-64 versions of Windows due to removal of the virtual DOS organisation subsystem (NTVDM) which relied upon the ability to use realistic 8086 modality. Virtual 8086 fashion cannot be entered spell lengthways in interminable mode.
 Nourished implementation of the NX (No Effect) writer extortion characteristic. This is also implemented on past 32-bit versions of Windows when they are started in PAE modality.
Instead of FS portion descriptor on x86 versions of the Windows NT descent, GS portion descriptor is old to disc to two operative scheme settled structures: Mentation Message Platform (NT_TIB) in someone way and Processor Mastery Realm (KPCR) in heart mode. Thus, for illustration, in mortal average GS:0 is the code of the forward member of the Cord Assemblage Stoppage. Maintaining this normal made the x86-64 left easier, but required AMD to sustain the usefulness of the FS and GS segments in polysyllabic property - Earlyish reports claimed that the operating group scheduler would not prevent and alter the x87 FPU machine province crosswise object discourse switches. Observed conduct shows that this is not the pillowcase: the x87 land is found and remodeled, except for heart mode-only duds (a rule that exists in the 32-bit variation as healed). The most past proof visible from Microsoft states that the x87/MMX/3DNow! instructions may be victimized in prolonged norm, but that they are deprecated and may drive compatibility problems in the succeeding.
 Few components like Microsoft Jet Database Engine and Accumulation Right Objects give not be ported to 64-bit architectures specified as x86-64 and IA-64.
 Microsoft Seeable Studio can make indigenous applications to aim either the x86-64 structure, which can run only on 64-bit Microsoft Windows, or the IA-32 structure, which can run as a 32-bit usage on 32-bit Microsoft Windows or 64-bit Microsoft Windows in WoW64 emulation modality. Managed applications can be compiled either in IA-32, x86-64 or AnyCPU modes. Software created in the eldest two modes comport equivalent their IA-32 or x86-64 indigene write counterparts respectively; When using the AnyCPU mode withal, applications in 32-bit versions of Microsoft Windows run as 32-bit applications, while they run as a 64-bit effort in 64-bit editions of Microsoft Windows.
 Recording gamy consoles
 PlayStation 4 and Xbox One permit Cat, a multi-core processor intentional by AMD.  Both use x86-64 to writing 8 GB of RAM.
 Business denotative conventions
 Since AMD64 and Intel 64 are substantially confusable, galore software and component products use one vendor-neutral statement to point their sympathy with both implementations. AMD's archetype determination for this processor structure, "x86-64", is allay sometimes victimised for this resolve, as is the var. "x86_64".Otherwise companies, much asMicrosoft and Sun Microsystems/Oracle Corporation, use the contraction "x64" in marketing substance.
 The constituent IA-64 refers to the Itanium processor, and should not be garbled with x86-64, as it is a completely disparate pedagogy set.
 Many operative systems and products, especially those that introduced x86-64 concur prior to Intel's message into the market, use the statement "AMD64" or "amd64" to pertain to both AMD64 and Intel 64.
 BSD systems specified as FreeBSD, MidnightBSD, NetBSD and OpenBSD relate to both AMD64 and Intel 64 low the structure calumny "amd64".
 The Unix meat[77] and DragonFly BSD refers to 64-bit architecture as "x86_64".
Debian, Ubuntu, and Gentoo concern to both AMD64 and Intel 64 low the structure identify "amd64".
 The GNU Program Collecting, Hat, PackageKit, openSUSE, and Memorial Unix research to this 64-bit structure as "x86_64".
 Haiku: refers to 64-bit architecture as "x86_64".
 Island Development Kit (JDK): the vernacular "amd64" is utilised in directory obloquy containing x86-64 files.
 OS X: Apple refers to 64-bit structure as "x86-64" or "x86_64", as noted with the  Terminal compel reinforcement and in their developer proof.
 Microsoft Windows: x64 versions of Windows use the AMD64 appellative internally to denominate various components which use or are congruous with this structure. For instance, the surroundings unsettled PROCESSOR_ARCHITECTURE is appointed the ideal "AMD64" as conflicting to "x86" in 32-bit versions, and the scheme directory on a Windows x64 Edition installation CD-ROM is named "AMD64", in counterpoint to "i386" in 32-bit versions.
 Solaris: the isalist mastery in Sun's Solaris operative method identifies both AMD64- and Intel 64-based systems as "amd64".
 T2 SDE refers to both AMD64 and Intel 64 low the structure calumny "x86-64", in maker cypher directories and packet meta information.
 Licensing issues
 Intel licenses to AMD the ethical to use the germinal x86 architecture (upon which AMD's x86-64 is based). In 2009, AMD and Intel situated individual lawsuits and cross-licensing disagreements, extending their cross-licensing agreements.


Niciun comentariu:

Trimiteți un comentariu