Difference between revisions of "Hexspeak"
From Projects
(→Notable magic numbers) |
(→Notable magic numbers) |
||
Line 1: | Line 1: | ||
== Notable magic numbers == | == Notable magic numbers == | ||
− | |||
* <tt>0x0000000FF1CE</tt> ("office") is used as the last part of product codes (guid) for Microsoft Office components (visible in registry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall registry key). | * <tt>0x0000000FF1CE</tt> ("office") is used as the last part of product codes (guid) for Microsoft Office components (visible in registry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall registry key). | ||
− | * <tt>0x00BAB10C</tt> ("über (ooba) block") is used as the magic number for the | + | * <tt>0x00BAB10C</tt> ("über (ooba) block") is used as the magic number for the ZFS uberblock. |
− | * <tt>0x8BADF00D</tt> ("ate bad food") is used by | + | * <tt>0x8BADF00D</tt> ("ate bad food") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when an application takes too long to launch, terminate, or respond to system events.<ref name="DAC1">{{cite web|url=http://developer.apple.com/iphone/library/technotes/tn2008/tn2151.html |title= Technical Note TN2151: Understanding and Analyzing iPhone OS Application Crash Reports }}</ref> |
* <tt>0x1BADB002</tt> ("1 bad boot"<ref>{{cite web|url=http://ftp.lyx.org/pub/mach/mach4/multiboot/multiboot-archive|title=Multiboot mailing list archive}}</ref>) Multiboot header magic number.<ref>{{cite web|url=http://www.gnu.org/software/grub/manual/multiboot/multiboot.html#Header-magic-fields |title=Multiboot specifications}}</ref> | * <tt>0x1BADB002</tt> ("1 bad boot"<ref>{{cite web|url=http://ftp.lyx.org/pub/mach/mach4/multiboot/multiboot-archive|title=Multiboot mailing list archive}}</ref>) Multiboot header magic number.<ref>{{cite web|url=http://www.gnu.org/software/grub/manual/multiboot/multiboot.html#Header-magic-fields |title=Multiboot specifications}}</ref> | ||
* <tt>0x1CEB00DA</tt> ("ice buddha") was used as the origin for the binary file parser IceBuddha.<ref>{{cite web|url=http://icebuddha.com |title=IceBuddha.com}}</ref> | * <tt>0x1CEB00DA</tt> ("ice buddha") was used as the origin for the binary file parser IceBuddha.<ref>{{cite web|url=http://icebuddha.com |title=IceBuddha.com}}</ref> | ||
* <tt>0xB105F00D</tt> ("BIOS food") is the value of the low bytes of last four registers on ARM PrimeCell compatible components (the component_id registers), used to identify correct behaviour of a memory-mapped component. | * <tt>0xB105F00D</tt> ("BIOS food") is the value of the low bytes of last four registers on ARM PrimeCell compatible components (the component_id registers), used to identify correct behaviour of a memory-mapped component. | ||
− | * <tt>0xB16B00B5</tt> ("big boobs") was required by | + | * <tt>0xB16B00B5</tt> ("big boobs") was required by Microsoft's Hyper-V hypervisor to be used by Linux guests as their "guest signature".<ref>{{cite web|url=http://www.spinics.net/lists/linux-driver-devel/msg15311.html|title=Staging: hv: vmbus_drv: Move the content of hv.h to hyperv_vmbus.h}}</ref> One proposal suggested changing it to <tt>0x0DEFACED</tt> ("defaced").<ref>{{cite web|url=https://lkml.org/lkml/2012/7/13/261|title=hv: Change the guest ID value}}</ref> Actually, it was initially changed to decimal and then replaced entirely.<ref>https://github.com/torvalds/linux/commit/83ba0c4f3f317270dae5597d8044b795d119914c</ref> |
− | * <tt>0xBAADF00D</tt> ("bad food") is used by | + | * <tt>0xBAADF00D</tt> ("bad food") is used by Microsoft's LocalAlloc(LMEM_FIXED) to indicate uninitialised allocated heap memory when the debug heap is used.<ref>{{cite web|url=http://www.nobugs.org/developer/win32/debug_crt_heap.html#table|title=Win32 Debug CRT Heap Internals}}</ref> |
− | * <tt>0xBADDCAFE</tt> ("bad cafe") is used by | + | * <tt>0xBADDCAFE</tt> ("bad cafe") is used by Libumem to indicate uninitialized memory area |
− | * <tt>C15C:0D06:F00D</tt> ("cisco dog food") used in the | + | * <tt>C15C:0D06:F00D</tt> ("cisco dog food") used in the IPv6 address of www.cisco.com on World IPv6 Day. "Dog food" refers to Cisco Eating your own dog food|eating its own dog food with IPv6. |
− | * <tt>0xCAFEBABE</tt> ("cafe babe") is used by | + | * <tt>0xCAFEBABE</tt> ("cafe babe") is used by Mach-O to identify Universal binary|Universal object files, and by the Java (programming language)|Java programming language to identify Java bytecode class files.<ref>{{cite web|url=http://www.artima.com/insidejvm/whyCAFEBABE.html |title=Why Cafebabe |publisher=Artima.com |date= |accessdate=2009-10-01}}</ref> |
− | * <tt>0xCAFED00D</tt> ("cafe dude") is used by | + | * <tt>0xCAFED00D</tt> ("cafe dude") is used by Java (software platform)|Java as a magic number for their pack200 compression.<ref>{{cite web|url=http://download.oracle.com/javase/6/docs/technotes/guides/pack200/pack-spec.html#tocArcHea|title=Pack200: A Packed Class Deployment Format For Java Applications|accessdate=2010-11-03}}</ref> |
− | * <tt>0xCEFAEDFE</tt> ("face feed") is used by | + | * <tt>0xCEFAEDFE</tt> ("face feed") is used by Mach-O to identify flat (single architecture) object files. In little endian this reads <tt>FEEDFACE</tt>, "Feed Face". |
− | * <tt>0xD15EA5E</tt> ("disease") is a flag that indicates regular boot on the | + | * <tt>0xD15EA5E</tt> ("disease") is a flag that indicates regular boot on the Nintendo GameCube and Wii consoles.<ref>{{cite web|url=http://hitmen.c02.at/files/yagcd/yagcd/chap4.html#sec4.2.1.1.2|title=Yet Another Gamecube Documentation: Dolphin-OS Globals}}</ref><ref>{{cite web|url=http://wiibrew.org/wiki/Memory_Map|title=Wiibrew: Memory Map}}</ref> |
* <tt>0xDABBAD00</tt> ("dabba doo") is the name of a blog on computer security.<ref>{{cite web|url=http://0xdabbad00.com |title=0xdabbad00.com}}</ref> | * <tt>0xDABBAD00</tt> ("dabba doo") is the name of a blog on computer security.<ref>{{cite web|url=http://0xdabbad00.com |title=0xdabbad00.com}}</ref> | ||
− | * <tt>0xDEADBABE</tt> ("Dead Babe") is used by IBM | + | * <tt>0xDEADBABE</tt> ("Dead Babe") is used by IBM Jikes RVM as a sanity check of the stack of the primary thread.<ref>{{cite web|url=http://svn.sourceforge.net/viewvc/jikesrvm/rvmroot/trunk/tools/bootImageRunner/ia32/libvm.c?revision=15664&view=markup: |title=DEADBABE sanity check |date= |accessdate=2009-10-01}}</ref> |
− | * <tt>0xDEADBEAF</tt> ("dead beaf") is part of the signature code of | + | * <tt>0xDEADBEAF</tt> ("dead beaf") is part of the signature code of Jazz Jackrabbit 2 tileset files.<ref>{{cite web|title=J2T File Format|url=http://www.jazz2online.com/wiki/index.php?J2T_File_Format}}</ref> Level files have less room for their signatures and use <tt>0xBABE</tt> ("babe") instead.<ref>{{cite web|title=J2L File Format|url=http://www.jazz2online.com/wiki/index.php?J2L_File_Format}}</ref> It is also the header of campaign gamesaves used in the Halo Game Series. |
− | * <tt>0xDEADBEEF</tt> ("dead beef") is frequently used to indicate a software crash or deadlock in embedded systems. DEADBEEF was originally used to mark newly allocated areas of memory that had not yet been initialized—when scanning a memory dump, it is easy to see the DEADBEEF. It is used by IBM | + | * <tt>0xDEADBEEF</tt> ("dead beef") is frequently used to indicate a software crash or deadlock in embedded systems. DEADBEEF was originally used to mark newly allocated areas of memory that had not yet been initialized—when scanning a memory dump, it is easy to see the DEADBEEF. It is used by IBM RS/6000 systems, Mac OS on 32-bit PowerPC processors and the Commodore International|Commodore Amiga as a magic debug value. On Sun Microsystems' Solaris (operating system)|Solaris, it marks freed kernel memory. On OpenVMS running on Alpha processors, DEAD_BEEF can be seen by pressing CTRL-T. The DEC Alpha SRM console has a background process that traps memory errors, identified by PS as "BeefEater waiting on 0xdeadbeef".<ref>{{cite web|url=http://www.catb.org/~esr/jargon/html/D/DEADBEEF.html |title=Jargon File entry for DEADBEEF |publisher=Catb.org |date= |accessdate=2009-10-01}}</ref> |
− | * <tt>0xDEADC0DE</tt> (" | + | * <tt>0xDEADC0DE</tt> ("dead code") is used as a marker in OpenWrt firmware to signify the beginning of the to-be created jffs2 filesystem at the end of the static firmware. |
− | * <tt>0xDEADDEAD</tt> ("dead dead") is the bug check (STOP) code displayed when invoking a | + | * <tt>0xDEADDEAD</tt> ("dead dead") is the bug check (STOP) code displayed when invoking a blue screen of death|Blue Screen of Death either by telling the kernel via the attached debugger, or by using a special keystroke combination.<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/ms797162.aspx |title=Bug Check 0xDEADDEAD: MANUALLY_INITIATED_CRASH, MSDN |publisher=msdn.microsoft.com |date=2009-10-01 |accessdate=2009-10-13}}{{Dead link|date=February 2011}}</ref> This is usually seen by driver developers, as it is used to get a memory dump on Windows NT based systems. An alternative to <tt>0xDEADDEAD</tt> is the bug check code <tt>0x000000E2</tt>,<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/ms797144.aspx |title=Bug Check 0xE2: MANUALLY_INITIATED_CRASH, MSDN |publisher=msdn.microsoft.com |date=2009-10-01 |accessdate=2009-10-13}}{{Dead link|date=February 2011}}</ref> as they are both called MANUALLY_INITIATED_CRASH as seen on the Microsoft Developer Network. |
− | * <tt>0xDEADD00D</tt> ("dead dude") is used by | + | * <tt>0xDEADD00D</tt> ("dead dude") is used by Android (operating system)|Android in the Dalvik (software)|Dalvik virtual machine to indicate a VM abort. |
− | * <tt>0xDEADFA11</tt> ("dead fall") is used by | + | * <tt>0xDEADFA11</tt> ("dead fall") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when the user force quits an application.<ref name="DAC1"/> |
− | * <tt>0xDEAD10CC</tt> ("dead lock") is used by | + | * <tt>0xDEAD10CC</tt> ("dead lock") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when application holds on to a system resource while running in the background.<ref name="DAC1"/> |
− | * <tt>0xDEADFEED</tt> ("dead feed") is used by | + | * <tt>0xDEADFEED</tt> ("dead feed") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when a timeout occurs spawning a service |
− | * <tt>0xDEFEC8ED</tt> ("defecated") is the magic number for | + | * <tt>0xDEFEC8ED</tt> ("defecated") is the magic number for OpenSolaris core dumps.<ref>{{cite web|url=http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/sys/dumphdr.h#45 |title=Opensolaris header line 45 for 0xDEFEC8ED |publisher=src.opensolaris.org |date= |accessdate=2011-07-12}}</ref> |
− | * <tt>0xE011CFD0</tt> is used as a | + | * <tt>0xE011CFD0</tt> is used as a magic number (programming)|magic number for Microsoft Office files. In little endian this reads <tt>D0CF11E0</tt>, "docfile0".<ref>{{cite web|url=http://support.microsoft.com/kb/318326 |title=Documents That Are Supported by the Office Filter}}</ref> |
− | * <tt>face:b00c</tt> ("facebook") used in the | + | * <tt>face:b00c</tt> ("facebook") used in the IPv6 address of www.v6.facebook.com |
− | * <tt>0xFACEFEED</tt> ("face feed") is used by Alpha servers running Windows NT. The Alpha | + | * <tt>0xFACEFEED</tt> ("face feed") is used by Alpha servers running Windows NT. The Alpha Hardware Abstraction Layer (HAL) generates this error when it encounters a hardware failure.<ref>{{cite web|url=http://support.microsoft.com/kb/132349 |title=Technet article for 0xFACEFEED |publisher=Support.microsoft.com |date=2006-11-01 |accessdate=2009-10-01}}</ref> |
− | * <tt>0xFBADBEEF</tt> ("bad beef") is used in the | + | * <tt>0xFBADBEEF</tt> ("bad beef") is used in the WebKit and Blink (layout engine)|Blink layout engines to indicate a known, unrecoverable error such as out of memory.<ref>{{cite web|url=https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/Source/wtf/Assertions.h&l=133 |title=Chromium Assertions.h line 133| accessdate=2014-03-27}}</ref> |
− | * <tt>0xFEE1DEAD</tt> ("feel dead") is used as a magic number in the | + | * <tt>0xFEE1DEAD</tt> ("feel dead") is used as a magic number in the Linux reboot system call.<ref>{{cite web|url=https://git.kernel.org/cgit/linux/kernel/git/bwh/linux-3.2.y.git/plain/include/linux/reboot.h?id=HEAD |title=include/linux/reboot.h }}</ref> |
* <tt>0xDEADBAAD</tt> ("dead bad") is used by the Android libc abort() function when native heap corruption is detected. | * <tt>0xDEADBAAD</tt> ("dead bad") is used by the Android libc abort() function when native heap corruption is detected. | ||
− | * <tt>deadbeef-dead-beef-dead-beef00000075</tt>("dead beef") is the | + | * <tt>deadbeef-dead-beef-dead-beef00000075</tt>("dead beef") is the GUID assigned to hung/dead virtual machines in Citrix Xenserver. |
* <tt>0x4B1D</tt> ("Forbid'den'") was a password in some calibration consoles for developers to peer deeper into control registers outside the normal calibration memory range. | * <tt>0x4B1D</tt> ("Forbid'den'") was a password in some calibration consoles for developers to peer deeper into control registers outside the normal calibration memory range. |
Revision as of 11:43, 3 September 2014
Notable magic numbers
- 0x0000000FF1CE ("office") is used as the last part of product codes (guid) for Microsoft Office components (visible in registry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall registry key).
- 0x00BAB10C ("über (ooba) block") is used as the magic number for the ZFS uberblock.
- 0x8BADF00D ("ate bad food") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when an application takes too long to launch, terminate, or respond to system events.[1]
- 0x1BADB002 ("1 bad boot"[2]) Multiboot header magic number.[3]
- 0x1CEB00DA ("ice buddha") was used as the origin for the binary file parser IceBuddha.[4]
- 0xB105F00D ("BIOS food") is the value of the low bytes of last four registers on ARM PrimeCell compatible components (the component_id registers), used to identify correct behaviour of a memory-mapped component.
- 0xB16B00B5 ("big boobs") was required by Microsoft's Hyper-V hypervisor to be used by Linux guests as their "guest signature".[5] One proposal suggested changing it to 0x0DEFACED ("defaced").[6] Actually, it was initially changed to decimal and then replaced entirely.[7]
- 0xBAADF00D ("bad food") is used by Microsoft's LocalAlloc(LMEM_FIXED) to indicate uninitialised allocated heap memory when the debug heap is used.[8]
- 0xBADDCAFE ("bad cafe") is used by Libumem to indicate uninitialized memory area
- C15C:0D06:F00D ("cisco dog food") used in the IPv6 address of www.cisco.com on World IPv6 Day. "Dog food" refers to Cisco Eating your own dog food|eating its own dog food with IPv6.
- 0xCAFEBABE ("cafe babe") is used by Mach-O to identify Universal binary|Universal object files, and by the Java (programming language)|Java programming language to identify Java bytecode class files.[9]
- 0xCAFED00D ("cafe dude") is used by Java (software platform)|Java as a magic number for their pack200 compression.[10]
- 0xCEFAEDFE ("face feed") is used by Mach-O to identify flat (single architecture) object files. In little endian this reads FEEDFACE, "Feed Face".
- 0xD15EA5E ("disease") is a flag that indicates regular boot on the Nintendo GameCube and Wii consoles.[11][12]
- 0xDABBAD00 ("dabba doo") is the name of a blog on computer security.[13]
- 0xDEADBABE ("Dead Babe") is used by IBM Jikes RVM as a sanity check of the stack of the primary thread.[14]
- 0xDEADBEAF ("dead beaf") is part of the signature code of Jazz Jackrabbit 2 tileset files.[15] Level files have less room for their signatures and use 0xBABE ("babe") instead.[16] It is also the header of campaign gamesaves used in the Halo Game Series.
- 0xDEADBEEF ("dead beef") is frequently used to indicate a software crash or deadlock in embedded systems. DEADBEEF was originally used to mark newly allocated areas of memory that had not yet been initialized—when scanning a memory dump, it is easy to see the DEADBEEF. It is used by IBM RS/6000 systems, Mac OS on 32-bit PowerPC processors and the Commodore International|Commodore Amiga as a magic debug value. On Sun Microsystems' Solaris (operating system)|Solaris, it marks freed kernel memory. On OpenVMS running on Alpha processors, DEAD_BEEF can be seen by pressing CTRL-T. The DEC Alpha SRM console has a background process that traps memory errors, identified by PS as "BeefEater waiting on 0xdeadbeef".[17]
- 0xDEADC0DE ("dead code") is used as a marker in OpenWrt firmware to signify the beginning of the to-be created jffs2 filesystem at the end of the static firmware.
- 0xDEADDEAD ("dead dead") is the bug check (STOP) code displayed when invoking a blue screen of death|Blue Screen of Death either by telling the kernel via the attached debugger, or by using a special keystroke combination.[18] This is usually seen by driver developers, as it is used to get a memory dump on Windows NT based systems. An alternative to 0xDEADDEAD is the bug check code 0x000000E2,[19] as they are both called MANUALLY_INITIATED_CRASH as seen on the Microsoft Developer Network.
- 0xDEADD00D ("dead dude") is used by Android (operating system)|Android in the Dalvik (software)|Dalvik virtual machine to indicate a VM abort.
- 0xDEADFA11 ("dead fall") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when the user force quits an application.[1]
- 0xDEAD10CC ("dead lock") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when application holds on to a system resource while running in the background.[1]
- 0xDEADFEED ("dead feed") is used by Apple Inc.|Apple in IOS (Apple)|iOS crash reports, when a timeout occurs spawning a service
- 0xDEFEC8ED ("defecated") is the magic number for OpenSolaris core dumps.[20]
- 0xE011CFD0 is used as a magic number (programming)|magic number for Microsoft Office files. In little endian this reads D0CF11E0, "docfile0".[21]
- face:b00c ("facebook") used in the IPv6 address of www.v6.facebook.com
- 0xFACEFEED ("face feed") is used by Alpha servers running Windows NT. The Alpha Hardware Abstraction Layer (HAL) generates this error when it encounters a hardware failure.[22]
- 0xFBADBEEF ("bad beef") is used in the WebKit and Blink (layout engine)|Blink layout engines to indicate a known, unrecoverable error such as out of memory.[23]
- 0xFEE1DEAD ("feel dead") is used as a magic number in the Linux reboot system call.[24]
- 0xDEADBAAD ("dead bad") is used by the Android libc abort() function when native heap corruption is detected.
- deadbeef-dead-beef-dead-beef00000075("dead beef") is the GUID assigned to hung/dead virtual machines in Citrix Xenserver.
- 0x4B1D ("Forbid'den'") was a password in some calibration consoles for developers to peer deeper into control registers outside the normal calibration memory range.