Course: CMPE/SE 142

Course Title: Operating Systems Design

Semester: Fall 2009

 

 

Instructor Information and Course Description

 

Instructor: Weider D. Yu, Office Engr 283G, Weider.Yu@sjsu.edu, (408) 924-7365

 

Web page: http://www.engr.sjsu.edu/wdyu

 

 

Seminar Meeting Place/Time: CL 324, Thursday  18:00-20:45

                                                                                                               

 

 

Office Hours:             Tuesday:           14:30 - 17:00  

                                    Wednesday:     14:30 - 17:00  

                         

 

Course Catalog Description

 

Overview: history, concepts, system calls and structures. Management of major components: processors, memory, input/output and files. Design systems calls and device drivers for hardware dependence. Concepts of kernel and shell, file protection and interactive computation.

 

 

Prerequisites:

o       CMPE 124 and CMPE 126 (both with grade of "C" or better); ENGR 100W.

 

 

Textbook:      

Operating System Concept, by Avi Silberschatz, Peter Baer Galvin, and Greg Gagne, 8th Edition, John Wiley & Sons, Inc., 2009

 

References:

Modern Operating Systems, by Andrew S. Tanenbaum, 3rd Edition, Prentice Hall, 2008

 

Course Conduct:

There is one period of two-hour and 45-minute session. Reading assignments will be made and should be completed prior to the corresponding lecture. There is one team project.

 

Testing:

 Exam and Homework:

·        Homework                                     10%

·        Quiz/Midterm                                 20%  

·        Final Exam                                     30%

 

Class Projects:

Different projects will be presented to the class. Each team (no more than four students) will select one operating systems related project. Each team is required to present and demonstrate the project at the end of the semester and submit a final project report (30 pages).

·        Team Project: Analysis and Requirements                                                                 5%

·        Team Project: Design & Testing                                                                              15%

·        Team Project: Results, Project Report and PowerPoint Presentation Slides              20%

 

 

Course Learning Objectives

 

At the end of the course, the student will

 

  1. Be able to explain concepts, theories, algorithms and methods related to the operating systems.
  2. Be able to understand the techniques, policies, and mechanisms used in constructing various major components of an operating system.
  3. Be able to explain the fundamental technical topics – processes, threads, system calls, scheduling, deadlocks, memory management, I/O and storage management, etc.
  4. Be able to have a project team design experience on a topic related to operating systems.

 

 

What is ABET (Accreditation Board for Engineering and Technology)?

 

ABET (The Accreditation Board for Engineering and Technology) serves the public through the promotion and advancement of engineering, technology and applied science education. ABET will: Accredit engineering, technology and applied science programs. Promote quality and innovation in engineering, technology and applied science education. Consult and assist in the development and advancement of education in engineering, technology and applied science. Inform the public of activities and accomplishments. Manage operations and resources to be responsive and relevant to the needs of the organization and its stakeholders.

 

 

 

Program Outcomes; ABET (a-k) Criteria

The Computer Engineering Program is designed to produce engineering graduates who have:

 

a.       An ability to apply knowledge of mathematics, science and engineering.

b.      An ability to design and conduct experiments, as well as to analyze and interpret data.

c.       An ability to design a system, component or process to meet desired needs.

d.      An ability to function on multi-disciplinary teams.

e.       An ability to identify, formulate and solve engineering problems.

f.        An understanding of professional and ethical responsibility.

g.       An ability to communicate effectively.

h.       The broad education necessary to understand the impact of engineering solutions in a global/societal context.

i.         Recognition of the need for, and an ability to engage in, life-long learning.

j.        Knowledge of contemporary issues.

k.      An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

 

 

Students Learning Objectives Relationship to ABET Criteria (a-k)

 

ABET Criteria

Course Learning Objectives

a

1

c

2

d

5

e

4

g

2

k

3

 

 

 

Course Relationship to Program Educational Objectives

 

 

Program Educational Objectives

Course Learning Objectives

Provide a broadly based curriculum consisting of:

  • Computer Engineering fundamentals, both hardware and Software, that provide a basis for professional competence and life-long learning and
  • Elective courses that provide contemporary professional skills as required by an ever-changing industry.

Be able to explain concepts, theories, and methods related to the mobile software projects. (1)

 

Prepare students for entry level professional engineering,

as well as continuing studies in engineering or other professional areas.

Be able to perform realistic design and implementation tasks for mobile based software systems. (2)

 

Provide a practice-oriented, hands-on curriculum that prepares students to apply theoretical concepts to real world problems.

Be able to apply currently available modern mobile computing devices and software techniques. (3)

Provide students with the problem solving and communication skills required to be successful and advance in their careers.

Be able to apply problem-based, interdisciplinary collaboration skills in a team to solve problems in wireless mobile software area. (4)

Provide opportunities for students to learn and practice leadership and teamwork skills in a project team environment.

Be able to use HP Pocket/Tablet PC to design a mobile project in a multi-disciplinary project team environment and have required leadership and teamwork skills. (5)

 

 

 

Course Topics

 

Week

Lecture Topic(s)

1

Introduction to Operating System

2

Operating System Structures

3

Process Management - Processes

4

Threads

5

CPU Scheduling

6

Process Synchronization

7

Deadlocks – Prevention, Detection, Avoidance

8

Memory Management – Main Memory

9

Virtual Memory

10

Storage Management – File System Interface

11

File System Implementation

12

Mass-Storage Structure, I/O Systems

13

Operating System Protection

14

Operating System Security

15

Project Final Presentation

 

 

Policy on Course Grading:

·        The following table shows our basic grading scheme (approved by the 01-22-2008 department faculty meeting). However, each grade category may have a plus/minus 5-10 % delta, based on the actual student performance in the class.

 

Grade

Percentage

A+ or A or A-

40 %

B+ or B or B-

50 %

C+ or C or C-

5-10 %

D or F

Up to 2 %

 

 

Policy on Plagiarism/Cheating:

·        A student or students involved in a cheating incident involving any non-exam instrument (homework, report, or lab project) will receive an F on that instrument, and will be reported to the judicial affairs office.  Whether the report will carry a recommendation for disciplinary action will be left to my judgment.

·        A student or students involved in a cheating incident on any quick test, the midterm exam or the final exam will receive an F in the course, and will be reported to the judicial affairs office with a recommendation for disciplinary action.

 

I will personally notify you of any such findings or actions.  All such reports will also be brought to the attention of the computer engineering department office.  You have certain rights of appeal, which may serve to exonerate you. (see http://www2.sjsu.edu/senate/S04-12.pdf)

 

Right to Privacy: 

You will retain a right to privacy.  I will not knowingly reveal your grades, student ID number, phone number, address or other private information to others, except within the limits of university policy.  I will ask that you supply your first name, last name and last four digits of your SID on written homework or tests. 

 

Students with Disabilities:

Students with disabilities who would need some kind of accommodation should make that known to the instructor:

"If you need course adaptations or accommodations because of a disability, or if you have emergency medical information to share with me, or if you need to make special arrangements in case the building must be evacuated, please make an appointment with me as soon as possible, or see me during office hours."

 

Note: The course syllabus of Fall 2009 may need to be changed during the semester to fit for the university special furlough schedule implementation.