DOC PREVIEW
UNO CSCI 8530 - Course Notes

This preview shows page 1 out of 3 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 3 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 3 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Computer Science 8530 Course Notes, Page 1 Fall 2011UNIVERSITY OF NEBRASKA AT OMAHAComputer Science 8530Advanced Operating SystemsFall 2011Course NotesClass Meetings This class will meet from 5:30 PM to 6:45 PM in PKI 256 each Tuesday andThursday from August 23 through December 8, 2011, except for Tuesday, October 18(semester break) and Thursday, November 24 (Thanksgiving break).Instructor The instructor for this class is Professor Stanley Wileman. His office is PKI 281E.His phone number is 554-3583 (voice mail is never listened to or answered), and thedepartment’s telephone number is 554-2834. Electronic mail may be sent [email protected]; please use a subject that uniquely identifies the course (e.g.CSCI 8530), as this is not the only operating systems course being taught. Office hoursare 3:00 PM to 4:00 PM Tuesday and Thursday. Other office hours are available,preferably by appointment. Check the instructor’s web site (see below) for any changes tothis schedule.Prerequisites This course assumes students have a good understanding of basic operatingsystem principles similar to that provided by a traditional introductory undergraduateoperating systems course. In particular, the major functions of an operating system shouldbe familiar, as should the basic algorithms and techniques used for implementing them.Concepts of concurrent programming, including processes, threads, and variousmechanisms for interprocess communication should be familiar. In particular, it isexpected that students will have familiarity with the API for a traditional UNIX/Linuxoperating system, including such things as input/output and process management.Course Organization This course has two major parts. In the first part of the semester, thesource code for a small operating system called Tempo is examined in detail. While thissystem is not commercially viable, it does illustrate the implementation and problemsassociated with many major operating system concepts (e.g. interrupts, processes/threads,scheduling, memory management, process synchronization, file systems, device drivers).Various assignments will be given that require use and modification of the system. Thesecond part of the semester is an introduction to real-time programming and real-timesystems. The basic fundamentals of real-time systems and how they differ from non-real-time systems are covered. Building on basic understanding of the UNIX system API(actually, POSIX definitions of these), real-time extensions are covered in reasonabledetail. An introduction to the development of reliable systems is provided, and simpletechniques for improving system reliability are discussed. The fundamentals of real-timescheduling are covered, including such things as cyclic executives, rate monotonic anddeadline monotonic scheduling, and various algorithms for solving the priority inversionproblem. Several small real-time programming assignments are given, and a larger real-time project (sometimes involving external hardware such as motors, sensors, and soforth) will be assigned, time permitting.Computer Science 8530 Course Notes, Page 2 Fall 2011Textbook Text material for the course is provided by the instructor through the class web site(mentioned below). On-line reference material for the Intel IA-32 processor family,various system devices, and the QNX operating system is provided through the class website or in the Tempo operating system distribution.Web Sites The instructor’s web site is found at http://cs.unomaha.edu/~stanw.The web pages for the class will contain copies of material distributed in class, AdobeAcrobat versions of the Power Point class presentations, programming assignments, andother items of interest. The home page can be found athttp://cs.unomaha.edu/~stanw/113/csci8530/index.html. Studentsshould regularly refer to the web site for the latest information about the class.Grading Grades will be based on multiple components: several small Tempo assignments (15percent total), the Tempo project (25 percent), several small QNX/POSIX programmingassignments (15 percent total), the QNX/POSIX project (15 percent), a midtermexamination (15 percent), and a final examination (15 percent).Programming Assignments Programming assignments will vary significantly in difficultyand scope. Some (those involving Tempo) will require the use of a Windows or Linuxsystem, probably with the Cygwin and Bochs software installed, while others will requirethe use of the QNX operating system. Details will be provided with each assignment. Itwill likely be beneficial to install Cygwin, Bochs, and Tempo on a personal Windows-based PC to avoid the time required to install them on a public PC each time you want towork.Projects There are usually two major projects associated with this course, one using the Temposystem and the other using QNX. The Tempo project can be completed using either aWindows platform (with Cygwin) or a Linux platform; the Bochs software is highlyrecommended, and will be used in evaluating submitted work. Cygwin and Bochs areboth freely available on the Internet; details on their acquisition, installation and use aregiven in the Tempo distribution. The QNX project programming must be done on a QNXplatform, and a networked server is provided for student use. The QNX Neutrino systemwill be used to complete the programming components of the project and some of theassignments; details will be provided. Additionally, the QNX project may require the useof specialized external devices to be controlled in real time. There will be a limitednumber of these devices produced, and they will only be available in a PKI laboratory,use of which must be scheduled. Detailed instructions will be provided for those studentswho wish to attempt construction of their own copy of the external device.Computing Resources Accounts on the QNX server will be provided for use in completingthe assignments for the course. You are expected to be aware of, and abide by, the policyfor responsible use of university computers and information systems. It can be found athttp://www.nebraska.edu/about/exec_memo16.pdf.Attendance Expectations No record will be kept of student attendance in this class, nor willattendance itself be a direct component of a grade. Attendance, however, is highlyencouraged. Each student is responsible for all material covered during the lectures. Theinstructor will not repeat lecture material for students who do not attend.Computer Science 8530 Course


View Full Document

UNO CSCI 8530 - Course Notes

Download Course Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Course Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Course Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?