Syllabus
CISC 7310X Operating Systems I (Section R6)
Spring 2023 (01/25/2023 – 05/23/2023)
by Professor Hui Chen, CUNY Brooklyn College
Table of Content
- Instructor
- Class Meetings
- Course Description
- Learning Objectives
- Topics Covered
- Textbook
- Academic Regulations and Procedures
- Important Dates
- Attendance and Partcipation
- Assignments and Examinations
- Assignment Submission
- Grade Calculation
- Tips for Learning Success
- Instructional Technologies
Instructor
Professor Hui Chen, Ph.D.
Office: Room 1432N Ingersoll Hall
Phone: 718-951-5000 x2055
Office Hours and Contact
Office Hours: 1:30 - 2:30 pm, Tuesday and Thursday
Office Hours Access: in-person (no appointment required during office hours at Room 1432N Ingersoll Hall or otherwise pre-arranged) and online (by arrangement via Zoom or Blackboard Collaborate)
E-mail: chen@sci.brooklyn.cuny.edu
E-mail Policy: When e-mailing the instructor, include your name and course section in the subject. The instructor will generally reply your message before next class meeting.
Class Meetings
Class Meeting: 06:05 - 08:10 PM Thursday;
Class Meeting Method: In-Person
Classroom: Room 236 Ingersoll Hall Extension (236 IA)
In-Person Class Meeting
The College designates this class as a in-person class in this semester, i.e., we shall convene class meetings including all exams and tests at the designated times and at the designated classroom.
Course Description
37.5 hours plus conference and independent work
3 credits
Organization and programming of executive control systems. Batch processing, multiprogramming, multiprocessing, and time-sharing systems. File system organization and management. Access and protection control. Resource allocation. Control systems languages. Mathematical models of computer systems. This course requires a substantial amount of programming. (Not open to students who have completed CIS 7300X [703X] or a course in operating systems.)
Prerequisite: Computer and Information Science 6006X [622X] or a course in data structures; and Computer and Information Science 6007X [627X] or an undergraduate course in computer organization.
Learning Objectives
By the end of this course, students should be able
-
to gain an understanding of interactions between software and hardware including those between operating systems and hardware, and those between applications and operating systems;
-
to gain familiarity with major issues in the design and implementation of modern operating systems and essential algorithms and data structures to deal with the issues;
-
to gain system programming experience and familiarity with the solutions to some issues in large applications design, such as, concurrency and resource management; and
-
to be able to identify and familiar some problems in current systems research,
-
to have exposure in system research skills, methods, and tools.
Topics Covered
The following topics are to be covered.
-
Overview of Operating Systems (OS) (Chapter 1)
-
OS Structures (Chapter 2)
-
Processes (Chapter 3)
-
Threads and Concurrency (Chapter 4)
-
CPU Scheduling (Chapter 5)
-
Synchronization and Deadlocks (Chapters 6, 7, and 8)
-
Main Memory and Virtual Memory Management (Chapters 9 and 10)
-
I/O Systems (Chapter 12)
-
File System Interface and Implementation (Chapters 13 and 14)
-
Selected Topics (from Chapter 13, 15, and 16)
Textbook
- Silberschatz, A., Gagne, G., & Galvin, P. B. (2018). Operating system concepts. Wiley.
Academic Regulations and Procedures
All students should carefully and thoroughly read the section entitled Academic Regulations and Procedures
in the Brooklyn College
Undergraduate or Graduate Bulletin
for a complete listing of academic regulations of the College.
Academic Integrity
The faculty and administration of Brooklyn College support an environment free from cheating and plagiarism. Each student is responsible for being aware of what constitutes cheating and plagiarism and for avoiding both. The complete text of the CUNY Academic Integrity Policy and the Brooklyn College procedure for policy implementation can be found at http://www.brooklyn.cuny.edu/bc/policies . If a faculty member suspects a violation of academic integrity and, upon investigation, confirms that violation, or if the student admits the violation, the instructor shall report the violation to the College.
Student Disability Services
In order to receive disability-related academic accommodations students must register with the Center for Student Disability Services first. Students who have a documented disability or suspect they may have a disability are invited to set up an appointment with the Director of the Center for Student Disability Services at (718)951-5538. If you have already registered with the Center for Student Disability Services, please provide the instructor with the course accommodation form and discuss your specific accommodation with the instructor.
Consideration of Religious Observance
New York State Education Law (Title I, Article 5, Section 224-a) requires that the College
makes available to each student who is absent from school, because of his [or her] religious beliefs, an equivalent opportunity to make up any examination, study or work requirements which he [or she] may have missed because of such absence on any particular day or days.
If you are unable to attend classes or take examinations, the instructor is happy to accommodate you as permitted by semester schedule and other constraints there may be; however, it is recommended that you make arrangement with the instructor in advance. You may also contact Division of Student Affairs , if you have questions about accommodations for religious observance.
Policy and Software for Online Exam Proctoring
CUNY procured online proctoring software for hosting online exams. In case that we must have online exams, the instructor may elect to proctor the exams via the online protoring software. A design objective of online proctoring software is to improve online exam security. However, to learn how it may affect you, you should take a look at some online proctoring software, such as, Respondus Monitor and Proctortrack.
Important Dates
The College’s Academic Calendar lists a few important dates. Below are some of these important dates. Be aware that the College may revise the Academic Calendar as we are in the COVID-19 pandemic.
Important Dates
Date | Description |
---|---|
Wednesday, January 25 | First day of Spring 2023 classes |
Tuesday, January 31 | Last day to add a course |
Tuesday, February 21 | Conversion Day – Classes follow a Monday schedule |
Monday, February 13 | College Closed – No classes scheduled |
Monday, February 20 | College Closed – No classes scheduled |
Wednesday, April 5 through Thursday, April 13 | Spring Recess – No classes scheduled |
Friday, May 12 through Saturday, May 13 | Reading Day |
Tuesday, May 16 | Last day to withdraw from a course with a “W” grade |
Tuesday, May 16 | Last day of class |
Wednesday, May 17 | Final Examinations Begin |
Tuesday, May 23 | Final Examinations End / End of Spring Semester |
For the complete College calendar, check out the Spring 2023 Academic Calender, Brooklyn College.
Attendance and Partcipation
You are required to attend the lectures. Unless prearrangement is made with and approved by the instructor, or is permitted by Federal and State laws and regulations and the policies of of the College.
Reference to the state law regarding non-attendance because of religious beliefs is in the Undergraduate or Graduate Bulletin.
Student receives credit for attendance and participation in lectures. At each class meeting, the instructor will conduct an attendance roll-call or ask the students to sign an attendance sheet. In addition, there are required in-class exercises and discussion. For the in-class exercises and discussions, see the section of Assignments and Examinations for details.
Late Attendance
Students should join the class meetings on time. A late attendance may be recorded as absence from the class.
Assignments and Examinations
Individual Assignments
Typically, there several three kinds of assignments that you submit individually. These are quizzes, in-class discussion/exercises, and individual laboratory/programming assignments.
Projects and Presentations
The instructor assigns projects or research paper study and presentation assignments for selected major areas of study. These assignments are group assignments. These assignments are to provide students with sufficient practice and ample exploration to master the knowledge and skills pertinent to the area, and learn to collaborate in a team setting.
For each of these group assignments, the instructor will place each student randomly in a team of 2-3 students.
To grade these assignments, the instructor considers the quality of the group work and individual contributions. The students shall provide a peer evaluation. The instructor will provide an evaluation on the quality of the projects. Both of the student peer evaluations and the instructor’s evaluations will be used in the student’s final grade calculation. A student’s may receive a lower grade than the project quality grade if the student makes far few contributions than her or his team members. In an extreme case, a student who does not make any contribution to the project may receive no points on a group assignment as evidenced by the peer evaluation and the others (such as, Github commit logs).
Students should expect 3 of these group assignments, generally, 1 every 3-4 weeks.
Midterm and Final Examinations
The instructor will give two exams, a Midterm Exam and a Final Exam. Refer to the course schedule for the time, the date, and the location of the Midterm and the Final Exams. Be aware that it is Brooklyn College Registration determines the time, the date, and the date of the Final Exam. In this semester, as the College designates this class as a Synchronous Online class, the instructor will proctor the exams online as the designated date and time by the College.
To protect the integrity of the exams, the instructor requires the students to turn on their Web cameras during the exams and the instructor will record the exams for a later analysis if there is a need.
Assignment Submission
The instructor adopts the Github Classroom to manage selected assignments, in particular, group assignments. The students submit their work to Github by committing their work using a _Git_ client and pushing their work to their Github repositories.
The Github Classroom repository invitation links for this class will be distributed in class.
Late Submission
Late submissions are accepted, but penalized with 10% of penalty or one letter grade lower each day late. For instance, if a team submits a project one day late, the grade of the project will be lowered from A to B, B to C, and so on. In addition, a student will receive 0 on a submission of 5 or more days late.
Grade Calculation
Students final score is calculated on the scale of 100 as follows,
Grading Components and Grade Calculation
Component | Percent | Note |
---|---|---|
Attendance | 5% | |
Individual Assignments and Quizzes | 15% | 15 best assignments, 1 points each. |
Projects and Research Papers | 30% | 3 Projects and Research Papers are 10 points each. |
Midterm Exam | 20% | |
Final Exam | 30% | Final exam is cumulative |
Letter Grade
Your final letter grade will be given as follows:
Letter Grade Assignment
Component | Percent |
---|---|
90 - 100 | A |
80 - 89 | B |
70 - 79 | C |
60 - 69 | D |
0 - 59 | F |
Tips for Learning Success
The College designates this class as a Synchronous Online class in this semester. Below are some tips to help us succeed in this class.
Access to the Internet and Information Technology
It is essential that you have access to Broadband Internet, and to a computer with Web camera and microphone, minimally 8 GB RAM and 100 GB disk space and with the cability to run Oracle VM VirtualBox.
Be aware that the College and the University have made resources available to aid students. For instance, the College has established the Device Loan Program for Students and the University has a Virtual Desktop service In addition, the College maintains a Student Resources and Updates that documents services that students can leverage on for success. For instance, it describes the steps to obtain free Internet services from Charter Communications and Altice USA for students to take online classes.
Work Hours
You will need to devote at least 12 to 16 hours per week to the required lecture, reading, programming, experimenting, writing, and reasoning. Please devise a schedule (e.g., 2.5 to 3 hours per day, 5 days a week) and keep to it.
Lecture Participation
We can quickly lose concentration during a lecture. It is important to participate in the class actively, such as, answering your classmates’ questions, answering the instructor’s questions, and asking questions.
Group and Peer Learning
Peer groups can be effective and beneficial to learning. You should leverage on the groups to which the instructor assigns to, or establish a group of your own, and actively discuss the relevant class topics with the group.
Video Conferencing Tools
Video conferencing tools, such as, Zooom or Blackboard Collaborate Ultra has particularly useful features, such as, sharing screens and sharing files. You should master the tools and communicate effectively with your classmates and with the instructor.
The Brooklyn College Learning Center
Don’t forget that Brooklyn College has a Learning Center that is committed to help students succeed. One essential service that the learning center provides is the tutoring service. Visit the learning center online for more information.
The Brooklyn College Student Support Services
The Division of Student Affairs oversees a wide range of services among which you may find some useful. Visit the student support services online for more information.
Office Hours
The instructor maintains weekly office hours in-person or online per arrangement.
Instructional Technologies
The instructor posts syllabus, course schedule, and lecture notes on the Class Website, and posts assignments, assignment grades, and advisory grades on CUNY Blackboard.
Support and Resources
-
CUNY Blackboard
Web: https://bbhosted.cuny.edu/
Support Page: https://libguides.brooklyn.cuny.edu/Blackboard_for_Students
-
Git
Web: https://git-scm.com/
Documentation: https://git-scm.com/doc
-
GitHub Student Developer Pack