OPERATING SYSTEM I:MAN-MACHINE INTERFACE(LECTURE IN ENGLISH)

  1. Course Description
    This course presents an overview of modern operating systems, in particular Windows and Linux/Unix as implemented on modern PCs. After an overview of what an operating system is and does, we cover the following: organization and design (the kernel and various ubsystems), process management (creation and management of processes andthreads, including an introduction to multi-threaded programming), networks (the TCP/IP stack and the organization of the Internet), interprocess communication, process synchronization (locks, semaphores, and methods to avoid deadlocks), memory management (hardware and process views of memory layout and demand-paged virtual memory), file systems, and security and protection (viruses, worms, and Trojan horses).
  2. Course Objectives
    In addition to learning the terminology and concepts associated with the various components of an operating system, the student will acquire practical programming knowledge: specifically, how to create a child process set up a pipe between processes write simple shell scripts create and manage threads synchronize threads and processes with mutexes and semaphores schedule tasks using different algorithms manage a memory pool create a basic networked application
  3. Teachnig Method
    Academic Honesty All homework assignments and exams must represent your own, individual work. It is permissible to discuss assignments (not solutions) with other students in the class, but the solutions must be recognizably your own. Cheating of any kind (copying someone else's work, allowing others to copy your work, collaborating, etc.) will not be tolerated and will be dealt with SEVERELY (at the discretion of the instructor, which usually includes removal from the class with a grade of F.) Please keep in mind that discussing solutions to exams, quizzes, homework, etc. with students that haven't taken the exam or turned in the assignment is also prohibited. Ultimately, you are only wasting your time (and money) because if you can't master the fundamentals covered in this course, you have little hope of succeeding in other courses or as a programmer in the Real World. From The "It-shouldn't-need-to-be-said-but..." Department During class, all electronic devices must be turned OFF. This includes cell phones, pagers, PDAs, game consoles, digital cameras, laptop computers or any other devices. If you absolutely must have a cell phone on for an emergency situation, you must first clear it with me BEFORE class begins. In addition to showing up for class on time, other student responsibilities include proper behavior during class, learning the material, completing assignments correctly, submitting assignments properly and on time, studying for the exams, and participating in class by asking or answering questions during the lectures. Finally, all students are required to bring a pencil (or other writing instruments) and paper to class, to take notes, quizzes and perform other tasks.
  4. Textbook
  5. Assessment
    All homework & Lab assignments will be graded on a pass/fail basis. If a student fails an assignment then it will be marked as incomplete, and the student will be provided with meaningful feedback needed to fix it. The assignment must be resubmitted until it is considered complete. Any incomplete homework or labs at finals week will cause an automatic failure for the course.
  6. Requiments
  7. Practical application of the course
  8. Reference