Difference between revisions of "MERT operating system"
(Pretty good start) |
m (→External links: +4 memos) |
||
(One intermediate revision by the same user not shown) | |||
Line 28: | Line 28: | ||
==External links== | ==External links== | ||
+ | * [https://www.tuhs.org/Archive/Documentation/Manuals/MERT_Release_0/ MERT Release 0] - complete manual at [[The Unix Heritage Society|TUHS]] | ||
+ | ** [https://www.tuhs.org/Archive/Documentation/Manuals/MERT_Release_0/Pgs%2003-04%20Table%20of%20Contents.pdf Table of Contents] | ||
+ | * [https://www.tuhs.org/Archive/Documentation/TechReports/Heinz_Tech_Memos/TM-75-1352-4_A_Structured_Operating_System_for_a_PDP-11.45_19750506.pdf A Structured Operating System for a PDP-11/45] (TM 75-1352-4) | ||
+ | * [https://www.tuhs.org/Archive/Documentation/TechReports/Heinz_Tech_Memos/TM-75-1352-7_MERT_A_Multi-Environment_Real-Time_Operating_System_19751118.pdf MERT - A Multi-Environment Real-Time Operating System] (TM 75-1352-7) | ||
+ | * [https://www.tuhs.org/Archive/Documentation/TechReports/Heinz_Tech_Memos/TM-78-3114-3_The_MERT_Operating_System_19780422.pdf The MERT Operating System] (TM 78-3114-3) | ||
+ | * [https://www.tuhs.org/Archive/Documentation/TechReports/Heinz_Tech_Memos/TM-78-3114-4_The_MERT-UNIX_Supervisor_19780420.pdf The MERT/UNIX Supervisor] (TM 78-3114-4) | ||
* H. Lycklama, D. L. Bayer, [https://www.tuhs.org/Archive/Documentation/Papers/BSTJ/bstj57-6-2049.pdf The MERT Operating System] (The Bell System Technical Journal, July-August 1978, Vol. 57, No. 6, Part 2) | * H. Lycklama, D. L. Bayer, [https://www.tuhs.org/Archive/Documentation/Papers/BSTJ/bstj57-6-2049.pdf The MERT Operating System] (The Bell System Technical Journal, July-August 1978, Vol. 57, No. 6, Part 2) | ||
* R.E. Anderson, Jr Kane, P.S. Mccabe, [http://www.vtda.org/pubs/BSTJ/vol62-1983/articles/bstj62-1-291.pdf The 3B20D Processor & DMERT Operating System: Overview, Architecture, and Performance of DMERT] (The Bell System Technical Journal, January 1983, Vol. 62, No. 1) | * R.E. Anderson, Jr Kane, P.S. Mccabe, [http://www.vtda.org/pubs/BSTJ/vol62-1983/articles/bstj62-1-291.pdf The 3B20D Processor & DMERT Operating System: Overview, Architecture, and Performance of DMERT] (The Bell System Technical Journal, January 1983, Vol. 62, No. 1) |
Latest revision as of 20:56, 29 September 2022
MERT (an acronym for Multi-Environment Real Time) was an influential operating system from Bell Labs. It was one of the earliest to be constructed using an organizational concept that later became known as a microkernel system; it was one of the very earliest successful ones.
MERT was created in the 1970s, and was a spinoff of the UNIX work; it ran on DEC PDP-11 computers, models -11/45 and -11/70 (it made use of the 'supervisor' mode provided by the memory management of those models). The basic kernel (below) mostly written in assembly language; the rest (file manager, UNIX supervisor, etc) was in C.
Although it was not exactly a microkernel as they are today, it was a definitely not a monolithic kernel; it was a major step down the road to microkernels. MERT was an operating system which was divided up into several semi-independent components, all of which ran on a lower-level "kernel" (as they described it).
The kernel provided only the lowest-level basic mechanisms (memory management, process scheduling, etc); the other components needed for an operating system (e.g. a file system) were constructed as processes which ran on top of the kernel. Inter-process communication was done with messages, event flags, and shared memory and shared files.
MERT was also intended to be used in real-time applications, and had a number of features to meet this goal. Process scheduling had real-time mechanisms, as did the file system.
The source code of the original PDP-11 MERT sadly seems to have been lost; it was later renamed 'UNIX Real-Time' (UNIX-RT). MERT was later ported to the multi-processor 3B20D computer in the form of the DMERT operating system - Duplex MERT - which was used for many functions in the Bell System; DMERT was later renamed 'Unix RTR' (Real-Time Reliable).
Internal structure
MERT's basic overall internal organization has four layers:
- the 'kernel', the lowest: provided all the basic primitives such as inter-process communication, process dispatching; also allocation of all basic system resources (main memory, address space units, etc); includes initial trap and interrupt handlers, etc
- privileged processes: device drivers, file manager, memory manager and swapping manager, scheduler
- supervisor processes: provide the environment for user programs (one is a UNIX environment)
- user programs: applications
Further reading
- D. L. Bayer, H. Lycklama, MERT - a multi-environment real-time operating system, (Fifth ACM Symposium on Operating Systems Principles, Austin, Texas, 1975)
External links
- MERT Release 0 - complete manual at TUHS
- A Structured Operating System for a PDP-11/45 (TM 75-1352-4)
- MERT - A Multi-Environment Real-Time Operating System (TM 75-1352-7)
- The MERT Operating System (TM 78-3114-3)
- The MERT/UNIX Supervisor (TM 78-3114-4)
- H. Lycklama, D. L. Bayer, The MERT Operating System (The Bell System Technical Journal, July-August 1978, Vol. 57, No. 6, Part 2)
- R.E. Anderson, Jr Kane, P.S. Mccabe, The 3B20D Processor & DMERT Operating System: Overview, Architecture, and Performance of DMERT (The Bell System Technical Journal, January 1983, Vol. 62, No. 1)
- M.E. Grzelakowski, J.H. Campbell, M.R. Dubman, The 3B20D Processor & DMERT Operating System: DMERT Operating System (The Bell System Technical Journal, January 1983, Vol. 62, No. 1)