You are on page 1of 7

LAB 01

Title: Introduction to Operating Systems An Operating System, or OS, is low-level software that enables a user and higher-level application software to interact with a computers hardware and the data and other programs stored on the computer. An OS performs basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as printers.

Figure 1: Functions of an operating system

1. Operational View: Current systems are based on The Von-Neumann principle. The principle states that a program is initially stored in memory and executed by fetching an instruction at a time. The basic cycle of operation is Fetch an instruction (Fetch) Interpret the instruction (Decode) Execute the instruction (Execute)

Figure 2: Operating Cycle

OS need to schedule the processor amongst all the application simultaneously without giving an impression that the processor time is being divided and scheduled per an application. An Operational Overview: Processor schedule and allocate processor time. Memory executes program and access data Input output devices Communication with devices Mutual exclusion schedule the usage of shared device and fair access Shell of an OS Human computer interface (HCI/CHI)

2. Computer system components: Hardware: Provides basic computing resources. (CPU, Memory, I/O Devices) Operating system: Controls and coordinates the use of hardware among various application programs for various users. Application Programs: define the way in which system resources are used to solve the computing problems of the users. (Compilers, database systems, video games) Users: People, Machine, other computers

Figure 4: Layer structure of computer components

Figure 5: User / Hardware Interaction

3. Operating system components: The components of an operating system all exist in order to make the different parts of a computer work together.

Resource allocator: manages and allocate resources. Control program: controls the execution of user programs and operation of I/O Devices. Kernel: The kernel is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources (the communication between hardware and software components)

Figure 6: Functionality of kernel 4. Types of OS Microsoft Windows Mainframe DOS Linux Mac OS

5. Classifications of Operating System Operating systems are classified on the basis of following criteria. Multi-Processor/Single processor Multi-User / Single User Multi-Task / Single-Tasking Multi-Thread / Single-Thread Real-Time

i.

Real-Time A real-time operating system is a multitasking operating system that aims at executing real-time applications. The main objective of real-time operating systems is their quick and predictable response to events. They have an event-driven or time-sharing design and often aspects of both. An event-driven system switches between tasks based on their priorities or external events while time-sharing operating systems switch tasks based on clock interrupts.

ii.

Multi-User A multi-user operating system allows multiple users to access a computer system at the same time. Timesharing systems and Internet servers can be classified as multi-user systems as they enable multiple-user access to a computer through the sharing of time. Single-user operating systems have only one user but may allow multiple programs to run at the same time.

iii.

Multi-Tasking A multi-tasking operating system allows more than one program to be running at a time, from the point of view of human time scales. The operating system slices the CPU time and dedicates one slot to each of the programs

iv.

Single-Tasking A single-tasking system has only one running program at a time

v.

Multi-Threading Multithreading extends the idea of multitasking into applications, so you can subdivide specific operations within a single application into individual threads. Each of the threads can run in parallel. The OS divides processing time not only among different applications, but also among each thread within an application.

Lab Task:
(Note: All Lab exercises must be submitted in hand written form) 1. Specify which of the following Operating systems are multi-User/ single-user, multi-task/single-task, multi-thread/single-thread, multi-processor/single-processor, real-time?
Microsoft Windows Multi-User Multi-Task Multi-Thread Multi-Processor Real Time Linux Mainframe DOS MAC

You might also like