BU Logo CS-311
Syllabus Fall 2020 home
 
Syllabus
a document that communicates information about a specific course and defines expectations and responsibilities. (see Wikipedia:Syllabus)
Syllabus Contents
Course Description Course Mechanics Course Policies
Pre-Requisites Lecture Material Credits / Contact Hours
Teaching Staff home Homework Assignments Evaluation and Grading
Textbook Tests and Exams Academic Honesty and Collaboration
Course Goals / Learning Objectives Office Hours Dealing with Stress
Dealing with Covid-19
Gender Pronouns

Course Description

Introduction to fundamental concepts for the design and implementation of operating systems: hardware/software interfaces; processes and threads; scheduling; synchronization techniques and primitives; memory management and virtual memory; file systems; input/output subsystems; resource and system virtualization; protection and security; introduction to distributed systems.

arrow_back

Pre-Requisites

All prerequisites must have a grade of C- or better.

arrow_back

Textbook

arrow_back

Course Goals / Learning Objectives

To provide the necessary general knowledge of the fundamental concepts underlying the design and implementation of operating systems. The concepts of mutual exclusion, processes and threads, deadlock, processor and memory management, context switching, file systems, input/output subsystems, protection and security issues, in the context of an engineering solution to the computing issues addressed by operating systems.

This course will use Linux as the primary example of an operating system to study because Linux is widely available and open source. We will use the C programming language (not C++) for all programming assignments to stay compatible with Linux.

The following specific goals will be addressed:

arrow_back

Course Mechanics

This class is designed as a "synchronous on-line" course. That means live lectures will be delivered via Zoom, and tests and exams will be delivered on-line. There is no need to be on campus, or risk infection through interaction with other students. The course has traditionally been a "large lecture" course, but on-line lectures that last over an hour require significant effort from each student to pay attention and stay engaged.

Lecture Material

Live lectures will be delivered via Zoom during the scheduled class period. See Using Zoom for On-Line Classes for detailed instructions on using Zoom. Lectures will include presentation of new material, class discussions of the topics, possibly some short in-class exercises and occasional unannounced quizzes, which will contribute to your participation grade.

Students are expected to attend each lecture live and Zoom statistics will be checked to verify when and how long each student stays connected to the lecture. Students are also expected to give the lecture as much of their undivided attention as possible. Occasional absences will be tolerated but excessive lack of attendance will negatively impact your participation grade.

All lectures will be recorded and posted on the class web page, so if you can't make it to the live lecture, or have technical problems watching the lecture, or just want to review, all lecture material will be available to stream, along with a PDF that contains the lecture notes.

Student use of live video and audio stream is not required during the lectures, but is strongly recommended. When delivering a lecture, I thrive on both verbal and non-verbal communication during the lectures, and leaving your video feed on significantly improves the quality of the lecture I can deliver. Verbal/Audio interaction is also strongly encouraged, and students who demonstrate full participation by asking questions, making comments, or just letting me see your facial expressions as I deliver the lecture will be rewarded in the participation section of your final grade.

arrow_back

Homework Assignments

Homework will be assigned on the Class Web Page: Homework link. There will be six five* homework assignments over the semester, each will take approximately two weeks to complete. Homework will consist of extended programming assignment primarily using the C programming language. The lowest homework grade will be dropped, and your average will consist of the average of the remaining five four* assignments.

Homework should be done individually, and the results will be turned in on myCourses.

You may (and are encouraged to) seek help from others, including the instructor, TAs, and classmates. Help includes assistance with:

Get TA or instructor help with:

Obvious violations of the principles of academic honesty include, but are not limited to:

All students have access to the harveyv.binghamton.edu Linux hardware. The harveyv hardware will be used to grade all homework assignments.

* The number of assignments was updated on Nov. 18 because tehcnical difficulties prevented work on assignment 4 and assignment 5 for almost two weeks.

arrow_back

Tests and Exams

There will be two hour-long tests, one two-hour final exam, and one five-minute oral exam in this course. The first test will cover the first third of the course, the second test will cover the second third, and the final exam and the oral exam will cover the entire course (all three thirds.)

Tests and written Exams will be administered on-line using myCourses. The test or exam link will be available only during the times published for the test. There will be a time limit on the test, which will start when you open the test. If you have finished the test before the time limit is up, you may submit your results to myCourses using the "submit" button. If you have not completed the test when the time limit is up, myCourses will save whatever you have completed so far, and submit the test for you.

In exceptional conditions, cases where there are technology problems, illness, or other circumstances, accommodations will occur to ensure that all tests fairly evaluate student's mastery of the subject.

Tests will consist of several different kinds of questions, such as true/false questions, "hot spot" questions where you are given a picture and asked to click on the part of that picture that has the right answer, fill in the blank questions, multiple choice questions, multiple answer questions (multiple choice with possibly several correct answers), short answer questions, and short essay questions (typically one or two sentence answers.)

Unless otherwise indicated, tests will be open book, open notes, and you may look up answers on the internet. However, you are not allowed to communicate with other students during the tests. Any text that is cut and pasted must include an indication that the text is a quote, including proper references. Failure to do so will result in a zero grade. Furthermore, it is expected that direct quotations will make up a very small percentage of the total answer. Most of the answer must be original.

The oral exam will be conducted one on one with the professor and consist of interview-like questions to ensure that you have grasped the basic material in the class.

arrow_back

Office Hours

One of the most important features of this class is the opportunity to participate in one-on-one discussions with the professor and the TA's. Our job is to make you successful, and office hours are a great way to get help. Office hours will be available at specific times, as posted on the Class Web Page. During those times, link to the Zoom meeting specified on the class web page to talk directly with the Professor or a TA. The office hours Zoom meetings will have a waiting room to allow the Professor to finish helping another student before admitting you to the meeting itself. If you want to meet as a group, let us know, and we can admit several students to the meeting at once.

Outside of normal office hours, one-on-one meetings can still be scheduled by sending an email to the Professor or TA. Then, we can agree on a time that's good for both of us, and the Professor or TA can initiate the normal Zoom office hours link.

arrow_back

Course Policies

Credits / Contact Hours

This course is worth 4 credits. As announced by the Faculty Senate, Binghamton University expects a minimum of 12.5 hours per week of student effort for a 4-credit course. Of these 12.5 hours, 3 are spent in Zoom lecture sessions. The remaining 9.5 hours should be spent on assignments, studying for tests and examinations, research, discovery, and any other course related tasks.

arrow_back

Evaluation and Grading

All intermediate grades for homework, tests, and graded quizzes will be posted in myCourses as soon as they are available. The myCourses grade center also contains feedback provided to you by the Professor and the TA's to explain why you got the grade that you did.

Grades will be computed using the assigned homework and tests. As a rule, extra credit and make-up work is not allowed in this course.

If you have any questions about your grades, please contact the Professor or the TA responsible for your grade. We try to make the grades as accurate and as fair as possible, but we aren't perfect, and will happily correct any mistake we have made.

The weighted average in myCourses gives an indication of how you are doing so far, but the weighted average is an average of only the grades that have been given so far, and can change radically with some of the high percentage grades that are assigned late in the semester, such as the final exam.

Grade Weighting
Tests - 15% each 30%
Homework Average 30%
Graded Quizzes and Participation 20%
Final Exam 20%

The mapping from a weighted average to a letter grade changes from semester to semester based on the difficulty of the tests, labs, and assignments as compared to previous semesters; and will not be published.

arrow_back

Academic Honesty and Collaboration

Students are encouraged to help one another and to form study groups. In Computer Science, you can learn more from your peers than from your instructors and teaching assistants. As long as the help is appropriate, please be generous with your time and expertise when helping fellow students. Doing so is good for you and good for them. You are free to discuss assignments in general terms with one another.

However, please do not show your work directly to other students. It only takes a second for someone to surreptitiously take a picture of your code, copy it, and get you into trouble. Do not store your work on publicly available repositories (such as public GIT repositories.) Each of you must write your own code, and you must write up all solutions individually for individual assignments. Students submitting solutions (including code) that are determined to be "too similar" will be punished equally and harshly.

Please review the Watson College academic honesty document and make sure that you understand it! Cheating and copying will NOT be tolerated. Also review the Computer Science Faculty Letter to students regarding academic honesty.

Specifically, in this class:

arrow_back

Dealing with Stress

If you are experiencing undue personal or academic stress at any time during the semester or need to talk with someone about a personal problem or situation, I encourage you to seek support as soon as possible. I am available to talk with you about stresses related to your work in my class. Additionally, I can assist you in reaching out to any one of a wide range of campus resources, including:

arrow_back

Dealing with Covid-19

Clearly, we are dealing with an abnormal situation in the midst of the world-wide Covid-19 pandemic. This course is designed to deliver full academic content with no personal contact to avoid any risk of spreading the virus. Should personal contact be required, all participants are expected to wear a face covering mask and maintain six-foot separation whenever possible.

Students who get Corona virus will be treated like any other student with an illness. Accommodations will be made to allow you to completely recover before completing the requirements for the course. All health information will be treated as private, confidential information except for notification of official health personnel. It is essential that we trust the professionals who work at government health departments to look after the health of all individuals.

There has been nothing about this pandemic that has been easy, and we know that anxiety is high. We should trust in the professionals with experience in public health to show us the way through this pandemic. We also need to trust, support, and accommodate each other so we can all survive and thrive in the face of this challenge.

arrow_back

Gender Pronouns

Everyone has the right to be addressed by the name and pronouns that correspond to their gender identity, including non-binary pronouns, for example: they/them/theirs, ze/zir/zirs, etc. Rosters do not list gender or pronouns so if you have any special preferences, please contact me and let me know your preferences. If you use a chosen name, please let me know. Chosen names and pronouns are to be respected at all times in the classroom. Mistakes in addressing one another may happen, so I encourage an environment of openness to correction and learning.

Personally, I do not have strong preferences on pronouns or chosen names, and will answer to almost anything.

arrow_back