0% found this document useful (0 votes)
4 views

Lect_01_Introduction

The document outlines the course structure for an Operating Systems class (CS F372) taught by Biju K Raveendran at BITS Pilani Goa, including class timings, exam schedules, and grading policies. It details the course administration, including required textbooks, project assignments, and malpractice regulations. Additionally, it provides an introduction to operating systems, their functions, types, and the goals they aim to achieve in managing hardware resources.

Uploaded by

f20212684
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Lect_01_Introduction

The document outlines the course structure for an Operating Systems class (CS F372) taught by Biju K Raveendran at BITS Pilani Goa, including class timings, exam schedules, and grading policies. It details the course administration, including required textbooks, project assignments, and malpractice regulations. Additionally, it provides an introduction to operating systems, their functions, types, and the goals they aim to achieve in managing hardware resources.

Uploaded by

f20212684
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

OPERATING SYSTEMS CS F372

BIJU K RAVEENDRAN & TEAM

LECT #01: INTRODUCTION


Instructor
• Biju K Raveendran
–Chamber: D-248
–e-mail: [[email protected]]
–Dept. CS & IS

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 2


Policies to follow

• Class Timings [DLT8]


– Monday, Wednesday and Friday
– 04:00 P.M to 04:50 P.M
• Tutorial Timing [DLT8]
– Tuesday 4:00 P.M to 4:50 P.M
• Whenever tutorial is required corresponding Lecture will
be converted into tutorial. All classes are otherwise
Lecture classes.
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 3
Course Administration
• Mid Semester Exam: [25%] [Closed Book]
– 05/03/2025, Wednesday, 2:00 PM – 3:30 PM
• Onlines & Projects: [30%] [Open Book]
– Online #1: Abstract Data Type [Files and String Operations] 5%.
– Online #2: Process [fork, wait, shared memory, signals etc.] 8%.
– Online #3: Threads and Synchronization [pthread library, semaphore
library etc.] 7%
– Project #1: Kernel Recompilation with a new System call 4%
– Project #2: Implementation of Device Driver in Linux [Group
Assignment] 6%
• Attendance: [10%]
• Comprehensive Exam: [35%] [Closed Book] 10/05/2025, AN
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 4
Course Administration
• Material and Notices: Quanta / Quantaaws
• Text Book
– Operating System Concepts, 9th Edition by Silberschatz, Galvin
& Gagne
• Reference Books
– Operating Systems Internals & Design Principles, Stallings
– The Design of the Unix Operating System, Bach
– Advanced Programming in the UNIX environment, Richard
Stevens
– Linux Kernel Development, Robert Love
– Understanding the Linux Kernel, Daniel P. Bovet
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 5
Malpractice Regulation – Assignments / Labs
• First time: Negative (weightage of component)
– Will be blacklisted
• Repeatedly [across all courses]: will be reported to Examination sub-
Committee for further action
• A mal-practice - in this context - will include [not limited to]:
– Copying / Submitting some other student’s solution(s)
– Seeing some other student’s solution [during online]
– Using ChatGPT / Other AI tools to solve the problem
– Permitting some other student to see/copy your solution
– Other equivalent forms of plagiarism
• Getting it done by friends / seniors, with the help of forums and
other internet sources]
– The degree of mal-practice [size and # of students] will not be
considered as mitigating evidence
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 6
Course Outline
• Operating Systems [approx. 8 lectures]
– Types, Structure & Services, Protection, System calls
• Process Management [approx. 12 lectures]
– Process, IPC, Threads
• CPU Scheduling [approx. 8 lectures]
• Concurrent Processes [approx. 10 lectures]
– Synchronization and Deadlocks
• Memory Management [approx. 10 lectures]
– Memory management strategies – Paging, Segmentation; Virtual
memory management
• Storage Management [If time permits]
– File systems, Disk structure, Disk Scheduling, RAID and I/O system
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 7
Introduction
• What is Operating Systems?
– Single most complex & essential software
– Interface between user & computer hardware
• What does it do? How does it help?
– Helps user by making the system convenient to use
– Helps programs run by providing resources &
protecting them
– Helps system by keeping things running smoothly
– Helps user programmer to do his job efficiently
– Uses computer hardware efficiently
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 8
[T1 Ch1]Abstract View of System Components

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 9


Goals of an Operating System
• Manages hardware resources so that the system
operates smoothly, efficiently, reliably and securely
• Presents abstract system model to programmer that
promotes simple and convenient access and control of
resources
• Maximize resource utilization [CPU, memory, I/O]
• OS must contain functions needed by many programs
– I/O device control, memory allocation etc.
– Maximum number of programs must get the benefit
– OS must not become bulky
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 10
Application’s Expectation from OS
• Hardware abstraction for convenience and
portability
• Effective and Efficient use of hardware with
maximum multiplexing among applications
• Protection of correctly running applications
from malicious ones
• Allow maximum sharing among application

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 11


What if NO Operating System?
• All we have is a bare hardware
• We need a mechanism to
– Load the program into memory
– Run the program & Store the result in persistent storage
– Unload the program to release memory [for the next
program to use]
• For doing all these functions we need at least a minimal OS
– It must be the resident code that run by default
– Allow us to load program and run by allotting necessary
resources
– After completion of the user program control must come
back to the operating system
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 12
Types of Operating Systems
• Main frame systems
• Batch, Multi-programming and Multi-tasking system
• Multi programming
– Keeps multiple runnable jobs loaded in memory
– Overlaps I/O of a job with computation of another
– Benefits from I/O devices that can operate
asynchronously
– Requires the use of interrupts and DMA
– Optimizes system throughput (number of jobs finished
in a given amount of time) at the cost of response time
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 13
Example
• [0] J1 → 8 CPU, 4 I/O, 3 CPU
• [1] J2 → 5 CPU, 5 I/O, 9 CPU
• [2] J3 → 2 CPU, 2 I/O, 6 CPU

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 14


Types of Operating Systems
• Multi-tasking (Time Sharing) Systems
– Logical extension of multi-programming system
– A time unit is divided into small slices and each user can
be allocated CPU
– Allows many users to share the computer simultaneously
– Uses multiprogramming and CPU scheduling
• CPU is multiplexed among several jobs
– Time sharing machine with Interactive I/O devices
improves user response time
– Gives illusion that each user has his own machine
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 15
Example
• [0] J1 → 8 CPU, 4 I/O, 3 CPU
• [1] J2 → 5 CPU, 5 I/O, 9 CPU
• [2] J3 → 2 CPU, 2 I/O, 6 CPU

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 16


Types of Operating Systems
• Multi-user Operating Systems
– Multiple users can work concurrently with data and
application protection.
• Uni-core Systems [Uni-processor]
– Stored program [Von Neumann / Princeton
architecture]
– Harvard Architecture
– Modified Harvard Architecture
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 17
Types of Operating Systems
• Uni-core, Multi-core, Multi-processor
– Registers, TLB, [L1, L2, L3] caches, Main Memory
– i3 [Hyper thread], i5 [Turbo boost], i7 [Both] and
i9 processors [both with 2turbo boost
frequencies]

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 18


Types of Operating Systems
• Systems with graceful degradation [with hardware
failures] and systems with fault tolerance
• Increased throughput, reliability, [Economical]
• Multi-processor [Tightly coupled system]
– Asymmetric
• Each processor is assigned a specific task [Co-processors]
– Symmetric [SMP]
• Local registers and cache for each processor but connected
with a common shared memory

Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 19


Types of Operating Systems
• Multi-processor
– Memory Model
• UMA (Uniform Memory Access)
• NUMA (Non-Uniform Memory Access)
• NORMA (No Remote Memory Access)
• Distributed Systems [Loosely coupled system]
– Example: Client – Server systems and Peer to Peer system
– Server systems can be Compute servers or File servers
– Enables parallelism but speedup is not the goal
– Adv: Resources Sharing, Computation speed up – load sharing,
Reliability, Communications
Tuesday, January 7, 2025 Biju K Raveendran @ BITS Pilani Goa 20

You might also like