LINUX System Lecture 2 OS and UNIX summary

  • Slides: 10
Download presentation
LINUX System : Lecture 2 OS and UNIX summary Bong-Soo Sohn Assistant Professor School

LINUX System : Lecture 2 OS and UNIX summary Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University Acknowledgement : (i) wikipedia. org , (ii) http: //www. doc. ic. ac. uk/~wjk/Unix. Intro

Operating Systems n OS acts as an intermediary between user and HW n Resource

Operating Systems n OS acts as an intermediary between user and HW n Resource Manager n Allocates and manages system resources (CPU, Memory, Disks, Networks, … ) n Efficient and fair use of the resources n Interface n OS allows users and application programs to access system resources n Controls the execution of user programs accurately n Efficiently, Fairly, Safely(Accurately), Abstractly

Computer System Structure n HW – provides basic computing resources n n CPU, memory,

Computer System Structure n HW – provides basic computing resources n n CPU, memory, disk, … OS Kernel n n direct control of underlying HW System call n n n Programming interface to the services provided by the OS The one program running at all times on the computer is the kernel. Everything else is either a system program (shipped with OS) or an application program Application programs n n n Define the ways in which the system resources are used to solve user problems executed thru shell/GUI. Ex) word processor, video games, etc

Operating Systems n Functionality n Process Management n n Memory Management n n n

Operating Systems n Functionality n Process Management n n Memory Management n n n n CPU scheduling : batch vs time-sharing Memory allocation : determine what is in memory when? Virtual memory : a technique that gives an application program the impression that it has large contiguous working memory, while in fact it is physically fragmented and may even overflow on to disk storage. Disk and file system Device driver : interface for communicating with HW devices Networking : supports network protocols. (ex) TCP/IP Security : authentication (login), authorization (file permission), … UI : GUI (Graphical User Interface), CLI (Command Line Interface) OS comes with application programs that provide an interface for managing OS.

Storage Hierarchy n Register, Cache, Main memory, Secondary Storage (disks), Magnetic tapes n Why

Storage Hierarchy n Register, Cache, Main memory, Secondary Storage (disks), Magnetic tapes n Why hierarchical structure? n Speed n Cost n Volatility n Caching n Copying information into faster storage system. n Faster storage checked first to determine if information is there n Cache<->main memory, main memory<->disk n Important principle, performed at many levels in computer

OS Structures n Multiprogramming n n n a technique used to utilize maximum CPU

OS Structures n Multiprogramming n n n a technique used to utilize maximum CPU time by running multiple programs simultanously Single user cannot keep CPU and I/O devices busy at all times. Multiprogramming organizes jobs (code and data) so CPU always has one to execute One job is selected and run via job scheduler When a running job has to wait for I/O, OS switches to another job Multitasking (time-sharing) n n CPU switches jobs so frequently that users can interact with each job while it is running. Creates interactive computing Response time can be controlled If processes don’t fit in memory, swapping moves them in and out to run

Operating Systems n MS Windows n n n Most popular on desktop computers Gaining

Operating Systems n MS Windows n n n Most popular on desktop computers Gaining popularity in servers. UNIX/LINUX n n Most popular in server environments LINUX are gaining popularity on desktop PC.

UNIX System n has been popular for more than two decades n Portability n

UNIX System n has been popular for more than two decades n Portability n n Written mostly in C + a few in assembly language Kernel size is small Multi-user, multi-tasking environment n Stability n Powerful networking capabilities n Free, open source code(LINUX) Suitable for using as a server n

UNIX History n n n Created by Ken Thompson et al. ( a researcher

UNIX History n n n Created by Ken Thompson et al. ( a researcher at AT&T Bell Lab) UNICS(1969) (shortened to UNIX later) : first version Released Fifth version of UNIX n n kernel was rewritten in C, which was a big step forwards in terms of system portability (1973) LINUX n n n Developed by Linus Torvalds, a finnish undergrad student, in 1991 Free open source UNIX OS for PC Open source code nature means any one can add features and correct deficiencies. Turned in to collaboration of hundreds of volunteer developers around the world. Several different distributions (e. g. Redhat, Debian, … etc) Distribution comprises a prepackaged kernel, system utilities, GUI, application programs

LINUX n Kernel n n Shells / GUI : two forms of command input

LINUX n Kernel n n Shells / GUI : two forms of command input n n n Device driver support for various HW device Advanced processor and memory management Support different types of file system Textual command line shells (e. g. C shell, … ) Graphical user interface (e. g. GNOME window manager) System utilities n n Virtually every UNIX system utilities were ported to LINUX Include daemons n n server program running as a background process Application programs n n Come with standard application programs e. g. vi, emacs, xv, gcc/g++, xfig, latex, …