Citizendia
Your Ad Here

Halt and Catch Fire, known by the mnemonic HCF, was originally a fictitious computer machine code instruction claimed to be under development at IBM for use in their System/360 computers, along with many other amusing instructions such as "Execute Operator". A mnemonic device (nəˈmɒnɪk is a Memory aid Commonly met mnemonics are often verbal something such as a very short poem or a special word used to help a person remember Machine code or machine language is a system of instructions and data executed directly by a Computer 's Central processing unit. International Business Machines Corporation abbreviated IBM and nicknamed "Big Blue", is a multinational Computer Technology The IBM System/360 ( S/360) is a Mainframe computer system family announced by IBM on April 7, 1964.

In modern practice, HCF denotes an undocumented machine code instruction with unusual side-effects, included in the processor for test purposes. The old "Halt and Catch Fire" instruction and HCF mnemonic were appropriated by users who discovered these instructions as a humorous way of expressing that the unintended execution of such an instruction causes the system to fail to perform its normal functions, while nevertheless appearing quite busy. The expression "catch fire" is strictly metaphorical.

One apocryphal story goes back to the late 1960's, when computers used magnetic core memory. Magnetic core memory, or ferrite-core memory, is an early form of Random access Computer memory. The story goes that in order to speed up the core memory on their next model the engineers increased the read/write currents in the very fine wires that were threaded through the cores. This worked fine when the computer was executing normal programs, since memory accesses were spread throughout memory. However, the HALT instruction was implemented as a "Jump to self". This meant that the same core memory location was repeatedly accessed, and the very fine wires became so hot that they started to smoke - hence "Halt and Catch Fire".

Contents

A real life HCF

The Motorola 6800 microprocessor was the first for which an HCF opcode became widely known. The 6800 is an 8-bit Microprocessor produced by Motorola and released shortly after the Intel 8080 in late 1974 In computer technology an opcode ( op eration code) is the portion of a Machine language instruction that specifies the operation to be performed The origin of the 6800 HCF opcode (0xDD or 0xD9) came from an article written by Gerry Wheeler (1952–2006) in the December 1977 issue of BYTE magazine on undocumented opcodes. Byte magazine was an influential Microcomputer magazine in the late 1970s and throughout the 1980s because of its wide-ranging editorial coverage [1] The instruction makes the processor enter a mode intended for manufacturing testing, in which it continuously performs memory read cycles from successive addresses, with no intervening instruction fetches. In Computer science, a memory address is an identifier for a memory location at which a Computer program or a hardware device can store a piece of data Effectively the address bus becomes a counter, allowing the operation of all address lines to be quickly verified. An address bus is a Computer bus, controlled by CPUs or DMA -capable Peripherals for specifying the Physical addresses of computer In Digital logic and Computing, a counter is a device which stores (and sometimes displays the number of times a particular event or process Once the processor has entered this test mode, it is not responsive to interrupts, so normal operation can only be restored by a reset.

Potential damage

There are apocryphal reports of damage resulting from the use of such instructions, but there is no documented evidence of such an instruction actually causing damage to a computer. Obviously special instructions designed into a processor for use in manufacturing tests would not be designed in such a manner as to cause damage to that processor.

However, in an embedded system the unintended execution of an HCF instruction could easily cause problems in the system being controlled. An embedded system is a special-purpose Computer system designed to perform one or a few dedicated functions often with Real-time computing constraints For instance, the system could fail to stop a machine when the closure of a limit switch occurs. This problem is not specific to an HCF instruction, and could occur if the software crashes for any reason. Properly designed systems have hardware interlocks and watchdog timers to prevent such occurrences or limit their consequences. Interlocking is a method of preventing undesired states in a state machine, which in a general sense can include any electrical electronic or mechanical device or system

Additionally, there are cases of hardware suffering damage due to manipulation by program code. See Killer poke for examples. This article is about the hardware damage method For the WCW incident see The Fingerpoke of Doom.

Specific processors with HCF opcode

See also

References

  1. ^ a b Wheeler, Gerry (December 1977). The MOS Technology 6502 is an 8-bit Microprocessor that was designed by Chuck Peddle for MOS Technology in 1975 The 6800 is an 8-bit Microprocessor produced by Motorola and released shortly after the Intel 8080 in late 1974 The Motorola 6809 is an 8-bit (arguably an 8/ 16-bit) Microprocessor CPU from Motorola, introduced circa 1979 MIPS-X is a Microprocessor and Instruction set architecture developed as a follow-on project to the MIPS architecture at Stanford University The Defense Advanced Research Projects Agency (DARPA is an agency of the United States Department of Defense responsible for the development of new Technology This article is about the hardware damage method For the WCW incident see The Fingerpoke of Doom. The Cyrix coma bug is a Design flaw in Cyrix 6x86, 6x86L, and early 6x86MX processors that allows a non-privileged The acronym SEX (written in capital letters redirects here For other meanings see Sex (disambiguation. f00f (ˈfuːf an Abbreviation of f0 0f c7 c8 is the Hexadecimal encoding of an instruction that exhibits a Design flaw in the majority of lp0 on fire (aka Printer on Fire) is a semi-obsolete error message still generated on some Unix/Linux operating systems in response to certain types of printer errors "Undocumented M6800 Instructions". BYTE 2 (12): 46-47.  
  2. ^ Apple Assembly Line Volume 1 Issue 6. Retrieved on 2008-05-09. 2008 ( MMVIII) is the current year in accordance with the Gregorian calendar, a Leap year that started on Tuesday of the Common Events 1457 BC - Battle of Megiddo (15th century BC between Thutmose III and a large Canaanite coalition under the King of


This article is based in part on the Jargon File, which is in the public domain. The Jargon File is a Glossary of hacker Slang. The original Jargon File was a collection of hacker slang from technical cultures such as the MIT AI


© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org
Dapyx Software network: MP3 Explorer | Ebook Manager | Zenithic