CSC 244 Concepts & Facilities of Operating Systems

The history and evolution of operating systems, concepts of process management, memory addressing and allocation, files and protection, deadlocks and distributed systems. 3 credit hours.

 
   
   
Prerequisite
 

CSC 234


Course Objectives  

Upon successful completion of this course, a student will be able to...

  • Processes and Threads . describe states and transitions of processes/threads; explain non-local transfers of control; determine context switching details.
  • Synchronization . list different synchronization models; explain the operational characteristics of these models; use these facilities in concurrent programming models; contrast these models; utilize synchronization for contemporary architectures; select a suitable synchronization paradigm for a given problem.
  • Virtual Memory . reiterate the principles of hardware and software support for virtual memory; express operational properties of address translation; perform the calculations of address translation; predict the impact on TLB misses; judge the merits and shortcomings of virtual memory usage.
  • Scheduling . recite different scheduling paradigms; paraphrase qualitative and quantitative properties of these paradigms; derive a schedule for given parameters; model quantitative properties of scheduling paradigms; exploit existing scheduling models support by systems; contrast different scheduling approaches.

 

Textbook
 

Silberschatz, Galvin, and Gagne, Operating System Concepts Seventh Edition, John Wiley & Sons, Inc., ISBN 0-471-69466-5

Course Topics  
  • History and Vocabulary of Operating Systems
  • Overview of Computer Architecture and Operating System Architecture
  • Processes and Process Management
  • The Unix Process Model
  • Threads
  • POSIX Thread (pthreads) and Java Thread Creation
  • Process/Thread Scheduling
  • Real-time Scheduling
  • Process/Thread Synchronization and Communication
  • POSIX Threads (pthreads) and Java Thread Synchronization
  • Deadlocks
  • Memory Management
  • Virtual Memory

 

Course Requirements  

Grading

Work Total
Homework  50%
Tests Test 1 15% 30%
Test 2 15%
Final Exam  20%

Letter Grades

Letter grades will be assigned using the following:
Range Letter Grade*
98 <= X <= 100 A+
92 <= X < 98
90 <= X < 92 A-
88 <= X < 90 B+
82 <= X < 88
80 <= X < 82 B-
78 <= X < 80 C+
72 <= X < 78
70<= X < 72 C-
68 <= X < 70 D+
62<= X < 68
60<= X < 62 D-
X & lt; 60

* Additionally, in order to receive a grade of C- or better in the course, you must have at least a 65% average on the exams and at least a 65% average on the homework assignments. In order to pass the course with a D-, you must have at least a 60% average on the exams and at least a 60% average on the homework assignments.

Homework Assignments

Homework Percent Total Grade
History, Vocabulary, Architecture 10
Process Management 10
Processes and Threads: Creation and Communication 10
CPU Scheduling and Process/Thread Synchronization 10
Deadlocks and Memory Management 10

 

Software Requirements  

Access to a Unix/Linux platform (NCSU provides remote access http://www.eos.ncsu.edu/remoteaccess/ ) or use the NCSU Virtual Computing Lab: http://www.eos.ncsu.edu/remoteaccess/vcl.html

 

View Lecture  

Engineering Online uses Real Media software to distribute the course lectures. To view the following sample lecture, you will need to download RealOne Player and have a Cable, DSL, T1 or faster connection to the Internet. If you have problems viewing a lecture, please contact the Engineering Online office at 1-877-254-0058. Click the link below to download RealOne Player.

8.22 MB

Note: If you are behind a firewall, there is a chance you will not be able to access the files.

Click link to view lecture: CSC 244 - Lecture 1


Computer and Internet Requirements  

NCSU has recommended minimum specifications for computers used for classes. Depending on your computer needs, we recommend your computer meet or exceed the following minimum specifications below.

PCs must have an Intel-compatible 1 GHz processor, 512 MB RAM, 60 GB hard drive with 1 GB free space available, 256 Color Display, CD-ROM drive, 1024x768 (min.) video adapter, sound card, and speakers. The operating system should be Windows XP Pro. Real One Player Basic (available free online) and high speed Internet connection such as cable, DSL, T1 or LAN will be required for EOL courses.

MAC users must have a G4 processor with firewire and USB factory built-in, 512 MB RAM, 60 GB with 1GB free space available, 256 Color Display, CD-ROM drive, 1024x768 (min) video adapter, sound card, and speakers. The operating system must be MacOS 10.4 (minimum) along with the above RealOne and Internet specifications above.

For more detailed information on computer specifications and recommendations, please refer to our website at: http://engineeringonline.ncsu.edu/currentstudents/computeraccess.htm

 

Instructor  

Carolyn S. Miller, Lecturer
Dept. of Computer Science
Centennial Campus, EBII 2297
North Carolina State University
Raleigh, NC 27695-8206

Email: miller@eos.ncsu.edu
Phone: 919-515-2042