Genesee Community College
Introduction to Operating Systems (CSN115) Syllabus
Fall 2017

Instructor Information

Name:
Ken Mead
Email:
kjmead@genesee.edu
Office location:
D395 Math Science Area, Building D, Main Campus
Office hours:
Tuesday and Thursday from 10:00am - 10:45, and Wednesday 11:00am - 12:30pm, via Zoom
Phone:
585-343-0055 x 6381
Bio:

Course Information

Course title:
Introduction to Operating Systems
Course number:
CSN115 sections 01 and 67
Credit Hours:
3
Catalog description:
Examines several operating systems with emphasis on a modern UNIX-based distribution. Topics include memory and process management, I/O systems, storage, multi-processing,networking, and system commands. Requires hands-on projects in system administration tasks such as managing file systems, creating and configuring user accounts and groups, managing file/directory permissions, creating shell scripts, and setting up services. Prerequisite: Some PC experience is recommended.
Prerequisite:
none
Student Learning Outcomes:
The Genesee Community College Student Learning Outcomes (SLOs) for this course are:
  1. Demonstrate knowledge of computer hardware and software, including memory, the processor, input and output devices, secondary storage, programming languages, and data elements on an examination.
  2. Demonstrate knowledge of an operating system's basic functions including the user interface, device management, the file system and the booting process on an examination.
  3. Demonstrate knowledge of memory management including virtual memory, multiprogramming, time-sharing, scheduling, queuing, and spooling on an examination.
  4. Demonstrate working knowledge of the different user interfaces on at least two modern operating systems, including working with the file system, pipes, filters, redirection, the shell/command prompt, and the graphical user interface on an examination and/or computer projects.
  5. Demonstrate a working knowledge of between 15 and 40 basic system commands for management of a modern operating system on an examination and/or computer projects.
  6. Demonstrate a working knowledge of using GUI tools to manage a modern unix-based operating system on an examination and/or computer projects.
  7. Demonstrate a working knowledge of the internals of a modern unix-based operating system, including architecture, process management, memory management, disk management, file management, I/O management, the registry, processes, and interrupts on examinations and computer projects.
  8. Demonstrate a working knowledge of how networking is incorporated into a modern unix-based operating system through examinations and/or computer projects.
  9. Demonstrate an ability to install, from scratch and according to predefined and variable specifications, one of the operating systems examined in the course.

* This course objective has been identified as a student learning outcome that must be formally assessed as part of the Comprehensive Assessment Plan of the college. All faculty teaching this course must collect the required data and submit the required analysis and documentation at the conclusion of the semester to the Office of Institutional Research and Assessment.

Course Overview:

In this course, we will examine several operating systems with emphasis on a modern UNIX-based distribution. Students will be expected to attend classes and participate. Hands-on experience will be a major emphasis. There will be three examinations consisting of both a written component and a hands-on lab practical. Additionally, there will be a final project and a final exam. Details about these requirements will be addressed during the first day of class.

Computer Assignments and Projects:
You will be required to complete many hands-on assignments during the semester. It is the student's responsibility to keep up with the readings and assignments, even if he/she misses class. It is important to ask questions and stay involved in class. Do not fall behind. If you are having trouble with an assignment, do not wait until the last minute to seek help.
Attendance and Participation:
Attendance will be taken each class. Part of your participation grade will be based on attendance, attentiveness during class, and completion of required lab activities. Absences without a valid excuse will negatively affect this grade. If you must be absent for a class, please contact your instructor ahead of time (preferably via email) and explain the circumstances.
Cheating:
Cheating on tests and projects will not be tolerated. A first offense will result in a grade of "F" on the assignment for the both "giver" and the "receiver". This includes code cut and pasted from the internet. A second offense will result in a grade of "F" for the course.
W Grade:
The last day for a W grade in the course is at the end of the ninth week of the semester.

Textbooks and Materials

Required materials:

Textbook: Free PDF - The Linux Command Line, Third Internet Edition, by William Shotts, http://linuxcommand.org/tlcl.php. You may choose to purchase a hard copy of the textbook. Please visit linuxcommand.org/tlcl.php for details.

Important note for students in section 67: Tests will be proctored! There are a number of options available to you:

  • Come to campus to take exams during the classroom exams (dates listed below).
  • Take exams in the CAP testing center or at a campus center. Arrange this with your professor at least one week prior to in-class exam date.
  • Use the ProctorU test proctoring service. Details below.

Grading Criteria

Grading Policies:

Final grades are assigned according to the following scheme, with the final average rounded to the nearest integer (in %):

92 or higher = A, 90-91 = A-, 88-89 = B+, 82-87 = B, 80-81 = B-, 78-79 = C+, 72-77 = C, 70-71 = C-, 68-69 = D+, 62-67 = D, 60-61 = D-, 59 or less = F.

Grades will be weighted as follows:

  • Written Component of Test (3 tests): 300 points total
  • Practical Exam + Lab Work + Homework + Participation (3 tests): 300 points total
  • Final Project: 100 points total
  • Final Exam: 100 points total - replaces your lowest written or practical exam grade

At the sole discretion of the instructor, the final exam may be waived for students that show exceptional progress throughout the semester. The final exam may be customized per individual, and will replace the score of either a written or practical exam, again at the instructor's discretion.

No make-up tests or exams will be given unless you have an unavoidable reason for missing the test AND you notify your instructor in advance (either in person, by sending email, or by phone call and leaving voicemail).

Tests, tentative schedule: MW: Sep 20, Oct 23, Nov 22. This content for this course will be broken up into 3 distinct modules. On test days, there will be a written exam covering material for the current module (approximately 50 questions) worth 100 points, and a practical exam (approximately 20 questions) worth 100 points. Included as a part of this practical exam will be grades for your class participation and lab/homework assignments for that module. There will also be a final project worth 100 points, announced during the semester.

Proctored Exams

For Students in Section 01
Students in section 01 of this course will take exams in class on the dates listed above. Missed exams will result in a grade of zero unless you have an unavoidable reason for missing the test AND you notify your instructor in advance (either in person, by sending email, or by phone call and leaving voicemail).

Paid Proctoring for Students in Section 67:

If you are unable to take tests during regular exam times for sections 01 or 02, or otherwise cannot take your quizzes in a traditional proctored environment (including GCC's testing centers), you have the option of taking quizzes through a paid proctoring service. Currently, GCC partners with ProctorU for this purpose. The cost per exam is approximately $25 for up to two hours, assuming the exam is scheduled 72 hours or more in advance. There are strict hardware requirements in order to take exams in this environment. Please visit http://www.proctoru.com/tech.php for details.

If you plan to use ProctorU for any of your exams, please let your instructor know at least one week prior to the exam date. All costs associated with online proctoring services will be borne by the student.

Course Schedule

General Schedule
We will cover approximately one topic per week, in this general order:
  1. Introduction to Operating Systems and the Linux Operating System
  2. Understanding x86/x64 Hardware Components, Partitions, Filesystems and Device Names
  3. Installing Linux On An x86/x64 System
  4. Working with "X", Desktops and Terminals
  5. The Linux Filesystem and the Shell Environment
  6. Using Linux Commands
  7. Getting Help with Linux
  8. The VIM (Vi IMproved) Editor
  9. Understanding the PATH and Shell Configuration Files
  10. Using Filesystem Commands
  11. Users, Groups, Permissions and Attributes
  12. Backing Up Your System
  13. Creating and Running Shell Scripts
  14. Installing Software On A Linux System
  15. Runlevels, The Boot Process, Services and Processes
  16. Scheduling Tasks and Working with Log Files
  17. Networking

Syllabus Supplements

GCC Grading Policy
Classroom Policies
CAP Center:
GCC Library
Computer Labs
Internet Procedures
GCC Help Desk
Student Support
GCC Contact Info
Code of Conduct

Final Thoughts

Disclaimer

The instructor reserves the right to make any reasonable and necessary modifications to the statements above. This document is subject to change.