operating systems course class 1/spring 2013. teacher: pekka [email protected] skype...

23
Operating systems course Class 1/spring 2013

Upload: haylie-flynt

Post on 01-Apr-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

Operating systems courseClass 1/spring 2013

Page 2: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

2

Teacher: Pekka

[email protected]• Skype pmakkone• http://fi.linkedin.com/pub/pekka-makkonen/

24/643/155• Room 1.242• Here at TTC until next summer• Tenure lecturer’s position at the University of

Jyvӓskylӓ in Finland (www.jyu.fi)

Page 3: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

3

Course content• Introduction• Windows• Processes (next week)• THREADS, SMP, AND MICROKERNELS• CONCURRENCY: MUTUAL EXCLUSION AND

SYNCHRONIZATION• CONCURRENCY: DEADLOCK AND STARVATION• Linux• … (to be updated)

Page 4: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

4

Teaching and learning methods

• Lectures (as short as possible)• Exercises• Presentations– Oral– On the web

• Self-study (for exam especially)

• The keypoint is collaborative learning

Page 5: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

5

Evaluation

• Exam 60%• Exercises 30%• Presence 10%

Page 6: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

6

Reference material

• Tanenbaum, A.S. Modern operating systems (latest edition). Pearson.

• Harris, J. A. Operating systems (latest edition). McGraw-Hill

• Material from related course in Finland and other countries

Page 7: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

7

Today

• Questionnaire• Introduction• Studying and slide creating exercise• Collecting your emails that you can join our

wikispaces sites

Page 8: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

8

• Today, a computer quite often consist of more than one processors, main memory, disks( Harddisk drives (HDD), memory sticks etc.), a keyboard, a mouse, a display, network interfaces and other input/output devices.

Page 9: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

9

• Windows, Unix, Linux, FreeBSD or Mac OS X or Android and Symbian– Different versions for different purposes• For example Linux

– Redhat (for servers)– Ubuntu (for personal computers)– Android (for mobile)

– Comparing personal computers and servers– It may be good if you use Windows on your personal

computers and Linux on servers. You must also think about security issues and Linux is more safe and that it is good for servers used by many users.

Page 10: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

10

• Shell - text based input– In Windows use the command cmd to go to text-

based input– You can use old DOS commands such as DIR– In Ubuntu version of Linux you have similar

terminal• GUI (Graphical User Interface) - icon, menu

based

Page 11: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

11

• An operating system is the most fundamental software and runs in kernel mode (supervisor mode).As supervisor , it can execute privileged operations

Page 12: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

12

What is an operating system?

• It is software that runs in kernel mode• Provides application programmers a clean abstract

set of resources instead of a messy hardware ones• Manages hardware• Abstraction is the key to managing complexity. Good

abstraction turns a nearly impossible task into two manageable ones. The first one of these is defining and implementing the abstraction. The second one is using these abstractions to solve the problem at hand.

Page 13: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

13

• A typical abstraction is a file, or as we handled last term in data structures und algorithms unit things like stacks and linked lists– Application in use is divided into many processes

when used on a computer. Each process includes process control block and those process control blocks are in stacks on a computer

Page 14: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

14

• The job of the operating system is to create good abstractions and then implement and manage the abstract objects thus created.

Page 15: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

15

• Example of abstraction : Linux user running Gnome (http://en.wikipedia.org/wiki/GNOME) or KDE (http://en.wikipedia.org/wiki/KDE) sees a very different interface than a Linux user working directly on top of the underlying (text-oriented X Window System), but the underlying operating system abstractions are same in both cases.

Page 16: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

16

We can look at an operating system from an alternative view

• Than a operating systems function is to provide an orderly and controlled allocation of the processors, memories, and I/O devices among the various programs competing for them.

Page 17: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

17

For example

• the print manager manages a print queue to ensure that complete print jobs are printed if a printer is shared with other users/ computers. When a computer or network has multiple users, the need for managing and protecting the memory, I/O devices, and other resources is even greater, since the users often need to share not only hardware, but information (files, data bases, etc.) as well.

Page 18: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

18

Multiplexing

• An operating system multiplexes hardware resources.

• Time Multiplexing: – E.g., The operating system allocates the CPU to one

task at a time, but to each task in its turn. • Space Multiplexing – E.g., The operating system allocates a part of the

memory to each task.• http://www.comsci.us/os/notes1/ch01.html

(accessed Dec 31, 2012)

Page 19: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

19

History of Operating Systems

• The first generation 1945-55 with vacuum tubes

• The second generation 1955-65 Transistors and batch systems

• The third Generation 1965-1980 ICs and multiprogramming

• The fourth Generation 1980-present – Personal Computers

Page 20: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

20

Exercises/Exercise 1

• You will be divided in small groups (6 people in one group)– Tell Pekka the names in your group

• Visit http://os-ttc-13.wikispaces.com/• Read this material and possible additional material

– Select you task and alternate task• Inform Pekka about your task selection (task choices are on next slide)• Study your topic using google. Clarify the following things

– What is the meaning of your concept or technology in practice (your slide 2)?– How does a computer benefit from your technology? (your slide 3)– How does your concept or technology is connected to other concepts and

technologies? (your slide 4)

• When ready, you must present these what you have learnt by using slides (see next pages)– We will talk about your presentations next time

Page 21: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

21

Topics

• Option 1 Shell text-based input• Option 2 GUI (Graphical User Interface)• Option 3 Kernel mode• Option 4 Abstraction• Option 5: Multiplexing

Page 22: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

22

Your slides• Start slides including the main title and the names in your group• Slide 2 (What is the meaning of your concept or technology in

practice)• Slide 3 (How does a computer benefit from your technology?)• Slide 4 (How does your concept or technology is connected to

other concepts and technologies?)• Slide 5 (Summary-you should summarize your presentation-all

the things together)• Slide 6 Report how different members in your group participated

in the group work. Mention each member separately.

Page 23: Operating systems course Class 1/spring 2013. Teacher: Pekka Pekka.Makkonen@ttcollege.edu.sa Skype pmakkone  makkonen/24/643/155

23

Wikispaces• Join Wikispaces if not done before– http://www.wikispaces.com/content/student

• You can go to http://os-ttc-13.wikispaces.com/ and ask for the invitation there

Please notice in this course all the material will be given through http://os-ttc-13.wikispaces.com/

You must download all the material immediately when published. We do not give softcopies (papers).