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 creation. However, because independent invention is not a defense against patents, clean-room designs typically cannot be used to circumvent patent restrictions.
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. [1] [2]
Several other PC clone companies, including Corona Data Systems, Eagle Computer, and Handwell Corporation, were litigated by IBM for copyright infringement, and were forced to re-implement their BIOS in a way which did not infringe IBM's copyrights. [3] [4] The legal precedent for firmware being protected by copyright, however, hadn't been established until Apple Computer, Inc. v. Franklin Computer Corp. , 714 F.2d 1240 (3rd Circuit Court 1983). The three settlements by IBM, and the legal clean-room PC BIOS designs of Compaq and Columbia Data Products, happened before Phoenix announced, in July 1984, that they were licensing their own BIOS code. Phoenix expressly emphasized the clean-room process through which their 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. [5] 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) [6] and Kyocera (1993–1994), although the latter suit was for infringements between 1985 and 1990. [7] [8]
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. The "Laser 128 story" is in contrast to the Franklin Ace 1000, which lost in the 1983 decision, Apple Computer, Inc. v. Franklin Computer Corporation . The previous PC "clone" examples are notable for not daring to fight IBM in court, even before the legal precedent for copyrighting firmware had been made. [9] [10] [11] [12]
Other examples include ReactOS, an open source operating system made from clean-room reverse-engineered components of Windows, [13] and Coherent operating system, a clean room re-implementation of version 7 Unix. [14] 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. [15] It has been released as open source. [14]
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. [16] 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. [17]
Sony Computer Entertainment, Inc. v. Connectix Corp. was a 1999 lawsuit which established an important precedent in regard to reverse engineering. [18] [19] 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.
In computing, BIOS is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the booting process. The BIOS firmware comes pre-installed on an IBM PC or IBM PC compatible's system board and exists in some UEFI-based systems to maintain compatibility with operating systems that do not support UEFI native operation. 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 some companies looking to create compatible systems. The interface of that original system serves as a de facto standard.
The IBM Personal Computer is the first microcomputer released in the IBM PC model line and the basis for the IBM PC compatible de facto standard. Released on August 12, 1981, it was created by a team of engineers and designers at International Business Machines (IBM), directed by William C. Lowe and Philip Don Estridge in Boca Raton, Florida.
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.
The Intel 486, officially named i486 and also known as 80486, is a microprocessor. It is a higher-performance follow-up to the Intel 386. The i486 was introduced in 1989. It represents the fourth generation of binary compatible CPUs following the 8086 of 1978, the Intel 80286 of 1982, and 1985's i386.
IBM PC compatible computers are technically similar to the original IBM PC, XT, and AT, all from computer giant IBM, that are able to use the same software and expansion cards. Such computers were referred to as PC clones, IBM clones or IBM PC clones. The term "IBM PC compatible" is now a historical description only, since IBM no longer sells personal computers after it sold its personal computer division in 2005 to Chinese technology company Lenovo. The designation "PC", as used in much of personal computer history, has not meant "personal computer" generally, but rather an x86 computer capable of running the same software that a contemporary IBM PC could. The term was initially in contrast to the variety of home computer systems available in the early 1980s, such as the Apple II, TRS-80, and Commodore 64. Later, the term was primarily used in contrast to Apple's Macintosh computers.
Wintel is the partnership of Microsoft Windows and Intel producing personal computers using Intel x86-compatible processors running Microsoft Windows.
A Chinese wall or ethical wall is an information barrier protocol within an organization designed to prevent exchange of information or communication that could lead to conflicts of interest. For example, a Chinese wall may be established to separate 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 is a microprocessor that was designed and produced by NEC. It is both pin compatible and object-code compatible with the Intel 8088, with an instruction set architecture (ISA) similar to that of the Intel 80188 with some extensions. The V20 was introduced in March 1984.
In computing, a clone is hardware or software that is designed to function in exactly 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 BIOS could be protected by copyright. As second impact, this ruling clarified that binary code, the machine readable form of software and firmware, was copyrightable too and not only the human-readable source code form of software.
The Compaq Portable is an early portable computer which was one of the first IBM PC compatible systems. It was Compaq Computer Corporation's first product, to be followed by others in the Compaq Portable series and later Compaq Deskpro series. It was not simply an 8088-CPU computer that ran a Microsoft DOS as a PC "work-alike", but contained a reverse-engineered BIOS, and a version of MS-DOS that was so similar to IBM's PC DOS that it ran nearly all its application software. The computer was also an early variation on the idea of an "all-in-one".
A Macintosh clone is a computer running the Mac OS operating system that was not produced by Apple Inc. The earliest Mac clones were based on emulators and reverse-engineered Macintosh ROMs. During Apple's short lived Mac OS 7 licensing program, authorized Mac clone makers were able to either purchase 100% compatible motherboards or build their own hardware using licensed Mac reference designs.
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 to 2000. The platform established NEC's dominance in the Japanese personal computer market, and, by 1999, more than 18 million units had been sold. While NEC did not market these specific machines in the West, it sold the NEC APC series, which had similar hardware to early PC-98 models.
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.
The Compaq Deskpro is a line of business-oriented desktop computers manufactured by Compaq, then replaced by the Evo brand in 2001. Models were produced containing microprocessors from the 8086 up to the x86-based Intel Pentium 4.
Following the introduction of the IBM Personal Computer, or IBM PC, many other personal computer architectures became extinct within just a few years. It led to a wave of IBM PC compatible systems being released.
A video game console emulator is a type of emulator that allows a computing device to emulate a video game console's hardware and play its games on the emulating platform. More often than not, emulators carry additional features that surpass limitations of the original hardware, such as broader controller compatibility, timescale control, easier access to memory modifications, and unlocking of gameplay features. Emulators are also a useful tool in the development process of homebrew demos and the creation of new games for older, discontinued, or rare consoles.
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.
Sony Computer Entertainment v. Connectix Corporation, 203 F.3d 596 (2000), commonly referred to as simply Sony v. Connectix, 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.
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.