OperatingSystems-Lecture0 - KERG

reelingripehalfDéveloppement de logiciels

14 déc. 2013 (il y a 7 années et 7 mois)

215 vue(s)

Operating System Concepts and Techniques

Lecture 0


References and course plan



M. Naghibzadeh




Reference

M. Naghibzadeh, Operating System Concepts and Techniques, First ed. , iUniverse Inc., NY,2011.

To order:
www.iUniverse.com
,
www.barnesandnoble.com
, or
www.amazon.com

Course references

Naghibzadeh, M., Operating system concepts and techniques, First
edition, iUniverse Inc., New York, 2010.

Tanenbaum, A. S., Modern Operating Systems, Third edition, Prentice
Hall, Upper Saddle River, NJ, 2007.

Silberschatz, A., P. B. Galvin, and G. Gagne, Operating Systems
Concepts, Eighth edition, Addison
-
Wesley, 2008.

Stalling, W., Operating Systems, Seventh edition, Prentice Hall, 2011.

Vahalia, U., UNIX Internals: The New Frontiers, Prentice Hall, 2007.

Solomon, D. A., M. E. Russinovich, Inside Microsoft Windows 2000,
Third edition, Microsoft Press, Redmond, 2000.

Beck, M., H. Bohme, M. Oziadzka et al, Linux Kernel Programming,
Third edition, Addison
-
Wesley, Reading, MA, 2002.


2

Course Plan

Lecture 1: background and BIOS


The Fetch
-
Execute Cycle


Computer Hardware Organization


BIOS Actions



Power
-
On Self Test



BIOS Manufacturer’s Logo



Altering CMOS


The Operating System Boot Process



Think of Making Your Own Operating System

Lecture 2:

Multiprogramming, Multithreading, Multiprocessing


Process States in Single
-
Programming



The Multiprogramming Concept



Process State Transition Diagram



Process Switching



The Interrupt System



Direct Memory Access


3

Course Plan..

Lecture 3: Process


Process Attributes



System Calls



Process States and State Transition Model



Process Creation and Termination



Systems calls for process and child process creation



Common and special parts of Parent and Child Processes



Process
-
Based Operating Systems

Homework 1

Lecture 4: Thread


Thread Types


Common Settings for Sibling Threads


Thread Attributes


Thread States and the State Transition Model


System calls for thread Creation and Termination


Thread
-
Based Operating Systems

4

Course Plan..

Lecture 5: Scheduling
-
Part 1


Concepts


Objectives


Scheduling levels


Scheduling Algorithms: Single
-
Processor Systems


Process Scheduling in Linux

Lecture 6: Scheduling
-
Part 2 *


Analysis of Scheduling Algorithms


Multiprocessor Scheduling


Scheduling Algorithms for Multi
-
Processors


SMP Process Scheduling in Linux


Scheduling real
-
time processes

Homework 2



* You may skip this lecture

5

Course Plan..

Lecture 7: Turnaround time Computation + Disk I/O Scheduling


Turnaround time computation


FCFS, SPN, and RR


Disk I/O Scheduling


Disk properties


FiFo, LIFO, SSTF, Scan, and C
-
Scan schedulers


Lecture 8: Memory management


Older Memory Management Policies


Single Contiguous Memory management


Static Partition Memory Management


Dynamic Partition Memory Management


Partition allocation algorithms, First
-
fit, Next
-
fit, Best
-
fit, Worst
-
fit, and buddy
system


6

Course Plan..

Lecture 9: Memory management

part 2


Multiple Partition Memory Management


Segmentation Memory Management


Relocatable Partition Memory Management


Page Memory Management


Optimal

page size

Homework 3

Lecture 10: Virtual memory


Page
-
Based Virtual Memory Management


Address Translation


Page Removal Algorithms


Optimal Page Size


Multilevel Page
-
Table Page
-
Based Virtual Memory


Cache Memory


Windows Two
-
Level Page
-
Table Structure


The UNIX Memory Management


7

Course Plan…

Project announcement

Lecture 11: Memory management

part 4


Optimal Page replacement algorithm


Multilevel Page
-
Table Page
-
Based Virtual Memory


Cache Memory


Windows Two
-
Level Page
-
Table Structure


The UNIX Memory Management

Lecture 12:
Interprocess communication
-
1


The need for Process Communication/Synchronization


Race Condition


Critical Region


Mutual Exclusion


IPC and Synchronization Techniques


Disabling Interrupt Method


Busy
-
wait
-
base methods


Peterson’s method



8

Course plan…

Lecture 13: Interprocess communication
-
2


Busy
-
wait
-
base methods …


Dekker


Test and set lock


Swap (or exchange)


Semaphore
-
Based IPC


Producer
-
Consumer problem


Message
-
Based IPC


Lecture 14: Interprocess communication
-
3


Dijkstra’s solution


Monitor
-
based IPC


Message
-
Base IPC



9

Course plan…

Lecture 15: Deadlock and starvation
-
1


Deadlock conditions


Deadlock modeling


Deadlock prevention


Deadlock avoidance


Banker’s algorithm


Lecture 16: Deadlock and starvation
-
2


Deadlock detection and recovery


Circular

wait detection


Recovery


Starvation


Dining philosopher’s’ problem

Homework 4


10

Course plan…

Lecture 17: Information management
-
1* Foundations of
UNIX/Linux File systems


Storage media


File/directory attributes and data


Storage allocation


i
-
node


Looking for file/directory data

Lecture 18: Information management
-
2* FFS, USF2, and NTFS


Berkeley Fast File System


Unix File System 2


NTFS


Volume


Master file table


Accessing file/directory attributes and data



11