Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Copland (operating system) wikipedia , lookup
Plan 9 from Bell Labs wikipedia , lookup
Distributed operating system wikipedia , lookup
Burroughs MCP wikipedia , lookup
Process management (computing) wikipedia , lookup
Security-focused operating system wikipedia , lookup
INFO 320 Server Technology I Week 1 Server operating system and hardware concepts INFO 320 week 1 1 www.ischool.drexel.edu Overview • This course covers basic operating system (OS), server, and architecture concepts • Here we’ll mainly focus on server operating systems, though much of their functionality is done by any OS INFO 320 week 1 2 www.ischool.drexel.edu Linux and UNIX • Much of our emphasis will be on Linux and UNIX, since that’s the OS in most servers – The labs will use the Ubuntu distribution of Linux – What other kinds of server operating system are there? – What kind of operating systems are there, other than server OS’s? INFO 320 week 1 3 www.ischool.drexel.edu What does an OS do? • An OS lets applications use server hardware User CLI or GUI Application API or system calls OS Interrupts or device drivers Hardware INFO 320 week 1 4 www.ischool.drexel.edu Server hardware • So the point of an operating system is to be able to access hardware • What hardware does a server have? – What hardware characteristics do we care about from the selection or management perspective? INFO 320 week 1 5 www.ischool.drexel.edu Possible traits of an OS • What are these terms? – Multi-user OS – Multiprocessing OS – Multitasking OS • Which of these can a server OS perform? INFO 320 week 1 6 www.ischool.drexel.edu Resources and Sharing • One way to look at a computer is as a set of resources – The CPU of a computer is a resource – The memory of a computer is a resource – The keyboard of a computer is a resource – The hard disk drive of a computer is a resource INFO 320 week 1 7 www.ischool.drexel.edu Why consider this way of looking at computers? • Since the CPU of a computer operates at extremely high speeds, and since there is a speed differential between the CPU and other resources • When the CPU is waiting for another resource, it is essentially wasting time – if the only thing that it is doing is waiting INFO 320 week 1 8 www.ischool.drexel.edu Resources and sharing • On the other hand if we can have the CPU do something else while it is waiting for a resource we can make better use of the CPU resource – we won’t waste as much of the capability of the resource • If we were to do this then we would be able to share the CPU resource among more than a single task • The term multitasking derives from this approach • Multitasking allows us to share computer resources • The sharing of one or more computer resources is controlled by scheduling INFO 320 week 1 9 www.ischool.drexel.edu What does an OS do? • • • • • • • Process management Interrupts Memory management Storage management and disk access Device drivers Networking Security INFO 320 week 1 10 www.ischool.drexel.edu Process management • Executing a process means creation of a process by the OS • A task is a collection of processes • The OS kernel creates a process by assigning it memory, and defining its priority • Then the program is loaded into memory, and executed by the (a?) CPU INFO 320 week 1 11 www.ischool.drexel.edu Process management • In order to multitask, we need a mechanism to share all of the computer resources among the tasks that require it • The sharing requires a manager, called the kernel of the operating system INFO 320 week 1 12 www.ischool.drexel.edu Process management • A process can be in three possible states executing Needs data Is preempted Gets CPU Gets data and CPU Gets data ready Needs data INFO 320 week 1 waiting 13 www.ischool.drexel.edu Process management • Having multiple processes leads to the need for scheduling • Processes are assigned priorities • CPU time goes to highest-priority process that is ready INFO 320 week 1 14 www.ischool.drexel.edu Interrupts • An interrupt is a signal informing a program that an event has occurred – Interrupts are handled by the OS kernel, and may come from software or hardware • When an interrupt is received, the hardware suspends whatever program is running, and might take other actions INFO 320 week 1 15 www.ischool.drexel.edu Interrupts • Hardware interrupts might include – Keystrokes – Inputs from other devices (mouse, printer, etc.) • Software interrupts include – A program needs to get to hardware (save a file) – Program needs more memory INFO 320 week 1 16 www.ischool.drexel.edu Memory management • The OS kernel includes a memory management unit (MMU) – This makes it possible for several processes to share main memory – An application deals with logical memory addresses – The MMU deals with physical addresses INFO 320 week 1 17 www.ischool.drexel.edu Memory management • The kernel protects memory usage via swapping, paging, and segmentation • Swapping is when a process is temporarily moved to a backing storage location – The process is swapped out to storage, then back in INFO 320 week 1 18 www.ischool.drexel.edu Memory management • Paging manages physical memory space – Physical memory is divided into frames – Logical memory is divided into pages – Frames and pages have the same size, defined by the hardware involved INFO 320 week 1 19 www.ischool.drexel.edu Memory management • Segmentation is the mapping of logical address space for each process into segments – A segment table keeps track of each segment’s name, length, and the offset to find its physical memory location • Attempts to address other memory locations results in a segmentation fault interrupt INFO 320 week 1 20 www.ischool.drexel.edu Storage management • All OS’s need a way to access stored data • Data is stored on devices using files and directories • Files are structured to allow fast access, improve reliability, and make efficient use of space • A file system is a method for storing and organizing data INFO 320 week 1 21 www.ischool.drexel.edu Storage management • OS activities include – Create and delete files and directories – Manipulate files and directories – Back up files onto storage media • UNIX and Linux support Virtual File Systems (VFS) – Allows interoperability with Mac and Windows, transparent to the user INFO 320 week 1 22 www.ischool.drexel.edu Storage management • File system examples – Solaris uses Unix file system – Linux uses extended file system (ext4) – MS-DOS used File Allocation Tables (FAT) – Mac OS used Hierarchical File System (HFS), and now supports Unix file systems – Windows NT/XP/Vista/7 use NT File System (NTFS) INFO 320 week 1 23 www.ischool.drexel.edu Device drivers • Device drivers allow software to communicate with specific kinds of hardware • Each OS has drivers for each device • Hardware manufacturers develop drivers INFO 320 week 1 24 www.ischool.drexel.edu Networking • Most OS’s support various networking protocols, both open source and proprietary formats – What networking protocols might you expect to be supported? • Various network architectures are also supported – Client/server, peer to peer, hybrid INFO 320 week 1 25 www.ischool.drexel.edu Security • Within a network, the server OS is a critical security component – Controls access to processes, and data • Networking aspect also affects external security threats – Denial of service, worms, Trojan horses, etc. INFO 320 week 1 26 www.ischool.drexel.edu Security • Within a network, security is controlled by user and group identification – User has a user ID – Belongs to a group which has a group ID – Anyone else is considered ‘other’ = outside your group INFO 320 week 1 27 www.ischool.drexel.edu Security • Each file and directory can be controlled to have different privileges for user, group, and other (u-g-o) • The allowed privileges are – read – write (includes create, modify, or delete) – execute (application or script) INFO 320 week 1 28 www.ischool.drexel.edu OS Examples • Microsoft Windows – Huge worldwide market share – Windows NT is the basis for Windows 2000, XP, Vista, and 7, plus Windows Server 2003 and 2008 INFO 320 week 1 29 www.ischool.drexel.edu OS Examples • Unix – Now over 40 years old, the longest lived family of operating systems – Mainly used in business and academia • • • • • Sun Solaris (was SunOS) HP HP/UX IBM AIX SGI IRIX (obsolete) NeXT (obsolete, but basis for Mac OS X) INFO 320 week 1 30 www.ischool.drexel.edu OS Examples • Unix-like variants – Linux – FreeBSD – openSolaris INFO 320 week 1 31 www.ischool.drexel.edu OS Examples • Macintosh – System 1-9 – OS X and OS X Server (based on BSD Unix) • Mainframe OS’s – OS/400 (IBM AS/400) – DEC VMS and openVMS – OS/360 (IBM mainframes e.g. RS/6000) INFO 320 week 1 32 www.ischool.drexel.edu OS Examples • Google Chrome – Based on Linux – All apps other than the OS kernel will be delivered in a web browser – Apps and data are in the cloud, not locally INFO 320 week 1 33 www.ischool.drexel.edu OS Examples • Real time OS’s – Typically used when time-predictable response to many inputs are needed • Video or audio processing, system control software, many complex hardware/software systems – There are real time versions of Linux, and many other custom OS’s INFO 320 week 1 34 www.ischool.drexel.edu