Course Title:
Systems Software
Instructor: Weider D.
Yu, Office: Engr 283G, Weider.Yu@sjsu.edu, (408) 924-7365
Web
page: http://www.engr.sjsu.edu/~wdyu
Course
ENG 331, 18:00 – 20:45
Tuesday
Course Catalog DescriptionSystem software overview, assemblers, macro processors, loaders and linkers, compilers, operating systems, and embedded system software. Design system software projects. |
Prerequisites:
o
It is required
that the student has a good understanding of the underlying concepts of computer
architecture. Some programming experiences, such as C programming language, and
the knowledge in algorithms, data structures and operating systems are also
needed.
o
CMPE 142.
Textbook: Systems
Software (3rd edition), by
Leland L. Beck, Addison Wesley, 1997
References: Compilers: Principles, Techniques, and
Tools, 2 edition,, by Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman, Addison-Wesley, Reading,
Mass, 2006.
There
is one lecture period of two hours and 45 minutes each week.
Exams and Homework:
· Homework 10%
· Special Topic Report 15%
· Midterm 25% [10/06/09]
· Final Exam 30% [12/15/09]
Class Project:
Different projects will be presented to the class. The team will select one project.
· Project 20%
At the end of the course, the
student will
|
Program
Educational Objectives |
Course Learning
Objectives |
|
Provide a broadly based curriculum consisting of:
|
Be able to learn the concepts and methods in designing various types of system software. System software consists of software programs that support the operations of a computer. A variety of system software programs (listed in the course description) are to be covered in the course. (1) Be able to learn the relationships between machine architecture and system software. (2) |
|
Prepare students for entry level professional engineering, As well as continuing studies in engineering or other professional areas. |
Be able to learn the
relationships between machine architecture and system software. (2)
Be able to learn practical hands-on experience in
designing and implementing some selected types of system software in a course
team oriented project. (3)
|
|
Provide a practice-oriented, hands-on curriculum that prepares students to apply theoretical concepts to real world problems. |
Be able to learn
practical hands-on experience in designing and implementing some selected
types of system software in a course team oriented project. (3)
|
|
Provide students with the problem solving and communication skills required to be successful and advance in their careers. |
Be able to learn software engineering concepts and
related issues in designing and implementing software projects. The concepts
are applied in a team oriented course project. (4)
|
|
Provide opportunities for students to learn and practice leadership and teamwork skills in a multidisciplinary environment. |
Be able to learn software engineering concepts and
related issues in designing and implementing software projects. The concepts
are applied in a team oriented course project. (4)
|
|
Week |
Date |
Lecture Topic(s) |
|
|
1 |
Aug. 25 |
Introduction, System Software and Application Software, Simplified Instructional Computer (SIC) and SIC/XE Machine Architecture |
Chapter 1 |
|
2 |
Sep. 1 |
Assembler Functions, Machine Dependent and Independent Assembler Features |
Chapter 2 |
|
3 |
Sep. 8 |
Assembler Design Options |
Chapter 2 |
|
4 |
Sep. 15 |
Loader Functions, Machine-Dependent and –Independent Features and Design Options |
Chapter 3 |
|
5 |
Sep. 29 |
Linker Functions, Machine-dependent and –independent Features and Design Options |
Chapter 3 |
|
6 |
Oct. 6 |
Macro Processor Functions, Machine-Independent Features and Design Options |
Chapter 4 |
|
7 |
Oct. 13 |
Midterm Exam |
Review |
|
8 |
Oct. 20 |
Compiler Functions |
Chapter 5 |
|
9 |
Oct. 27 |
Machine Dependent Compiler Features |
Chapter 5 |
|
10 |
Nov. 3 |
Machine-Independent Compiler Features, Compiler Design Options |
Chapter 5 |
|
11 |
Nov. 10 |
Basic Operating System Functions |
Chapter 6 |
|
12 |
Nov. 17 |
Machine-Dependent and –Independent Operating System Features |
Chapter 6 |
|
13 |
Nov. 24 |
Operating System Design Options |
Chapter 6 |
|
14 |
Dec. 1 |
Embedded Software System, Project Review |
Lecture Notes |
|
15 |
Dec. 8 |
Project/Individual Topic Review |
Project Documents |
|
16 |
Dec. 15 |
Final Exam |
|
Policy
on Course Grading:
·
The following table shows our
basic grading scheme (approved by the
|
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 % |
Homework Assignments:
Assignments are together
worth about 10 percent of the course grade. Late homework will be accepted but
will be marked down 50%. The due dates for the assignments will be given during
the class.
Special Topic Report:
Each project team will choose
a special topic in the context of systems software and perform an in-depth
study and investigation. The report (15-20 pages) includes analysis, findings,
insights and suggestions of improvement to the problems/issues identified. The
report is worth 15 percent of the course grade. The due date will be given
during the class.
A list of areas for special
topic reports is provided below. Each special topic team (1-2 persons) should select a specific topic in the
area chosen and start to collect related source information and to explore
potential problems/issues. Each special topic team needs to turn in team member
information and a specific topic to the instructor by September
29.
Project:
The project will
have frequent checkpoints along the way for which you will have to turn in
status reports, preliminary designs, and the like. The project will be worth
about 20 percent of the course grade. The project specification will be
distributed during the class. The project work is due on December 8.
Project
Descriptions and Requirements
Project Schedule:
There is a project presentation. No makeup presentation will be given, unless
the case is critical. For the exceptional cases, documented reasons (e.g.
physician’s statement) are required.
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.