FREE Companies & institutions LESSON · Companies & institutions
1975: From kit to platform
MITS, Apple, IBM, Microsoft, and Compaq
The Altair era beginning in 1975, Apple's later personal computers, and IBM's1981 PC show several routes from an interesting machine to an ecosystem. They did not all use the same architecture or arrive at the same moment. A kit can invite experimentation; an integrated product can reduce assembly and usability work; a widely supported interface can let other firms supply components and software. Each route changes who performs integration.
A computer platform has several distinct boundaries: processor instructions, expansion-bus signals, firmware services, operating-system interfaces, file formats, and application behavior. Calling a design “open” without naming the boundary hides important restrictions. Published electrical diagrams do not automatically grant rights to copy firmware. An operating system available to several manufacturers does not make every peripheral or application portable.
Consider a fictional application that prints through a documented operating-system call. A compatible machine can implement that call differently internally and still satisfy the application. If the application instead writes directly to a particular device register, it bypasses the abstraction and requires the clone to reproduce that hardware behavior. Compatibility is partly a social convention about which interfaces software developers agree to use.
Suppose three independent manufacturers can run the same application binary. A developer's fixed porting and testing cost is 30 units per architecture. With three incompatible architectures the initial cost is 90; with a sufficiently shared platform it might be 30 plus 5 units of testing per manufacturer, totaling 45. This hypothetical saving helps explain why developers prefer common interfaces. It does not imply zero compatibility work or that the common platform serves every user equally well.
Clone manufacturers can expand distribution and lower hardware prices while increasing the importance of components shared across all implementations. An operating-system licensor or processor supplier may gain bargaining power because many manufacturers need the same compatibility target. The firm that designed the original machine can therefore grow the overall market without retaining every profitable layer. This is a possible structural effect, not an inevitable rule for all modular products.
Firmware recreation illustrates the difference between functional behavior and copyrighted implementation. A compatibility effort needs a lawful development process, a precise behavioral target, and extensive tests. Historical clean-room accounts should be supported by specific engineering or legal records; do not turn them into a general instruction that copying any published implementation is permitted.
IBM's institutional PC history describes its product choices; its earlier System/360 operations manual provides a useful primary comparison for what an architecture contract actually specifies. Ben Rosen’s oral history supplies a participant’s account of Compaq’s compatibility strategy. Compare the granularity of these promises rather than assuming personal computers invented compatibility. The enduring question is where independent firms can innovate safely and where one owner can change the rules. Draw those interfaces and identify the cost of replacing each component.
Reconstruction exercise
An application works on a clone except when it writes directly to a video-memory address. Explain why implementing the documented operating-system calls was insufficient. Compute the fictional three-architecture cost of 90 units and common-platform cost of 45, then add a 20-unit emergency workaround for each manufacturer and recompute. Describe how a compatibility policy could reduce this recurring cost while preserving a route for performance-sensitive applications.
Worked solution
The direct video-memory access depends on a hardware behavior below the documented operating-system boundary, so an otherwise compatible API implementation can still fail. Three separate architecture ports cost 3×30=90. Shared development plus manufacturer testing costs 30+3×5=45, but three 20-unit workarounds raise it to 105. The supposed advantage disappears when hidden dependencies dominate. A policy can specify supported interfaces, provide conformance fixtures, and version hardware-specific extensions explicitly. Performance-sensitive applications may use a documented capability query and optimized path with a portable fallback. This preserves room for specialization while making the dependency visible to developers, users, and replacement manufacturers.
Test the limits and transfer the idea
1. Representation trace · allow 25 minutes
A binary record crosses an undocumented boundary
A fictional PC application writes integer 258 as two little-endian bytes, followed by a one-byte status 1. A clone reads the first two bytes as big-endian. Give the bytes and interpreted value. Then suppose another clone inserts one padding byte before status when saving native structs. Design a portable three-byte file contract and golden tests. Explain why supporting the same operating-system calls does not guarantee compatibility for these files.
Get a starting hint
Separate in-memory layout from an explicitly serialized representation.
Compare your reasoning with the worked solution
258 is hexadecimal 0102, so little-endian bytes are [02,01] followed by status [01]. A big-endian reader interprets [02,01] as 513. A padded native structure may move status from offset 2 to offset 3, causing a reader to read padding as status or the wrong record boundary. Specify exactly three bytes per record: a 16-bit unsigned little-endian value at offsets 0–1 and a status byte at offset 2, with permitted status values and malformed-length handling. Test zero, 258, 65535, adjacent records and a truncated record. An operating-system API can transfer bytes correctly while applications disagree about their meaning. This invented format illustrates platform boundaries; neither IBM's PC history nor Rosen's Compaq oral history establishes these exact bytes as a historical file layout.
Check your reasoning
- Computes bytes and the erroneous value 513.
- Specifies width, order, offsets and validation.
- Explains file-format compatibility independently of API compatibility.
2. Architecture and evidence · allow 25 minutes
Test whether modularity provides a credible substitute
Three computer manufacturers share a processor instruction set, but one application depends on a firmware routine available only on manufacturer A. A new supplier claims that processor compatibility alone lets it replace A. Draw the dependency chain and describe two routes to compatibility, with one falsifiable test for each. Explain what a participant oral history of a clone company's strategy can establish beyond a modern marketing claim, and what engineering artifacts are still needed.
Get a starting hint
The application reaches the firmware either directly or through a contract another implementation must satisfy.
Compare your reasoning with the worked solution
The relevant chain is application → firmware behavior → processor and devices, not merely application → instruction set. One route is an independently implemented compatible firmware interface, tested against specified inputs, outputs, error states and persistent effects on representative workloads. Another is changing the application to use a supported portable API, with regression tests showing that required behavior and data are preserved. A binary that invokes A's unavailable routine is a counterexample to processor-only substitutability. A participant interview can describe goals, development choices and encountered constraints, while dated specifications, test results and shipped binaries show what compatibility was actually delivered. Legal permission to distribute an implementation is a separate question requiring actual terms and records, not inferred from a functional resemblance.
Check your reasoning
- Includes the firmware dependency omitted by the supplier.
- Provides two distinct implementation routes and observable tests.
- Separates participant testimony, technical artifacts and distribution rights.
Check your understanding
A common platform cuts initial application work from 90 to 45 units, but three manufacturer workarounds each cost 20. What is the revised total?
- 65 units.
- 105 units.
- 45 units because compatibility excludes fixes.
- 90 units.
Explanation
The shared base still incurs 45 and the three workarounds add 60.
A published hardware interface attracts many clone manufacturers. Which outcome is structurally possible?
- The original hardware designer necessarily captures every new profit.
- The shared operating-system or processor supplier gains bargaining power as the hardware market expands.
- Application developers no longer need testing.
- All suppliers become interchangeable at every boundary.
Explanation
Modularity can expand participation while concentrating dependence at a common complementary layer.
Sources and further reading
- The IBM PC: IBM institutional history
- System/360 Principles of Operation, 1964: IBM original technical manual
- Oral history of Benjamin Rosen,2017: Computer History Museum, primary interview