1
資訊系統原理
郭大維教授
臺灣大學資訊工程系
Contents
?Computer Systems Overview
?Operating Systems Concept
?UNIX
?Other System Services
?Unified Modeling Language
?UML Introduction
?System Development Process
?Use Cases, Class Diagrams, etc.
3
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2001.
UNIX
?Introduction
?Programmer Interface
?User Interface
?Process Management
?Memory Management
?File System
?I/O System
?Interprocess Communication
* “Operating system concept”, Silberschatz and Galvin, Addison Wesley, pp. 647-693.
UNIX
?Created by Ken Thompson & Dennis Ritchie at Bell Laboratories in 1969 & on PDP-7.
?ACM Turing award winners for the design of UNIX in 1983.
?C programming language inventor: Dennis Ritchie.
?Major Contributors:
?Bell Laboratories, Computer Systems Research Group (CSRG) of the University of California at Berkley (released in BSD), UNIX System Laboratories (USG/USDL/ATTIS/DSG/USO/USL), etc.
5
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2001.
UNIX
?Influence
?fork() from Berkley’s GINIE, 4.2 BSD file-mapping virtual memory interface from TENEX/TOPS-20, 4.4BSD virtual memory interface from MACH. fcntl system call from System V. Disk quotas and 4.3 BSD time-zone-handling package from the user community.
?4BSD job control, reliable signals, multiple file- access permission groups, and file system interface were adopted by AT&T UNIX System V, IEEE POSIX.1 standard, etc. 4BSD socket ported to AT&T System III. 4BSD implementation of TCP/IP networking protocol suite widely adopted!
UNIX -
Design Goals
?4.2BSD - 1983
?DARPA (Defense Advanced Research Projects Agency) wanted a standard research operating systems for the VAX.
?Networking support - remote login, file transfer (ftp), etc. Support for a wide range of hardware devices, e.g., 10Mbps Ethernet.
?Higher-speed file system.
?Revised virtual memory to support processes with large sparse address space (not part of the release).
?Inter-process-communication facilities.
7
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2001.
UNIX -
Design Goals
?4.3 BSD - 1986
?Improvement of 4.2 BSD
?Loss of performance because of many new facilities in 4.2 BSD.
?Bug fixing, e.g., TCP/IP implementation.
?New facilities such as TCP/IP subnet and routing support.
?Backward compatibility with 4.2 BSD.
?Second Version - 4.3 BSD Tahoe
?support machines beside VAX
?Third Version - 4.3 BSD Reno
?freely redistributable implementation of NFS, etc.
UNIX -
Design Goals
?4.4 BSD - 1993
?POSIX compatibility
?Deficiencies remedy of 4.3 BSD
?Support for numerous architectures such as 68K, SPARC, MIPS, PC.
?new virtual memory better for large memory and less dependent on VAX architecture.
?TCP/IP performance improvement and implementation of new network protocols.
?Support of an object-oriented interface for numerous filesystem types, e.g., SUN NFS.
9
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2001.
UNIX -
Major UCB CSRG Distributions
?Major new facilities:
?3BSD, 4.0BSD, 4.2BSD, 4.4 BSD
?Bug fixes and efficiency improvement:
?4.1 BSD, 4.3BSD
UNIX
?Distinguishing Features
?Written nearly completely in a high-level language, i.e., C.
?High portability!
?Distributed in source form.
?Contributions from everywhere!
?Provide powerful primitives and functions
such as concurrent processes.
11
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2001.
Design Principles