Clean-room design (also known as the Chinese wall technique) is the method of copying a design by reverse engineering and then recreating it without infringing any of the copyrights associated with the original design. Clean-room design is useful as a defense against copyright infringement because it relies on independent invention. However, because independent invention is not a defense against patents, clean-room designs typically cannot be used to circumvent patent restrictions.
Reverse engineering, also called back engineering, is the process by which a man-made object is deconstructed to reveal its designs, architecture, or to extract knowledge from the object; similar to scientific research, the only difference being that scientific research is about a natural phenomenon.
Copyright is a form of intellectual property that grants the creator of an original creative work an exclusive legal right to determine whether and under what conditions this original work may be copied and used by others, usually for a limited term of years. The exclusive rights are not absolute but limited by limitations and exceptions to copyright law, including fair use. A major limitation on copyright on ideas is that copyright protects only the original expression of ideas, and not the underlying ideas themselves.
A patent is a form of intellectual property that gives its owner the legal right to exclude others from making, using, selling, and importing an invention for a limited period of years, in exchange for publishing an enabling public disclosure of the invention. In most countries patent rights fall under civil law and the patent holder needs to sue someone infringing the patent in order to enforce his or her rights. In some industries patents are an essential form of competitive advantage; in others they are irrelevant.
The term implies that the design team works in an environment that is "clean" or demonstrably uncontaminated by any knowledge of the proprietary techniques used by the competitor.
Typically, a clean-room design is done by having someone examine the system to be reimplemented and having this person write a specification. This specification is then reviewed by a lawyer to ensure that no copyrighted material is included. The specification is then implemented by a team with no connection to the original examiners.
Phoenix Technologies sold its clean-room implementation of the IBM-compatible BIOS to various PC clone manufacturers.
Phoenix Technologies Ltd is an American company that designs, develops and supports core system software for personal computers and other computing devices. The company's products – commonly referred to as BIOS or firmware – support and enable the compatibility, connectivity, security and management of the various components and technologies used in such devices. Phoenix Technologies and IBM developed the El Torito standard.
Several other PC clone companies, including Corona Data Systems, Eagle Computer, and Handwell Corporation, were successfully sued by IBM for copyright infringement in 1984, and were forced to re-implement their BIOS in a way which did not infringe IBM's copyrights.
Corona Data Systems, later renamed Cordata, was an American personal computer company. It was one of the earliest IBM PC compatible computer system companies. Manufacturing was primarily done by Daewoo of Korea, which became a major investor in the company and ultimately the owner.
Eagle Computer of Los Gatos, California, was an early microcomputer manufacturing company. Spun off from Audio-Visual Laboratories (AVL), it first sold a line of popular CP/M computers which were highly praised in the computer magazines of the day. After the IBM PC was launched, Eagle produced the Eagle 1600 series, which ran MS-DOS but were not true clones. When it became evident that the buying public wanted actual clones of the IBM PC, even if a non-clone had better features, Eagle responded with a line of clones, including a portable. The Eagle PCs were always rated highly in computer magazines.
These three settlements happened before Phoenix announced in July of that year, that they were licensing their own BIOS code, expressly emphasizing the clean-room process through which Phoenix's BIOS code had been written by a programmer who did not even have prior exposure to Intel microprocessors, himself having been a TMS9900 programmer beforehand.As late as the early 1990s, IBM was winning millions of dollars from settling BIOS copyright infringement lawsuits against some other PC clone manufacturers like Matsushita/Panasonic (1987) and Kyocera (1993–1994), although the latter suit was for infringements between 1985 and 1990.
Introduced in June 1976, the TMS9900 was one of the first commercially available, single-chip 16-bit microprocessors. The TMS9900 found its most widespread use in the TI-99/4 and TI-99/4A home computers.
Panasonic Corporation, formerly known as Matsushita Electric Industrial Co., Ltd., is a Japanese multinational electronics corporation headquartered in Kadoma, Osaka, Japan.
Kyocera Corporation is a Japanese multinational ceramics and electronics manufacturer headquartered in Kyoto, Japan. It was founded as Kyoto Ceramic Company, Limited in 1959 by Kazuo Inamori and renamed in 1982. The company has diversified its founding technology in ceramic materials through internal development as well as strategic mergers and acquisitions. It manufactures industrial ceramics, solar power generating systems, telecommunications equipment, office document imaging equipment, electronic components, semiconductor packages, cutting tools, and components for medical and dental implant systems.
Another clean-room design example is VTech's successful clones of the Apple II ROMs for the Laser 128, the only computer model among dozens of Apple II compatibles which survived litigation brought by Apple Computer.[ citation needed ]
VTech is a Hong Kong-based global supplier of electronic learning products from infancy to preschool and the world's largest manufacturer of cordless phones. It is also one of the top 50 electronic manufacturing services providers globally.
The Apple II is an 8-bit home computer and one of the world's first highly successful mass-produced microcomputer products, designed primarily by Steve Wozniak. It was introduced by Jobs and Wozniak at the 1977 West Coast Computer Faire and was the first consumer product sold by Apple Computer, Inc. It is the first model in a series of computers which were produced until Apple IIe production ceased in November 1993. The Apple II marks Apple's first launch of a personal computer aimed at a consumer market – branded towards American households rather than businessmen or computer hobbyists.
Read-only memory (ROM) is a type of non-volatile memory used in computers and other electronic devices. Data stored in ROM can only be modified slowly, with difficulty, or not at all, so it is mainly used to store firmware or application software in plug-in cartridges.
Other examples include ReactOS that is an open source operating system made from clean-room reverse-engineered components of Windows,[ citation needed ] and Coherent operating system that is a clean room re-implementation of version 7 Unix. In the early years of its existence, Coherent's developer Mark Williams Company received a visit from an AT&T delegation looking to determine whether MWC was infringing on AT&T Unix property. It has been released as open source.
ReactOS is a free and open-source operating system for x86/x86-64 personal computers intended to be binary-compatible with computer programs and device drivers made for Windows Server 2003 and later versions. ReactOS has been noted as a potential open-source drop-in replacement for Windows and for its information on undocumented Windows APIs.
The GNU General Public License is a widely-used free software license, which guarantees end users the freedom to run, study, share and modify the software. The license was originally written by Richard Stallman of the Free Software Foundation (FSF) for the GNU Project, and grants the recipients of a computer program the rights of the Free Software Definition. The GPL is a copyleft license, which means that derivative work can only be distributed under the same license terms. This is in distinction to permissive free software licenses, of which the BSD licenses and the MIT License are widely-used examples. GPL was the first copyleft license for general use.
Microsoft Windows is a group of several graphical operating system families, all of which are developed, marketed, and sold by Microsoft. Each family caters to a certain sector of the computing industry. Active Windows families include Windows NT and Windows Embedded; these may encompass subfamilies, e.g. Windows Embedded Compact or Windows Server. Defunct Windows families include Windows 9x, Windows Mobile and Windows Phone.
Clean room design is usually employed as best practice, but not strictly required by law. In NEC Corp. v Intel Corp. (1990), NEC sought declaratory judgment against Intel's charges that NEC's engineers simply copied the microcode of the 8086 processor in their NEC V20 clone. A US judge ruled that while the early, internal revisions of NEC's microcode were indeed a copyright violation, the later one, which actually went into NEC's product, although derived from the former, were sufficiently different from the Intel microcode it could be considered free of copyright violations. While NEC themselves did not follow a strict clean room approach in the development of their clone's microcode, during the trial, they hired an independent contractor who was only given access to specifications but ended up writing code that had certain similarities to both NEC's and Intel's code. From this evidence, the judge concluded that similarity in certain routines was a matter of functional constraints resulting from the compatibility requirements, and thus were likely free of a creative element.Although the clean room approach had been used as preventative measure in view of possible litigation before (e.g. in the Phoenix BIOS case), the NEC v. Intel case was the first time that the clean room argument was accepted in a US court trial. A related aspect worth mentioning here is that NEC did have a license for Intel's patents governing the 8086 processor.
Sony Computer Entertainment, Inc. v. Connectix Corporation was a 1999 lawsuit which established an important precedent in regard to reverse engineering.Sony sought damages for copyright infringement over Connectix's Virtual Game Station emulator, alleging that its proprietary BIOS code had been copied into Connectix's product without permission. Sony won the initial judgment, but the ruling was overturned on appeal. Sony eventually purchased the rights to Virtual Game Station to prevent its further sale and development. This established a precedent addressing the legal implications of commercial reverse engineering efforts.
During production, Connectix unsuccessfully attempted a Chinese wall approach to reverse engineer the BIOS, so its engineers disassembled the object code directly. Connectix's successful appeal maintained that the direct disassembly and observation of proprietary code was necessary because there was no other way to determine its behavior. From the ruling:
Some works are closer to the core of intended copyright protection than others. Sony's BIOS lay at a distance from the core because it contains unprotected aspects that cannot be examined without copying. The court of appeal therefore accorded it a lower degree of protection than more traditional literary works.
BIOS is non-volatile firmware used to perform hardware initialization during the booting process, and to provide runtime services for operating systems and programs. The BIOS firmware comes pre-installed on a personal computer's system board, and it is the first software to run when powered on. The name originates from the Basic Input/Output System used in the CP/M operating system in 1975. The BIOS originally proprietary to the IBM PC has been reverse engineered by companies looking to create compatible systems. The interface of that original system serves as a de facto standard.
The 8086 is a 16-bit microprocessor chip designed by Intel between early 1976 and June 8, 1978, when it was released. The Intel 8088, released July 1, 1979, is a slightly modified chip with an external 8-bit data bus, and is notable as the processor used in the original IBM PC design, including the widespread version called IBM PC XT.
Microcode is a computer hardware technique that imposes an interpreter between the CPU hardware and the programmer-visible instruction set architecture of the computer. As such, the microcode is a layer of hardware-level instructions that implement higher-level machine code instructions or internal state machine sequencing in many digital processing elements. Microcode is used in general-purpose central processing units, although in current desktop CPUs it is only a fallback path for cases that the faster hardwired control unit cannot handle.
IBM PC compatible computers are computers similar to the original IBM PC, XT, and AT, able to use the same software and expansion cards. Such computers used to be referred to as PC clones, or IBM clones. They duplicate almost exactly all the significant features of the PC architecture, facilitated by IBM's choice of commodity hardware components and various manufacturers' ability to reverse engineer the BIOS firmware using a "clean room design" technique. Columbia Data Products built the first clone of the IBM personal computer by a clean room implementation of its BIOS.
Wintel is a portmanteau of Microsoft Windows and Intel, referring to personal computers using Intel x86-compatible processors running Microsoft Windows.
Chinese wall is a business term describing an information barrier within an organization that was erected to prevent exchanges or communication that could lead to conflicts of interest. For example, a Chinese wall may be erected to separate and isolate people who make investments from those who are privy to confidential information that could improperly influence the investment decisions. Firms are generally required by law to safeguard insider information and ensure that improper trading does not occur.
The NEC V20 (μPD70108) was a processor made by NEC that was a reverse-engineered, pin-compatible version of the Intel 8088 with an instruction set compatible with the Intel 80186. The V20 was introduced in 1982, and the V30 debuted in 1983.
In computing, a clone is a hardware or software system that is designed to function in the same way as another system. A specific subset of clones are remakes, which are revivals of old, obsolete, or discontinued products.
Apple Computer, Inc. v. Franklin Computer Corp., 714 F.2d 1240, was the first time an appellate level court in the United States held that a computer's operating system could be protected by copyright. As second impact, this ruling clarified that binary code, the machine readable form of software, was copyrightable too and not only the human-readable source code form of software.
The PC-9800 series, commonly shortened to PC-98 or 98, is a lineup of Japanese 16-bit and 32-bit personal computers manufactured by NEC from 1982 through 2000. The platform established NEC's dominance in the Japanese personal computer market, and by 1999, more than 18 million PC-98 units had been sold.
Following the introduction of the IBM Personal Computer, or IBM PC, many other personal computer architectures became extinct within just a few years.
Proprietary firmware is any firmware on which the producer has set restrictions on use, private modification, copying, or republishing.
In telecommunications, a proprietary protocol is a communications protocol owned by a single organization or individual.
Alan H. MacPherson was an American patent attorney who pioneered the "clean room" defense.
Sony Computer Entertainment v. Connectix Corporation, 203 F.3d 596 (2000), is a decision by the Ninth Circuit Court of Appeals which ruled that the copying of a copyrighted BIOS software during the development of an emulator software does not constitute copyright infringement, but is covered by fair use. The court also ruled that Sony's PlayStation trademark had not been tarnished by Connectix Corp.'s sale of its emulator software, the Virtual Game Station.
Structure, sequence and organization (SSO) is a term used in the United States to define a basis for comparing one software work to another in order to determine if copying has occurred that infringes on copyright, even when the second work is not a literal copy of the first. The term was introduced in the case of Whelan v. Jaslow in 1986. The method of comparing the SSO of two software products has since evolved in attempts to avoid the extremes of over-protection and under-protection, both of which are considered to discourage innovation. More recently, the concept has been used in Oracle America, Inc. v. Google, Inc.
Atari Games Corp. v. Nintendo of America Inc., 975 F.2d 832, is a United States Court of Appeals for the Federal Circuit case, in which the court held that Atari Games engaged in copyright infringement by copying Nintendo's lock-out system, the 10NES. The 10NES was designed to prevent Nintendo's video game console, the Nintendo Entertainment System (NES), from accepting unauthorized game cartridges. Atari, after unsuccessful attempts to reverse engineer the lock-out system, obtained an unauthorized copy of the source code from the Copyright Office and used it to create its 10NES replica, the Rabbit. The case involved copyright infringement claims by Nintendo and a defense based on fair use and copyright misuse by Atari.
Intel microcode is microcode that runs inside x86 processors made by Intel. Since the P6 microarchitecture introduced in the mid-1990s, the microcode programs can be patched by the operating system or BIOS firmware to workaround bugs found in the CPU after release. Intel had originally designed microcode updates for processor debugging under its design for testing (DFT) initiative.
To protect against charges of having simply (and illegally) copied IBM's BIOS, Phoenix reverse-engineered it using what's called a "clean room," or "Chinese wall," approach. First, a team of engineers studied the IBM BIOS—about 8KB of code—and described everything it did as completely as possible without using or referencing any actual code. Then Phoenix brought in a second team of programmers who had no prior knowledge of the IBM BIOS and had never seen its code. Working only from the first team's functional specifications, the second team wrote a new BIOS that operated as specified.