This preview shows page 1 out of 4 pages.

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

Unformatted text preview:

Course DescriptionComponent (Quantity)PercentagePoint RangeLetter GradeNOTE :  COMPONENT PASS POLICY  IN ORDER TO PASS THIS COURSE, YOU MUST HAVE PASSING WEIGHTED COMPONENT AVERAGES (WEIGHTED COMPONENT AVERAGES MUST BE GREATER THAN 49.99) THERE WILL BE TWO COMPONENTS THIS SEMESTER. COMPONENT 1 IS THE EXAM COMPONENT CONSISTING OF THE MIDTERM AND FINAL. COMPONENT 2 IS THE LAB COMPONENT CONSISTING OF THE THREE PROJECTS.CSE 4/521 Introduction to Operating Systems Fall 2006Course DescriptionAn Operating System is a complex software package that manages the resources of a computer system, andprovides the base upon which applications can be written. In this course we will study the basic components ofan operating system, their functions, mechanisms, policies and techniques used in their implementation andseveral examples from popular operating systems. The components, which will be discussed, include: - Process management: process description and control, system calls, concurrency, mutual exclusion,synchronization, inter-process communication, deadlock and scheduling. - Multiprogramming and concurrency using processes. Programming with threads: creation, multi-threaded programs, synchronization, and scheduling. - Storage management: virtual memory, I/O management and file systems.- Networking and distributed systems: network protocols, two-tier and three-tier client/server applicationdevelopment; issues in building a distributed systems.- Protection and security: protecting resources, security threats, public key encryption, access control,and network security.Hands on practical projects in C++ will support concepts discussed during the lecture. On completion of thiscourse students will be able to understand the components and working of an operating system and the designand implement various operating system functions.Course InformationNewsgroup: sunyab.cse.421Website: http://www.cse.buffalo.edu/~bina/cse421/fall2006Instructor: Bina Ramamurthy ([email protected])Lecture Time: MWF: 9.00-9.50AMLecture Location: 114 HochstetterOffice: 127 Bell Hall Office Hours: MW 10.00-11.30AMRecitation A1: T, 11.00 – 11.50 AM, 115 TalbertRecitation A2: W 10.00 – 10.50 PM, 214 NortonRecitation A3: F 3:00 – 3:50 PM, 209 NortonTextbook and other materialThe primary textbook for this course is:Modern Operating System by Andrew S. Tannenbaum, Second Edition, Prentice-Hall Inc., 2001.While there are no other required textbooks, you should have in your possession appropriate reference books forboth the C and C++ programming languages. I would strongly suggest Kernighan and Ritchie’s The CProgramming Language and Stroustrup’s The C++ Programming Language.Pre-requisitesCSE421 is the capstone/core course for your degree within the Department of Computer Science andEngineering. The course requires the use of many skills that you have developed and refined over the lastseveral semesters. Due to the skill level required and inherent difficulty of this course, it is required that youhave successfully completed the pre-requisite courses. Successful completion means that you have completedthe course in a semester prior to the current one, and that you achieved a grade of C- or higher. The pre-requisites for this course include CSE241/EE378 and CSE305 or equivalent courses. If you do not possess thepre-requisites, you must drop the course immediately. Failure to do so will result in the department dropping1you from the course at your expense. Computer Architecture will help with the hardware concepts, and 305 willprovide broader exposure to programming languages.You will also be working on several large programming projects over the course of the semester. You musthave a strong working knowledge of C (intermediate level background or above). You must also have enoughexperience with C++ to understand the fundamentals of classes. This knowledge should extend to dynamicallocation and de-allocation of instances and fundamental pointer operations for class instances. NOTE: It is NOT the intent of this course to teach you how to program in a new programming language. Iassume that since you are all seniors in Computer Science and Engineering you should be able to pick up theessentials of any programming language within a few weeks. Much of the lab work revolves around strongdesign, which you have all been exposed to since Programming/Computer Science I. Grading DistributionGrades will consist of the following components:Component (Quantity) PercentageLabs (3) 15%, 20%, 20%Midterm (1) 20%Final (1) 25%Point distribution guideline will be as follows:Point Range Letter Grade95.00-100 A90.00-94.99 A-85.00-89.99 B+80.00-84.99 B75.00-79.99 B-70.00-74.99 C+65.00-69.99 C60.00-64.99 C-55.00-59.99 D+50.00-54.99 D0-49.99 FI reserve the right to alter component weighting or provide a “curve” on an assignment as warranted.NOTE :  COMPONENT PASS POLICY  IN ORDER TO PASS THIS COURSE, YOU MUST HAVEPASSING WEIGHTED COMPONENT AVERAGES (WEIGHTED COMPONENT AVERAGES MUST BEGREATER THAN 49.99) THERE WILL BE TWO COMPONENTS THIS SEMESTER. COMPONENT 1 ISTHE EXAM COMPONENT CONSISTING OF THE MIDTERM AND FINAL. COMPONENT 2 IS THELAB COMPONENT CONSISTING OF THE THREE PROJECTS.LabsLab assignments constitute a major portion of the course. Over the semester, you will be given three labassignments. The lab experiments will cover fundamental areas of Operating System development. You will begiven approximately 25 – 30 days to complete each exercise. Do not be lulled into a safe sense of security. Donot think you have a lot of time to implement each lab! All due dates will be clearly printed on the top of each assignment. Late assignments will not be accepted forany reason. Remember, it is better to submit your solution every so often before the due date!2Develop your code using the Incremental Development technique. Do not try to sit down and code the entireassignment in one sitting. Instead, take one section at a time, implement, test it, back up the code, and move onto the next section. You will turn in each lab before 11:59 PM on the due date via the departmental submitcommand. You must also include appropriate testing programs to show the validity of your solution. Inaddition, you must include external documentation discussing the “how’s and why’s” of your design


View Full Document

UB CSE 421 - Syllabus

Documents in this Course
Security

Security

28 pages

Threads

Threads

24 pages

Security

Security

20 pages

Security

Security

52 pages

Security

Security

20 pages

Load more
Download Syllabus
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 Syllabus 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 Syllabus 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?