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
    Our aim in CS180 is to help you become a better programmer by teaching you the basic concepts underlying all computer systems. We want you to learn what really happens when your programs run, so that when things go wrong (as they always do) you will have the intellectual tools to solve the problem. Outcomes ●Have a deeper understanding of how a computer works from a C++ perspective ● Have a deeper understanding of the linker and linking in general ● Be able to analyze code performance and apply practical techniques to improve performance with loop unrolling and by improving cache locality ● Become familiar with operating system APIs and abstractions, including process control, thread control and virtual memory
  3. Teachnig Method
    There are no makeup exams or quizzes. You get 2 free absences. For every lecture/lab that is missed after 2, you will lose one point from your final grade (e.g. a 90 becomes an 89). The only exceptions are if you notify me prior to your absence with a valid reason. (Sleeping, studying for another class, working on your game, etc., are not valid reasons for an absence.) Class participation will boost your grade if you are on the border. (e. g. It is possible to get an A with an overall average of 88.5%) 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 participat
  4. Textbook
  5. Assessment
  6. Requiments
    DigiPen 학생이어야합니다. DigiPen 프로그램에 등록되어 있지 않으면이 수업을들을 수 없습니다. You must be a DigiPen student. If you are not in the DigiPen program then you will not be able to take this class.
  7. Practical application of the course
  8. Reference