Cost Estimate Workbook: Office 2022 Estimating Workshop Summary
The Cost Estimate Workbook (CEWB) presented by Mitch Ball & Ray Johnston. Learn about project estimation, cost tracking, and assumptions in this detailed workshop. Discover the importance of consistent estimates and how to avoid cost discrepancies. Find links to access the CEWB and user's guide for efficient project management. Dive into the tabs, instructions, and tracking tools included in the Construction Estimate Workbook. Enhance your understanding of project cost estimation with this comprehensive resource."
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
The UNIX Time-Sharing System Mosharaf Chowdhury 9/12/16 EECS 582 F16 1
A Memorandum This memorandum is based on the assumption that MIT will be given a transistorized IBM 709 about July l960. I want to propose an operating system for it that will substantially reduce the time required to get a problem solved on the machine. Any guess as to how much of a reduction would be achieved is just a guess, but a factor of five seems conservative. The proposal requires a complete revision in the way the machine is used, I think the proposal points to the way all computers will be operated in the future, and we have a chance to pioneer a big step forward in the way computers are used. The ideas expressed in the following sections are not especially new, but they have formerly been considered impractical with the computers previously available. 9/12/16 EECS 582 F16 2
A Memorandum on Time Sharing Divide a shared resource between multiple programs and users John McCarthy wrote the memorandum in 1959 As opposed to batch processing Submit jobs to queues to be processed one at a time Non-interactive Early examples of time-sharing OSes include MIT CTSS (Compatible Time-Sharing System) Berkeley Timesharing System Dartmouth Time-Sharing System (DTSS) 9/12/16 EECS 582 F16 3
Multics Multiplexed Information and Computing Service Started in 1964 at MIT; led by Fernando Corbat w/ GE and Bell Labs Time-sharing operating system Developed initially for GE-645 mainframe, a 36-bit machine w/ support for virtual memory Hierarchical file system Protection ring-based security Access Control Lists (ACL) Bell Labs pulled out in 1969 9/12/16 EECS 582 F16 4
UNIX Started by Ken Thompson and Dennis Ritchie in 1969 UNIX was never a project; it was not designed to meet any specific need except that felt by its major author, Ken Thompson, and soon after its origin by the author of this paper, for a pleasant environment in which to write and use programs. - Dennis Ritchie, The UNIX Time-sharing System A Retrospective 9/12/16 EECS 582 F16 5
UNIX First version on DEC PDP-7 and PDP-9 (circa 1969-70) Second version on unprotected DEC PDP-11/20 Third version w/ multiprogramming on PDP-11/40, 45 etc. Described in today s paper February, 1971: PDP-11 Unix first operational 9/12/16 EECS 582 F16 6
PDP-11/40 16-bit word (8-bit byte) 144K bytes core memory UNIX took 42K bytes Minimal system 50K bytes Storage 1M byte fixed-head disk 4X 2.5M byte moving-head disk cartridge 1X 40M byte moving-head disk pack 14 variable speed communication interfaces Many other attached devices http://www.catb.org/esr/writings/taoup/html/graphics/kd14.j pg 9/12/16 EECS 582 F16 7
Simplicity Simple abstractions Everything is a file Simple file system design Hierarchical for programming simplicity Simple connectors Pipes that look like files Simple maintenance Self-maintained It is hoped, however, the users of UNIX will find that the most important characteristics of the system are its simplicity, elegance, and ease of use. - DR & KT, The UNIX Time-Sharing System 9/12/16 EECS 582 F16 8
Influences Berkeley Timesharing System Process forks Multics I/O system calls Multics and TENEX Shell and related CTSS in essence a modern implementation of MIT s CTSS system D. Ritchie The success of UNIX lies not so much in new inventions but rather in the full exploitation of a carefully selected set of fertile ideas, and especially in showing that they can be keys to the implementation of a small yet powerful operating system. - DR & KT, The UNIX Time-Sharing System 9/12/16 EECS 582 F16 9
Key Concepts Names and namespaces Directories, paths, and links Root, home, and current directory Rooted tree and mounting sub-trees on leaves Special files and access control Process management System calls, address space, signals/interrupts User interface Shell, I/O redirection, and pipes 9/12/16 EECS 582 F16 10
Hierarchical Namespace Easy to traverse Easy to modify/add/delete Access control is simpler Hierarchical as well Can be arbitrarily increased Mount new drives! 9/12/16 EECS 582 F16 11
Everything is a File Regular files Special files Devices Networks Directories Same as files, except when not Keeps track of pointers to files, not actual content Simplifies linking! 9/12/16 EECS 582 F16 12
I/O Calls Inspired by Multics Primary functions open, close, read, write, seek Interface that has passed the test of time: haven t effectively changed yet! BSD socket API is similar open, close, send, recv 9/12/16 EECS 582 F16 13
File System Implementation Thompson and Ritchie took special pride in their design of the file system My opinion from the reading Given the long-term impact, I think it s justified! We ll skip the details, and wait for next week when we discuss file systems 9/12/16 EECS 582 F16 15
Execution Image is an execution environment Container is the current parallel Process is the execution of the image Program text is write-protected and shared between all running processes of the same program Created using fork Inspired by Berkeley Timesharing System 9/12/16 EECS 582 F16 16
Processes and the Kernel Process Separate virtual address space Only one thread! Kernel Mediator for accessing shared resources and kernel services P1 P2 P3 Interactions via system calls and signals/interrupts Kernel 9/12/16 EECS 582 F16 17
Worse is Better 1. Simplicity 2. Ease of Use and Maintenance 3. Consistency Across Interfaces 4. Completeness of Design 5. Correctness of Specification and Implementation 6. Placement of Functionality 9/12/16 EECS 582 F16 19
Next Class System R 9/12/16 EECS 582 F16 20