The HP 3000 series is a family of minicomputers released by Hewlett-Packard in 1973 after a difficult development project. The first models were withdrawn from the market until speed improvements could be made. It was intended to be the first minicomputer delivered with a full featured operating system with timesharing.
There could be as much as 32k of memory in a code segment, but calling a routine was based on segment number and routine number within a segment, so a program could theoretically have 64k routines. This was compared to most 16 bit computers that had 64k of address space for everything. The bigger limitation was the data segment and stack segment, which were also 64k. Shared library routines did not permit static or global data since each process had its own data segment. The AGL graphic library got around this by requiring the caller to pass in an array from his own stack or data segment to hold all state information, similar to modern object oriented languages where methods are applied to objects passed in allocated by the caller.
Systems programming was done in SPL, an ALGOL-like language, but allowing inline assembler, and other direct access to the ISA. The standard terminals for the HP 3000 were the HP 2640 series, which supported block mode data entry from forms, as well as character mode.
The 3000 series operating system was originally styled the Multi-Programming Executive MPE (later called MPE-XL and then, after POSIX compliance was added in versions 5.0- 5.5, MPE-IX). Part of the tremendous success of the HP3000 was due to the provision of, with brief exceptions included as part of the Fundamental Operating System (FOS), a vendor developed shallow network database management system (DBMS) called Image (now called TurboIMAGE) that was reputedly inspired (if not actually based upon) the TOTAL DBMS developed by Cincom Systems, Inc. Almost uniquely in computer history, it remains a feature of MPE that forward binary compatablity of executable programs is preserved across all systems and all version of the operating system, regardless of hardware architecture. Programs that ran on the original series II in 1973 can be reloaded from tape onto the last N-Series machines produced in 2003 and run today without recompiling.
As the market shifted towards standardized UNIX systems, which HP had also been promoting, in November 2001, Hewlett-Packard announced that the official End Of Life EOL for the HP3000 would be the end of 2006, and that no new systems would be sold after 2003. In early 2006, Hewlett-Packard announced that limited vendor support for the HP3000 would be extended by two years for certain clients or geographic regions. This is one of the longest lifetimes for a proprietary mincomputer system, outlasting the PDP and VAX series.
Interestingly, however the advanced stack based architecture which had replaced the HP 1000 has today been largely discarded in favor of x86 and x64 processors whose EAX and BAX registers look suspiciously like hyper-evolved versions of the venerable HP 1000, or even older PDP-8
The 16-bit microcoded machines (Series I, II, III, 30, 33, 39, 40, 42, 44, 48, 52, 58, 64, 68, 70, 37, ...) implement a 16-bit word addressed, byte-addressable, segmented, Harvard, Stack Instruction Set Architecture (ISA). Most of the ~214 instructions are 16 bits wide. Stack operations pack 2 per 16-bit word and the remaining few are 32 bits wide.
CISC Implementations
HPPA RISC Implementations