Jump to content

Multi-Environment Real-Time: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
online archive of BSTJ and dmr's homepage are dead
so Wayback Machine does have dmr's homepage!
Line 39: Line 39:
DMERT was later renamed '''Unix RTR''' (Real-Time Reliable).<ref name="unix-rtr"/>
DMERT was later renamed '''Unix RTR''' (Real-Time Reliable).<ref name="unix-rtr"/>


A "generalization" of Bell Labs' time-sharing operating system [[Unix]],<ref>{{cite conference |title=The UNIX Time-sharing System—A retrospective |first=Dennis M. |last=Ritchie |authorlink=Dennis Ritchie |conference=Tenth Hawaii International Conference on the System Sciences |year=1977}}</ref>
A "generalization" of Bell Labs' time-sharing operating system [[Unix]],<ref>{{cite conference |title=The UNIX Time-sharing System—A retrospective |first=Dennis M. |last=Ritchie |authorlink=Dennis Ritchie |conference=Tenth Hawaii International Conference on the System Sciences |year=1977 |url=http://cm.bell-labs.com/cm/cs/who/dmr/retro.html |archiveurl=https://web.archive.org/web/20150205030215/http://cm.bell-labs.com/cm/cs/who/dmr/retro.html |archivedate=5 February 2015}}</ref>
MERT featured a redesigned, modular [[kernel (computing)|kernel]] that was able to run Unix programs as well as privileged real-time processes. These processes' data structures were isolated from other processes, with [[message passing]] being the preferred form of [[interprocess communication]] (IPC), although [[Shared memory (interprocess communication)|shared memory]] was also implemented. MERT also sported a custom filesystem with special support for large, contiguous, statically sized files, as used in real-time [[database]] applications. The design of MERT was influenced by Dijkstra's [[THE (operating system)|THE]], Hansen's [[RC 4000 Multiprogramming System|Monitor]] and IBM's [[CP-67]].<ref name="bstj78">{{cite journal |last1=Lycklama |first1=H. |last2=Bayer |first2=D. L. |title=The MERT Operating System |journal=[[Bell System Technical Journal]] |volume=57 |issue=6 |pages=2049–2086 |date=July–August 1978 |doi=10.1002/j.1538-7305.1978.tb02142.x}}</ref>
MERT featured a redesigned, modular [[kernel (computing)|kernel]] that was able to run Unix programs as well as privileged real-time processes. These processes' data structures were isolated from other processes, with [[message passing]] being the preferred form of [[interprocess communication]] (IPC), although [[Shared memory (interprocess communication)|shared memory]] was also implemented. MERT also sported a custom filesystem with special support for large, contiguous, statically sized files, as used in real-time [[database]] applications. The design of MERT was influenced by Dijkstra's [[THE (operating system)|THE]], Hansen's [[RC 4000 Multiprogramming System|Monitor]] and IBM's [[CP-67]].<ref name="bstj78">{{cite journal |last1=Lycklama |first1=H. |last2=Bayer |first2=D. L. |title=The MERT Operating System |journal=[[Bell System Technical Journal]] |volume=57 |issue=6 |pages=2049–2086 |date=July–August 1978 |doi=10.1002/j.1538-7305.1978.tb02142.x}}</ref>



Revision as of 06:12, 3 July 2015

Multi-Environment Real-Time
DeveloperBell Labs[1]
Written inC[2]
OS familyReal-time operating systems
Marketing targetReal-time computing applications
PlatformsPDP-11[1]
Kernel typeMicrokernel[1]

Multi-Environment Real-Time (MERT) was a hybrid time-sharing/real-time operating system developed in the 1970s at Bell Labs for use in embedded minicomputers (in particular PDP-11s). It was later renamed UNIX Real-Time (UNIX-RT).[3] A version called Duplex Multi Environment Real Time (DMERT) was the operating system for the AT&T 3B20D telephone switching minicomputer, designed for high availability;[4][5][6] DMERT was later renamed Unix RTR (Real-Time Reliable).[6]

A "generalization" of Bell Labs' time-sharing operating system Unix,[7] MERT featured a redesigned, modular kernel that was able to run Unix programs as well as privileged real-time processes. These processes' data structures were isolated from other processes, with message passing being the preferred form of interprocess communication (IPC), although shared memory was also implemented. MERT also sported a custom filesystem with special support for large, contiguous, statically sized files, as used in real-time database applications. The design of MERT was influenced by Dijkstra's THE, Hansen's Monitor and IBM's CP-67.[2]

The MERT operating system was a four-layer design, in increasing order of protection:[2]

  • Kernel: resource allocation of memory, CPU time and interrupts;
  • kernel-mode processes including I/O device drivers, file manager, swap manager, "root process" that connects the file manager to the disk (usually combined with the swap manager);
  • operating system supervisor;
  • user processes.

The standard supervisor was MERT/UNIX, a Unix emulator with an extended system call interface and shell that enabled the use of MERT's custom IPC mechanisms, although an RSX-11 emulator also existed.[2]

References

  1. ^ a b c Bayer, D. L.; Lycklama, H. (1975). MERT - a multi-environment real-time operating system. Fifth ACM Symposium on Operating Systems Principles. Austin, TX. doi:10.1145/800213.806519. Retrieved 2008-08-18.
  2. ^ a b c d Lycklama, H.; Bayer, D. L. (July–August 1978). "The MERT Operating System". Bell System Technical Journal. 57 (6): 2049–2086. doi:10.1002/j.1538-7305.1978.tb02142.x.
  3. ^ Attention: This template ({{cite doi}}) is deprecated. To cite the publication identified by doi:10.1002/j.1538-7305.1984.tb00064.x, please use {{cite journal}} (if it was published in a bona fide academic journal, otherwise {{cite report}} with |doi=10.1002/j.1538-7305.1984.tb00064.x instead.
  4. ^ Kane, J. R.; Anderson, R. E.; McCabe, P. S. (January 1983). "The 3B20D Processor & DMERT Operating System: Overview, Architecture, and Performance of DMERT". Bell System Technical Journal. 62 (1): 291–301. doi:10.1002/j.1538-7305.1983.tb04396.x.
  5. ^ Grzelakowski, M. E.; Campbell, J. H.; Dubman, M. R. (January 1983). "The 3B20D Processor & DMERT Operating System: DMERT Operating System". Bell System Technical Journal. 62 (1): 303–322. doi:10.1002/j.1538-7305.1983.tb04397.x.
  6. ^ a b Wallace, John J.; Barnes, Walter W. (August 1984). "Designing for Ultrahigh Availability: The Unix RTR Operating System" (PDF). IEEE Computer. 17 (8). IEEE: 31–39.
  7. ^ Ritchie, Dennis M. (1977). The UNIX Time-sharing System—A retrospective. Tenth Hawaii International Conference on the System Sciences. Archived from the original on 5 February 2015.