Introduction to Programming in Operating System | CMPSC 473, Study notes of Computer Science

Material Type: Notes; Class: Operating Systems Design & Construction; Subject: Computer Science; University: Penn State - Main Campus; Term: Unknown 1989;

Typology: Study notes

Pre 2010

Uploaded on 09/24/2009

koofers-user-b0p-1
koofers-user-b0p-1 🇺🇸

10 documents

1 / 37

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25

Partial preview of the text

Download Introduction to Programming in Operating System | CMPSC 473 and more Study notes Computer Science in PDF only on Docsity!

About Me

  • Trent Jaeger (PhD, University of Michigan)
  • Associate Professor, CSE -- after 9 years at IBM Research
  • Research: Operating System Security
  • Example Projects
    • L4 Microkernel -- minimal, high performance OS
    • Linux -- Open source, UNIX variant
    • Xen hypervisor -- Open source, virtual machine platform
  • Office Hours: Tu 4-5, W 1-2, or by appointment
  • Office: 346A IST Bldg
  • Email: [email protected]

Preliminaries

Course Requirements

• CMPSC 311

  • Intro to Systems Programming
    • C programming
    • Programming support tools
    • Common system functions
  • CMPSC 331
  • Computer Organization
  • Major components of a computer system
  • How a program is executed
  • ‘C’ or better grade in both

Course Mailing List

  • Via ANGEL
    • Use with care
  • I will send a test email
    • Please reply if you do not receive by Fr
    • May need to forward to your CSE account
  • Can use to email me or the TA
    • Please use “473” in the subject

Grading

• Midterms (2): 30%

• Projects (4): 35%

• Final Exam: 25%

• Quizzes and Participation (?): 10%

Late Policy

• Strict Deadline!

  • Due at beginning of class (1pm)

• For projects: Loss @ 20% per day

• Inform TA in advance for late project

submission

• Inform TA of exam conflicts

Projects

  • 70-85% grade on how functional your project is
  • The other 15-30% on your write-up
    • We will give instructions on what we expect when we make the projects available
  • Computing Environment
    • Test in Linux
    • Email me or the TA if you don’t have an account or have any doubts/problems

Background

  • First course on algorithms and data structures
  • Comfortable programming in C
    • Comfortable with a UNIX debugger like gdb
  • Preliminary understanding of computer architecture
  • We will cover some basics in this course
    • Talk to me if you have doubts

Before We Begin…

Some Advice

  • Speak up in class, ask questions
  • Attend all classes
    • Slides are only an outline
  • Bring printouts to class and take notes on them
  • Read text-book soon after class
    • Sections to read will be made available on the Web site alongside lecture notes
    • Even better: read before class and ask questions

Operating System Views

• User view

  • How do you view an OS?

• System view

  • Manage the resources
  • For the processes

Computer System

Operating System History

• 1950s : Simplify operators’ job

• 1960s : Structure, concepts, everything

• 1970s : Small and flexible (UNIX)

• 1980s : Individual user systems (PCs)

• 1990s : Internet, Windows

• 2000s : Security

Operating Systems

1950s

  • Primitive systems
    • Little memory, programs stored on tape
  • Single user
    • Batch processing
    • Computer executes one function at a time
  • No overlap of I/O and computation