Operating Systems, Theory and Lab
        (CS31202/          
        
      
      CS
        
        30002/CS39002) Spring 2022-2023
       Welcome to your first course on Operating System (OS) design
        principles. Operating systems are an essential part of any
        computer system today. In fact it is a core course for CSE UG
        curriculum @IITKgp. In this course we will cover concepts of
        Operating System design with specific practical implementations.
        We will cover topics like basic operating system architecture,
        processes, threading, concurrency, memory management and file
        systems. This course have a theory and lab component. At the end
        of this course you will have hands-on theoretical and practical
        knowledge about the  principles of designing an OS. 
      
      For the schedule of lectures see the course schedule for details. For Lab keep an
        eye on the laboratory schedule.
      
      
      Instructors
      
      
      TAs
      
        
          
             
              Soham Poddar
                
              
              
              Shounak Paul
                
                K Ganesh Reddy
                
                Shubham Soni
              
              
            
         
        
          
             
               Rahul Aditya
              
                
                
               
               Dudyala
                  Vamshidhar Reddy 
               
               Karnam Sai Keerthana
               
               Aayush Prasad
               
           
         
         
         
           
             
                Aayushi Vidyanta
                
                
                B Smayan Das
                
              
              
            
           
         
       
      
      Course Information
      
        
          
            | Prerequisites | Algorithms and data structures, Computer
              Organization and Architecture, theory and lab. 
 | 
          
            | Lectures | Lecture timings are: 
 Wednesday     12:00 noon - 12:55 pm
 Thursday        
              11:00 am - 11:55 pm
 Friday             
              09:00 am - 10:55 am
 
 The courses will be conducted in NR 213 and NR 214
 
 Please keep and eye on the Schedule
              page for the latest updates.  We can change the mode
              later based on the situation and according to institute
              policy.
 
 | 
          
            | Labs 
 | Lab timing is 
 Wednesday   2pm - 5 pm
 
 The lab will be conducted in CSE 119 and CSE 120 and the
              submissions will be collected via CSE Moodle. Please keep
              an eye on Teams to know more lab-related discussion and
              annoucements.
 
 | 
          
            | Textbook | We will be using: 
 1. 
              
              
              Operating Systems Concepts, 9th ed. - A. Silverschatz,
              P.V. Galvin, and G. Gagne. Wiley, 2016.
 2. publicly available research papers.
 
 | 
          
            | Communication | We will update the course
                schedule regularly throughout the course. 
 Assignment
 
 
                Current plan is to both distribute and collect the
                  regular OS Laboratory assignments via  CSE
                    Moodle. Please join the course there. Use the
                  access code mentioned in lab. 
 Lectures
 
 
 
                Note that you NEED TO join
                    the Microsoft teams classroom titled "Operating
                    Systems Theory and Lab 2023
                    (CS31202/CS30002/CS39002)" for this course.
                  (Code: cvooz7o) 
                We already sent a mail via ERP with link to join
                  this Microsoft teams classroom. Drop the instructors
                  an email ASAP if you cannot access the Microsoft teams
                  classroom. 
 
                We will use with the "Announcements" channel on
                  Microsoft teams for live lecture related announcements
                  and other channels for discussions related to the
                  course. Please check that MS teams regularly. 
                Please check MS Teams regularly. 
 
 General discussion
 
                We'll use Microsoft
                    Teams for general discussion and questions about
                  course material. 
 
                If you need to reach out to the instructors (e.g.,
                  pertaining to an illness or other events that might be
                  impacting your performance in class), please send a
                  private chat on Microsoft
                    Teams visible only to the instructors.
                  Please use the Microsoft teams chatroom (and channels)
                  to discuss publicly with your peers in real-time. 
 
                Please try to keep most course-related communication
                  to Microsoft
                    Teams rather than email. Email the instructors
                  only when its urgent. 
 | 
          
            | Late policy | We will not accept late submissions in general. 
 Of course, in exceptional circumstances related to
              personal emergencies, serious illness, wellness concerns,
              family emergencies, and similar, please make the course
              staff aware of your situation and we will do our best to
              find a mutually agreeable solution.
 | 
        
      
      Grading
      Your 
tentative lab course grade
      will be calculated as follows (might be updated later):
      
      
        
          
            | Two lab tests 
 | 50% 
 | 
          
            | Lab assignments 
 | 50% 
 | 
        
      
      
      
      Your 
tentative theory course grade
      will be calculated as follows (might be updated later):
      
      
          
          
            | 1 class test 
 | 15% | 
          
            | Mid semester examination 
 | 35% 
 | 
          
            | End semester examination 
 | 50% 
 | 
        
      
      
 
      Honor code
      
      You are permitted to talk to the course staff and to your fellow
      students about any of the problem sets. Any assistance, though,
      must be limited to discussion of the problem and sketching general
      approaches to a solution. Each student must write out his or her
      own solutions to the problem sets. Consulting another student's
      solution is prohibited, and submitted solutions may not be copied
      from any source. These and any other form of collaboration on
      assignments constitute cheating.
      
      No collaboration is permitted on quizzes or assignments. All work
      submitted for the project must properly cite ideas and work that
      are not those of the students in the group. 
Simply
          stated, feel free to discuss problems with each other, but do
          not cheat. It is not worth it, and you will get caught. In
          that case, we will be forced to award you no marks for that
          assignment/quiz/project, take away 50% of your total final
          marks and you will risk deregistration.
      
      Wellness
      If a personal emergency comes up that might impact your work in
      the class, please let the instructors know via a private chat
      message (to all the course instructors) so that the course staff
      can make appropriate arrangements. We are going through
      unprecedented times and circumstances can sometimes be very
      overwhelming, and all of us benefit from support during times of
      struggle. You are not alone.