Oregon Institute of Technology
Computer Systems Engineering Technology
CST 352 – Operating Systems
James N. Long
Office: Purvine Hall #179
Office Phone: 885-1580
Web Page: http://www.jnltech.com
Operating Systems Concepts -Essentials
"We eat our own dog food."
The blue screen of death happens for a reason. The third law of software dynamics applies greatly to the operating system. In software engineering, our systems are transformed from order (a beautifully architected PCB and deterministic finite state machines), to disorder (throw in preemptive multitasking and things go non-deterministic). Complete understanding of this phenomenon is the goal of this course. The underlying structure of the OS should not be a mystery to any developer in Computer Science. When your computer "blue-screens", you should have a basic understanding of the information is presenting. You will develop a preemptive multitasking OS kernel then use it to solve some basic problems.
"We eat our own dog food."
The problems presented in this course are intended to be “real-world” problems in content and scope. Operating systems are difficult to program, develop, and most of all, debug. EXPECT TO SPEND LARGE AMOUNTS OF TIME ON THE PROJECTS AND ENCOUNTER PROBLEMS THAT REQUIRE RESEARCH AND PERSISTENCE TO SOLVE. This course will challenge your current knowledge of C and C++. Bad habits will bite you and cause you grief.
Catalog Description: Issues in operating system design. Topics include supervisor calls, concurrent programming, semaphores, interrupt handling. Study of primary and secondary memory management, file systems, deadlock detection and prevention, and operation system security.
Prerequisite: CST 211 – pass with a C or better.
The course will focus on operating systems theory from the hardware layer through the system call and application layer support. Labs are intended to support the theory presented in lecture. Homework assignments will focus on implementation of different OS components. The problems will be difficult and require persistence, creative problem solving, and hard work.
COURSE REQUIREMENTS Objectives/Outcomes that are expected of students entering this course.
COURSE OBJECTIVES and OUTCOMES
At completion of this course, the students shall:
Every student is responsible for all information contained in the assigned reading material. Questions for exams will be taken from the text material, lecture notes, handouts, homework assignments, and laboratory exercises. Students should attend all class sessions. Homework will be handed in electronically and is due by midnight of the due date. Programming assignments must be received in a format that can be easily used by the professor and/or grading assistants. IT IS THE RESPONSIBILITY OF THE STUDENT TO MAKE SURE ALL ASSIGNMENTS TURNED IN ARE ACCOUNTED FOR AND GRADED. If there are any circumstances related to the due date of assignments, turn assignments in early rather than late. Students must attend the lab to receive credit for in-lab exercises.
ASSIGNMENTS WILL NOT BE ACCEPTED LATE UNLESS THERE ARE COMPELLING REASONS WHY THE ASSIGNMENT CANNOT BE COMPLETED ON-TIME.
Programs will be graded on:
Homework hand-in requirements:
All programs and code must be sent in the following format:
CST352 HW Assignment #x – first name and last name of team members.
Failure to do this will result in the assignment being discarded.
Students using platforms other than platforms supported in the labs must OK their environment with the instructor prior to handing in the first assignment.
Students are required to work on their assignments independently. Each assignment should reflect individual effort. Programs received that are determined to be duplicate will be consider to be copies. Do not leave copies of your work in the labs where they can be obtained. Each student is individually responsible for the well-being of their work.
The course grade is based upon the student’s attainment of points over the following allocation:
Console and Shell
Participation is a variable point assignment by the instructor. The points are designed to reward students who 1) attend and participate in class and 2) contribute to group discussion.
The grade breakdown will be:
>= 90% A
>= 80% B
>= 70% C
>= 60% D
< 60% F
Any student with a disability who anticipates a need for accommodation is this course is encouraged to talk with the instructor about those needs as soon as possible.