1 operating systems. 2 course information 1. operating systems: internals and design principles,...

27
1 Operating Systems

Upload: shona-poole

Post on 12-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

1

Operating Systems

2

Course Information1 Operating Systems Internals and Design Principles William Stallings Prentice Hall

httpWilliamStallingscomOS4ehtml2 操作系统教程(第三版)孙钟秀等高等教育出版社本书的电子版教材和讲稿会被放在网络教学平台上

3 推荐学有余力的同学自行阅读关于MINIXLINIXUNIX内核分析的书籍

3

课程学习目标 明确计算机操作系统的作用与功能 掌握操作系统实现的基本原理与方法

在微观上掌握设计实现各个操作系统模块的方法策略与算法

在宏观上掌握操作系统的结构和设计实现方法进一步了解大型软件系统的结构和设计实现方法

掌握并发程序设计的基本方法

4

Syllabus

An introduction to the principles underlying the design and the implementation of contemporary computer operating systems

Class designed for students majoring in Computer Science or in areas having a strong emphasis in Computer Science

5

At the end of the course the student should have a basic understanding of Design and implementation issues of contemporary

operating systems Detailed analysis of process multithreading

symmetric multiprocessing and microkernels Memory management techniques including virtual

memory Various approaches to process scheduling Operating system control of InputOutput Operating system management of files

Syllabus (continuedhellip)

6

Prerequisites

Knowledge of C C++ Java Ability to complete large programming

project Understand existing framework Design system solutions to particular problems

Able to use Windows Unix Linux MacOS hellip

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 2: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

2

Course Information1 Operating Systems Internals and Design Principles William Stallings Prentice Hall

httpWilliamStallingscomOS4ehtml2 操作系统教程(第三版)孙钟秀等高等教育出版社本书的电子版教材和讲稿会被放在网络教学平台上

3 推荐学有余力的同学自行阅读关于MINIXLINIXUNIX内核分析的书籍

3

课程学习目标 明确计算机操作系统的作用与功能 掌握操作系统实现的基本原理与方法

在微观上掌握设计实现各个操作系统模块的方法策略与算法

在宏观上掌握操作系统的结构和设计实现方法进一步了解大型软件系统的结构和设计实现方法

掌握并发程序设计的基本方法

4

Syllabus

An introduction to the principles underlying the design and the implementation of contemporary computer operating systems

Class designed for students majoring in Computer Science or in areas having a strong emphasis in Computer Science

5

At the end of the course the student should have a basic understanding of Design and implementation issues of contemporary

operating systems Detailed analysis of process multithreading

symmetric multiprocessing and microkernels Memory management techniques including virtual

memory Various approaches to process scheduling Operating system control of InputOutput Operating system management of files

Syllabus (continuedhellip)

6

Prerequisites

Knowledge of C C++ Java Ability to complete large programming

project Understand existing framework Design system solutions to particular problems

Able to use Windows Unix Linux MacOS hellip

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 3: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

3

课程学习目标 明确计算机操作系统的作用与功能 掌握操作系统实现的基本原理与方法

在微观上掌握设计实现各个操作系统模块的方法策略与算法

在宏观上掌握操作系统的结构和设计实现方法进一步了解大型软件系统的结构和设计实现方法

掌握并发程序设计的基本方法

4

Syllabus

An introduction to the principles underlying the design and the implementation of contemporary computer operating systems

Class designed for students majoring in Computer Science or in areas having a strong emphasis in Computer Science

5

At the end of the course the student should have a basic understanding of Design and implementation issues of contemporary

operating systems Detailed analysis of process multithreading

symmetric multiprocessing and microkernels Memory management techniques including virtual

memory Various approaches to process scheduling Operating system control of InputOutput Operating system management of files

Syllabus (continuedhellip)

6

Prerequisites

Knowledge of C C++ Java Ability to complete large programming

project Understand existing framework Design system solutions to particular problems

Able to use Windows Unix Linux MacOS hellip

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 4: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

4

Syllabus

An introduction to the principles underlying the design and the implementation of contemporary computer operating systems

Class designed for students majoring in Computer Science or in areas having a strong emphasis in Computer Science

5

At the end of the course the student should have a basic understanding of Design and implementation issues of contemporary

operating systems Detailed analysis of process multithreading

symmetric multiprocessing and microkernels Memory management techniques including virtual

memory Various approaches to process scheduling Operating system control of InputOutput Operating system management of files

Syllabus (continuedhellip)

6

Prerequisites

Knowledge of C C++ Java Ability to complete large programming

project Understand existing framework Design system solutions to particular problems

Able to use Windows Unix Linux MacOS hellip

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 5: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

5

At the end of the course the student should have a basic understanding of Design and implementation issues of contemporary

operating systems Detailed analysis of process multithreading

symmetric multiprocessing and microkernels Memory management techniques including virtual

memory Various approaches to process scheduling Operating system control of InputOutput Operating system management of files

Syllabus (continuedhellip)

6

Prerequisites

Knowledge of C C++ Java Ability to complete large programming

project Understand existing framework Design system solutions to particular problems

Able to use Windows Unix Linux MacOS hellip

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 6: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

6

Prerequisites

Knowledge of C C++ Java Ability to complete large programming

project Understand existing framework Design system solutions to particular problems

Able to use Windows Unix Linux MacOS hellip

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 7: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

7

Organization and Grading This class consists of lectures homework

programming assignments and a final exam Each has a weighted contribution to your final grade Homework and Participation 10 Programming Assignments 30 Final Exam 60

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 8: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

8

Homework and Participation (10) Homework is designed to reinforce class

material and help in exam preparation Each homework consists of 10+ questions

and covers the material from the previous class discussion

Any homework submitted after the due date will lose 50 per week (After 1 week an assignment has no grading value)

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 9: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

9

Programming Assignments (30)

There are three programming assignments (10 each) designed to emphasize topics discussed in class

The programming assignments are done in teams of 3 students

Programming assignments can be found on the class web site (httpsoftwarenjueducnxli)

Programming assignments must be passed off by a TA during regular TA hours in the TA offices or class programming labs

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 10: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

10

Programming (continuedhellip)

To receive full credit programming assignments must be completed and passed off with a ldquoDate Modifiedrdquo timestamp on or before the due date

Any assignment completed and passed off after the due date will lose 10 per school day (After 2 weeks an assignment has no grading value)

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 11: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

11

Final Exam (60)

The final exam are administered in the school

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 12: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

12

Programming Environmentshellip Programming of the assignments will be

done in any programming language The choice of the software tools and

programming environment is left to the studentrsquos discretion

In any case it is the studentrsquos responsibility to present their work to a TA in the designated lab for pass off

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 13: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

13

Academic Honesty

Academic honesty includes completing your own homework labs and final

Students should work together to help each other understand material but should always turn in their own work

Examples of academic dishonesty include sharing code for labs with other students turning in someone elses writing as your own report and cheating on an exam

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 14: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

14

Miscellaneous

TArsquos Help sessions Office hours Linux vs Microsoft users Questions

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 15: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

15

Abstract View of System Components

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 16: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

16

Operating Systems

What is an operating system Hard to define precisely because operating

systems arose historically as people needed to solve problems associated with using computers

How abouthellipldquoSoftware that makes computing power available to users

by controlling the hardwarerdquo

ldquoSoftware executes when nothing else is happeningrdquo

ldquoA collection of software modules including device drivers libraries and access routinesrdquo

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 17: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

17

What does a modern operating system do

Provides Abstractions Hardware has low-level physical resources with

complicated idiosyncratic interfaces OS provides abstractions that present clean interfaces Goal make computer easier to use Examples Processes Unbounded Memory Files

Synchronization and Communication Mechanisms

Provides Standard Interface Goal portability Unix runs on many very different computer systems

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 18: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

18

What does a modern operating system do Mediates Resource Usage

Goal allow multiple users to share resources fairly efficiently safely and securely

Examples Multiple processes share one processor (preemptable resource) Multiple programs share one physical memory (preemptable

resource) Multiple users and files share one disk (non-preemptable resource) Multiple programs share a given amount of disk and network

bandwidth (preemptable resource)

Consumes Resources Solaris takes up about 8 Mbytes physical memory Windows XP has 40 million lines of code

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 19: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

19

Where are OSrsquos Used

In more and more places 1048708 Desktop and Server Computers 1048708 DOS + Windows 9598ME 1048708 Windows NT2000XP 1048708 Free Unix variants Linux FreeBSD NetBSD etc 1048708 Commercial Unix variants Solaris HP-UX AIX etc 1048708 MacOS

Some Game Consoles 1048708 Xbox Cut-down Windows 2000

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 20: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

20

Where are OSrsquos Used

Personal Digital Assistants (PDAs) 1048708 PalmOS 1048708 Windows CE 1048708 Windows Mobile 1048708 Embedded Linux

1048708 Mobile Phones 1048708 Symbian OS 1048708 Windows Mobile

1048708 Cars (fancy ones)

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 21: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

21

Where are OSrsquos Used

In the future also 1048708 Digital Cameras (fancy ones) 1048708 MP3 Players (iPods etc) 1048708 Refrigerators 1048708 Others

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 22: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

22

Example OS PalmOS

Used for PalmPilot PDAs and successors

Multitasking since PalmOS 5

CPUs Intel XScaleTexas Instruments OMAP Motorola Dragonball MX

Wireless 80211b Bluetooth GSM CDMA

320times320+ displays Good battery utilisation

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 23: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

23

Example OS PalmOS

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 24: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

24

Example OS Symbian OS

Designed for mobile phones

Gives access to graphics multimedia networking telephony crypto

PC connectivity etc

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 25: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

25

Example OS Symbian OS

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 26: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

26

The Futurehellip

In the future computers will continue to become physically smaller and more portable

Operating systems have to deal with issues like disconnected operation and mobility

Media rich information within the grasp of common people - information with psuedo-real time components like voice and video

Operating systems will have to adjust to deliver acceptable performance for these new forms of data

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 27: 1 Operating Systems. 2 Course Information 1. Operating Systems: Internals and Design Principles, William Stallings, Prentice Hall,

27

Finally

Operating systems are so large no one person understands whole system Outlives any of its original builders

The major problem facing computer science today is how to build large reliable software systems

Operating systems are one of very few examples of existing large software systems and by studying operating systems we may learn lessons applicable to the construction of larger systems

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27