Course Handout - Operating Systems Design - S-19cs2106s
Course Handout - Operating Systems Design - S-19cs2106s
K L Deemed to be University
Department of CSE -- KLVZA
Course Handout
2020-2021, Odd Sem
Course Title :OPERATING SYSTEMS DESIGN - S
Course Code :19CS2106S
L-T-P-S Structure : 3-0-2-2
Pre-requisite :
Credits : 4.5
Course Coordinator :VISHNUVARDHAN MANNAVA
Team of Instructors :
Teaching Associates :
Syllabus :Architecture of the UNIX operating system, OS Design Approaches, Operating system interfaces, Operating system organization, An Overview of the
File Subsystem, buffer cache allocation algorithms: getblk, brelse, bread, breada, bwrite. Log design, Lower Level File System Algorithms: namei, iget, iput, alloc,
free, bmap, ialloc, ifree. File System Calls: open,read,write,close,creat,mknod,chdir,stat,pipe,dup,link,unlink. Processes, Context of a process, Process States and
Transitions, kernel data structures, Under the Hood: The System Call, Paging hardware, Process address space, Physical memory allocation, Systems calls,
exceptions, and interrupts, Assembly trap handlers, saving the context of a process, Disk driver, console, manipulation of the process address space: allocreg,
loadreg, freereg, dupreg, sleep, wakeup. Process System Calls: fork, kill, exit, wait, brk, exec, xalloc. Shell Process scheduling: Scheduling Parameters,
Multiplexing, Controlling Process Priorities, Fair Share Scheduler, Real-Time Processing. System calls for time, clock, Memory management policies: swapping,
Demand Paging, Page faults, TLB, Segmentation, Hybrid approach: paging and segments. Locking, Models of inter-process communication: shared memory and
message passing. Thread API, mutex, Deadlock, concurrent Linked Lists, Binary Semaphores (Locks), Counting Semaphores, The Producer/Consumer (Bounded
Buffer) Problem, Reader-Writer Locks, The Dining Philosophers. The boot loader: Assembly bootstrap, C bootstrap, Introduction to Assembly language
programming for X86.
Text Books : 1. Maurice J. Bach, The Design of The Unix Operating System, 2013 PHI Publishing. 2. Russ Cox, Frans Kaashoek, Robert Morris, xv6: a simple,
Unix-like teaching operating system", Revision https://pdos.csail.mit.edu/6.828/2018/xv6/book-rev11.pdf 3. Frans Kaashoek, Robert Morris, and Russ Cox, The
xv6 source code booklet (draft) (revision 11). https://pdos.csail.mit.edu/6.828/2018/xv6/xv6-rev11.pdf
Reference Books :1. Operating Systems: Three Easy Pieces, Remzi H. Arpaci-Dusseau and Andrea C. Arpaci- Dusseau, ArpaciDusseau Books, Createspace
Independent Publishing Platform (2018). http://pages.cs.wisc.edu/~remzi/OSTEP/ 2. Stallings, W. and Manna, M.M., 2015. Operating systems: internals and
design principles. 2018 9th Edition Pearson. 3. Advanced programming in the UNIX Environment, 2013 Third Edition, W.Richard Stevens, Stephen A. Rago, The
addison-wesley professional computing series. 4. Vahalia, U, UNIX internals: the new frontiers. 2008 Pearson Education India. 5. Tanenbaum, A.S., Modern
operating system. 2009 4th Edition Pearson Education, Inc. 6. Silberschatz, A., Galvin, P.B. and Gagne, G., Operating system concepts essentials. 2018 10th
Edition John 7. Marshall Kirk McKusick, George V. Neville-Neil, Robert N.M. Watson, The Design and Implementation of the FreeBSD Operating System, 2015,
Pearson 8. Andrew S. Tanenbaum, Albert S. Woodhull, Operating Systems: Design and Implementation, 2006, Pearson 9. Richard Blum, Professional Assembly
Language, wrox press, 2006. 10. Sumitabha Das - Your UNIX/Linux The Ultimate Guide, Third Edition-McGraw-Hill Education, 2012.
Web Links :1. https://www.cse.iitb.ac.in/~mythili/os/ 2. http://www.cse.iitm.ac.in/~chester/courses/15o_os/slides/ 3.
https://github.com/nbicocchi/operatingsystemsmsc 4. https://www.cs.columbia.edu/~junfeng/11sp-w4118/lectures/ 5.
http://pages.cs.wisc.edu/~remzi/Classes/537/Spring2018/Discussion/videos.html 6. https://www.ics.uci.edu/~aburtsev/238P/2018fall/index.html 7.
https://pdos.csail.mit.edu/6.828/2011/schedule.html 8. https://www.cs.columbia.edu/~junfeng/13fa-w4118/syllabus.html 9.
https://courses.cs.washington.edu/courses/csep551/17wi/
MOOCS :1. https://cs385.class.uic.edu/lectures/2/
Course Rationale :Examines some general conceptual issues relating to OS implementation strategies and looks at some low-level techniques that are often
helpful for operating system developers, application programmers, and system administrators. Programmers on UNIX systems can gain a deeper understanding of
how their programs interact with the system and thereby code more efficient programs.
Course Objectives :This course provides an in-depth view of the operating system's major kernel subsystems design & implementation. These include virtual
memory system, process lifetime cycles and scheduling and the UNIX file system. The course will describe the differences between the different flavours of
UNIX, such as BSD and SYSTEM V. Understanding design trade-offs, explaining parts of xv6 from a system design perspective. Students assess, customize and
manipulate xv6.
Blooms
CO Taxonomy
Course Outcome (CO) PO/PSO
NO Level
(BTL)
Understand the internals of UNIX kernel architectures and explore design of File Subsystem, buffer
CO1 PSO1,PO3,PO4 3
cache, and File System Calls.
Understand the internals of system call and explore design of structure of processes, process control,
CO2 PSO1,PO3,PO4 3
process system calls and scheduling in UNIX systems
Understand Traps, interrupts, and drivers. Explore design tradeoffs and Implement parts of memory
CO3 PSO1,PO3,PO4 3
management policies, first address space, page tables and virtual memory in UNIX systems
Analyse theory and implementation of inter-process communication, synchronization, concurrency, and
CO4 PO4,PSO1,PO3 4
Boot loader in UNIX variants.
Implement parts of xv6 and develop Programs/commands using UNIX System Programming. Perform
CO5 PSO1,PO3,PO4,PO5 5
system administration.
Outcome Highest
COI-1 COI-2 COI-3 COI-4
No. BTL
Btl-2 Btl-3
Characterize the internals of Construct buffer cache and File
CO1 3 UNIX kernel architectures. System Calls in UNIX systems.
Visualize File Subsystem Data Explore the design of Lower
Structures and algorithms Level File System Algorithms.
1/24
7/23/2020
CO2 3 Btl-2 Btl-3
Understand the internals of systemExplore design of structure of
call. Visualize saving the contextprocesses and process control.
of a process, system calls for time,
Implement process system calls in
clock, console, and init process. UNIX systems Develop shell in
UNIX systems. Customize
scheduling in UNIX systems
Btl-3
Implement the first process and
address space. Perform physical
memory allocation and multiplex
address spaces using page tables
Btl-3
in xv6. Manipulate process
CO3 3 Understand Traps, interrupts, and
address space in UNIX systems
drivers.
Explore design trade-offs and
Implement parts of memory
management policies: swapping,
segmentation, paging, TLB, Page
faults and Advanced Page Tables
Btl-3
Btl-2 Apply Mutex, Semaphores, and Btl-4
Understand various Locking Condition variables to Perform Analyse Models of inter-process
CO4 4
mechanisms, pthreads, and boot concurrent programming Solve communication and Deadlocks for
loader classic synchronization problems UNIX systems
using pthreads.
Btl-4
Implement parts of xv6 and
develop Programs/commands Btl-5
CO5 5
using UNIX System Porting xv6
Programming. Perform system
administration
COI- An Overview of the File Subsystem, Buffer T1 CH 2.2.1 Page No [22 – 24, 44, 46] T3 End Semester
4 CO1 Chalk,LTC,PPT,Talk
1 Cache allocation algorithms: getblk, brelse Sheet No [44] Exam,SEM-EXAM1
2/24
7/23/2020
Teaching-Learning
Sess.No. CO COI Topic Book No[CH No][Page No] EvaluationComponents
Methods
COI- Lower Level File System Algorithms: iget, T1 CH 4 Page No [64,66,70,75], T2 CH 6, T3 End Semester
6 CO1 Chalk,LTC,PPT,Talk
2 iput, bmap, namei Sheet No [50,52,53,54,57] Exam,SEM-EXAM1
COI- Lower Level File System Algorithms: ialloc, T1 CH [4], Page No [78,80,86,102], T2 CH End Semester
7 CO1 Chalk,LTC,PPT,Talk
2 ifree, alloc, free 6, T3 Sheet No [50,52,53,54,57] Exam,SEM-EXAM1
T1 CH 5 Page No [112,119,129,133] T2 CH
COI- End Semester
10 CO1 File System Calls: pipe, dup, link, unlink 0, 6 T2 CH 6 Page No13, 70, 75-89 T3 Sheet Chalk,LTC,PPT,Talk
2 Exam,SEM-EXAM1
No 36,67,64,61
R1
COI- End Semester
12 CO2 Under the Hood: The System Call http://pages.cs.wisc.edu/~remzi/OSFEP/intro- Chalk,LTC,PPT,Talk
1 Exam,SEM-EXAM1
syscall.pdf
COI- Process scheduling: Scheduling Parameters, T1 CH 8.1 Page No [247- 255] T3 Sheet No End Semester
18 CO2 Chalk,LTC,PPT,Talk
2 Controlling Process Priorities. [24,30,28,27] Exam,SEM-EXAM1
COI- Systems calls, exceptions and interrupts, T2 CH [3] Page No [39-49], T3Sheet End Semester
23 CO3 Chalk,LTC,PPT,Talk
1 Assembly trap handlers, No[84,33,18,34.37,32] Exam,SEM-EXAM2
3/24
7/23/2020
Teaching-Learning
Sess.No. CO COI Topic Book No[CH No][Page No] EvaluationComponents
Methods
COI- Memory management policies: Page faults and R1 CH [22] Page No [243 - 256], T1 CH [9] End Semester
28 CO3 Chalk,LTC,PPT,Talk
2 replacement algorithms. Page No [299,304]. T3 Sheet No [18,28,21] Exam,SEM-EXAM2
COI- Binary Semaphores (Locks), Counting R1 CH [31.1-31.4] Page No [367] T1 CH End Semester
37 CO4 Chalk,LTC,PPT,Talk
1 Semaphores, algorithm semop [11.2.3] Page No [376] Exam,SEM-EXAM2
COI- The boot loader: Assembly bootstrap, C T2 Appendix A, B Page No [95 - 103] R9 End Semester
40 CO4 Chalk,LTC,PPT,Talk
2 bootstrap, Introduction to Assembly language CH[4,5] Page No [104, 125 Exam,SEM-EXAM2
SESSION NUMBER : 1
SESSION NUMBER : 2
4/24
7/23/2020
5 Attendance/Poll/Pop Question 1 Talk --- NOT
APPLICABLE ---
--- NOT
20 Traditional UNIX systems 2 PPT
APPLICABLE ---
--- NOT
5 Ask for any doubts through Public chat/ Break 1 Talk
APPLICABLE ---
--- NOT
10 Modern UNIX systems 2 PPT
APPLICABLE ---
--- NOT
10 LINUX Kernel 2 PPT
APPLICABLE ---
SESSION NUMBER : 3
SESSION NUMBER : 4
Session Outcome: 1 Understand and Explore the Design of File Subsystem and Buffer Cache Algorithms.
SESSION NUMBER : 5
Session Outcome: 1 Understand and explore the Design of Buffer Cache allocation algorithms.
SESSION NUMBER : 6
Session Outcome: 1 Understand and Explore the Design of Lower Level File System Algorithms: iget, iput, bmap, namei
Session Outcome: 1 Understand and Explore the Design of Lower Level File System Algorithms
SESSION NUMBER : 8
Session Outcome: 1 Understand and Explore the Design of File System Calls: Open, read, write, close
SESSION NUMBER : 9
Session Outcome: 1 Understand and Explore the Design of File System Calls: creat, mknod, chdir, stat
SESSION NUMBER : 10
Session Outcome: 1 Understand and Explore the Design of File System Calls: Pipe, dup, link, unlink
SESSION NUMBER : 11
6/24
7/23/2020
APPLICABLE ---
SESSION NUMBER : 12
SESSION NUMBER : 13
SESSION NUMBER : 14
Session Outcome: 1 Understand and Explore the Design of sleep and wakeup algorithms
SESSION NUMBER : 15
Session Outcome: 1 Understand and Explore the Design of Process system calls: fork, kill, exit
SESSION NUMBER : 16
Session Outcome: 1 Understand init process and Explore the Design of Exec and shell,
7/24
7/23/2020
10 Design and Implementation of vm.c,exec.c, sysfile.c, sh.c, init.c 3 LTC --- NOT
APPLICABLE ---
--- NOT
10 Conclusion & Summary 3 Talk
APPLICABLE ---
SESSION NUMBER : 17
Session Outcome: 1 Understand and Explore the Design of process scheduling: Multiplexing, mycpu and myproc.
SESSION NUMBER : 18
Session Outcome: 1 Understand and Explore the Design of process scheduling: schedule_process, Scheduling Parameters, Controlling Process Priorities.
SESSION NUMBER : 19
Session Outcome: 1 Understand and explore the design of process scheduling: Fair Share Scheduler, Real-Time Processing
SESSION NUMBER : 20
Session Outcome: 1 Understand system calls for time, clock, and console
SESSION NUMBER : 21
Session Outcome: 1 Understand and Explore the Design of Operating system organization and page tables
SESSION NUMBER : 22
Session Outcome: 1 Understand and Explore the Design of Page tables: Physical memory allocation
SESSION NUMBER : 23
Session Outcome: 1 Understand Systems calls, exceptions, and interrupts, Assembly trap handlers,
SESSION NUMBER : 24
Session Outcome: 1 Understand and Explore the Design of Disk driver and scheduling
SESSION NUMBER : 25
Session Outcome: 1 Understand and Explore the Design of the process address space manipulation
SESSION NUMBER : 26
Session Outcome: 1 Understand and Explore the Design of Page tables: User part of an address space, sbrk, exec
9/24
7/23/2020
5 Ask for any doubts through Public chat/ Break 1 Talk --- NOT
APPLICABLE ---
10 Xv6: brk, exec sys_sbrk, growproc, setupkvm, exec, sys_exec 3 PPT Case Study
--- NOT
10 Implementation of sysproc.c, proc.c, vm.c, exec.c, sysfile.c 3 LTC
APPLICABLE ---
SESSION NUMBER : 27
Session Outcome: 1 Understand and Explore the Design of memory management policies: swapping and Demand Paging
SESSION NUMBER : 28
Session Outcome: 1 Understand and Explore the Design of Page faults and replacement algorithms
SESSION NUMBER : 29
Session Outcome: 1 Understand and Explore the Design of TLB and Segmentation
SESSION NUMBER : 30
Session Outcome: 1 Understand and Explore the Design of Hybrid approach and Multi-level paging.
SESSION NUMBER : 31
Session Outcome: 1 Understand xv6 Locking: spin locks, Compare-And-Swap, Load-Linked and Store-Conditional, bcache.lock,cons.lock,ftable.lock,icache.lock,
idelock,kmem.lock,log.lock
10/24
7/23/2020
APPLICABLE ---
Locking algorithms: atomic exchange (xchg), spin locks, Compare-And-Swap, Load-Linked --- NOT
20 2 PPT
and Store-Conditional APPLICABLE ---
--- NOT
5 Ask for any doubts through Public chat/ Break 1 Talk
APPLICABLE ---
Xv6 Locking: bcache.lock,cons.lock,ftable.lock,icache.lock
10 2 PPT Case Study
Idelock,kmem.lock,log.lock,ptable
--- NOT
10 Explanation of lockticks lock,inode’sip->lock. 2 PPT
APPLICABLE ---
SESSION NUMBER : 32
Session Outcome: 1 Understand xv6 Locking: Fetch-And-Add, Lock With Queues, Test-and-set, Yield, Wakeup,
sleeplock,spinlock,getcallerpcs,acquire,release,kvmalloc, xchg,acquiresleep,getcallerpcs,holding,initlock
SESSION NUMBER : 33
Session Outcome: 1 Understand and Explore the Design Models of inter-process communication: message passing – Message Queues.
SESSION NUMBER : 34
Session Outcome: 1 Understand and Explore the Design of inter-process communication: shared memory
SESSION NUMBER : 35
SESSION NUMBER : 36
11/24
7/23/2020
Session Outcome: 1 Understand and Explore the Design mutex, concurrent Linked Lists
SESSION NUMBER : 37
Session Outcome: 1 Understand and Explore the Design Binary Semaphores (Locks), Counting Semaphores
SESSION NUMBER : 38
Session Outcome: 1 Understand and Explore the Design The Producer/Consumer (Bounded Buffer) Problem, Reader-Writer Locks, The Dining Philosophers
SESSION NUMBER : 39
Session Outcome: 1 Understand and Explore the Design Deadlocks, banker’s algorithm
SESSION NUMBER : 40
Session Outcome: 1 Understand The boot loader: Assembly bootstrap, C bootstrap and Assembly language.
--- NOT
10 kernel.ld 2 PPT
APPLICABLE ---
Pre Lab: 1. cat.c: which forms the essence of cat) copies data from its standard input to its standard output. If an error
occurs, it writes a message to the standard error. 2. fork.c: A Simple Child Creation Program Post Lab: 1.C library
1 CO5
functions for file handling. Standard I/O library that will copy data from one file to another file. 2.io.c: A Program That
Does I/O
Pre lab: 1. ccp.c: Copying a File. Show a pictorial arrangement of File Descriptor, File and Inode tables for a single
2 process that has two different files open. 2. Write a system program which will opens files in the parent and uses dup2 in CO5
the child to reassign the descriptors
Pre Lab: 1. execl and execv, Gathering the exit Status using wait with standard input and output redirection. 2. Show a
3 pictorial arrangement - Sharing of open files between parent and child after fork. Post Lab: 1.orphan.c, zombie.c: create CO5
orphan and processes 2.Program that creates a new Process to Copy Files
Pre Lab: 1.pipe.c: Runs two programs in a pipeline Child runs cat, parent runs tr 2. A half-baked directory using mknod.
4 Post Lab: 1.mylink.c -- create the filename "another.txt" and link it to the other file. Later delete it using unlink. CO5
2.Unlinking an opened file
In lab: 1.attributes.c -- Uses lstat call and struct stat to display file attributes. 2. lsdir.c -- Lists only directories - Uses
5 S_IFMT and S_ISDIR macros Post Lab: mychown.c -- change the group of the file. mychmod.c -- changed the CO5
permission flags of the file.
In Lab: 1.signal.c -- Waits for 5 seconds for user input and then . 2.Generates SIGALRM that has a handler
specifiedkillproce ss.c -- Uses fork and exec to run a user-defined programand kills it if it doesn’t complete in 5 seconds
6 CO5
Post Lab: 1. mynice.c: A child process inherits its priority value from its parent, and change it by using nice () 2.
program to demonstrate time and times System Call
In Lab:1.Write a program to display the address space of various segments (stack, heap, data...etc) and show that
memory address a programmer see is virtual not real. 2. Develop a program to illustrate the effect of free() on the
7 program break. This program allocates multiple blocks of memory and then frees some or all of them, depending on its CO5
(optional) command-line arguments. Post Lab: 1. Write a simple memory allocator: memalloc is a simple memory
allocator. Which uses your own malloc(), calloc(), realloc() and free() implemented using system calls.
In Lab: 1.Write a program to demonstrate Accessing Memory with Paging - linear translates. 2. Write a program that
translates logical to physical addresses for a virtual address space of size 2^16 = 65,536 bytes. Your program will read
8 CO5
from a file containing logical addresses and, using a TLB as well as a page table Post Lab: 1. Write a program to
demonstrate Accessing Memory with segmentation - linear translates
In Lab: 1. Write a program for the simulation of following paging algorithms FIFO LRU and MRU NFU Post Lab: 1.
9 CO5
Program to demonstrate Multi-level Page Table Control Flow
In Lab: 1. System V shared memory 2. Write a program to create 5 pthreads and display Hello world. Main thread
10 should wait until all new threads are terminated. Use Simpler Argument Passing to a Thread. Post Lab: System V CO5
message queues
In Lab: 1. Illustrate how mutex is used for thread synchronization, print the counter variable upon each increment which
is in the critical section. (Two threads update a global shared variable with and without synchronization) 2. Write a
11 CO5
UNIX system program to implement concurrent Linked List Post Lab: 1.Write a Unix System program to make A Parent
Waiting for Its Child using semaphores
In Lab: Solve producer consumer problem using mutex, binary and counting semaphores, and condition variables Post
12 CO5
Lab: 1.Solve readers writer’s problem using mutex and semaphores
SESSION NUMBER : 1
13/24
7/23/2020
APPLICABLE ---
--- NOT
40 Experiment Using Tool 3 LTC
APPLICABLE ---
--- NOT
10 Assessment and Interaction 3 Talk
APPLICABLE ---
--- NOT
30 Documenting Results Summary and Result Explanation, Submitting as Assignment in LMS 3 Talk
APPLICABLE ---
SESSION NUMBER : 2
Session Outcome: 1 implement: 1. ccp.c 2. Write a system program which will opens files in the parent and uses dup2 in the child to reassign the descriptors
SESSION NUMBER : 3
Session Outcome: 1 Implement : 1. execl and execv 2. Show a pictorial arrangement - Sharing of open files between parent and child after fork.
SESSION NUMBER : 4
SESSION NUMBER : 5
Session Outcome: 1 Implement : 1.attributes.c -- Uses lstat call and struct stat to display file attributes. 2. lsdir.c -- Lists only directories - Uses S_IFMT and
S_ISDIR macros
SESSION NUMBER : 6
Session Outcome: 1 Implement : 1. signal.c 2. Generates SIGALRM that has a handler specified kill proce ss.c -- Uses fork and exec to run a user-defined program
and kills it if it doesn’t complete in 5 seconds
SESSION NUMBER : 7
Session Outcome: 1 Implement : 1. display the address space of various segments (stack, heap, data...etc) and show that memory address a programmer see is
virtual, not real.
SESSION NUMBER : 8
Session Outcome: 1 Implement : a program to demonstrate Accessing Memory with Paging - linear translates.
SESSION NUMBER : 9
Session Outcome: 1 Implement : 1. program for the simulation of following paging algorithms FIFO LRU and MRU NFU
15/24
7/23/2020
APPLICABLE ---
Experiment explanation : 1. Write a program for the simulation of following paging --- NOT
10 2 Talk
algorithms FIFO LRU and MRU NFU APPLICABLE ---
--- NOT
5 Split sections 1 Talk
APPLICABLE ---
--- NOT
40 Experiment Using Tool 3 LTC
APPLICABLE ---
--- NOT
10 Assessment and Interaction 1 Talk
APPLICABLE ---
--- NOT
30 Documenting Results Summary and Result Explanation,Submitting as Assignment in LMS 2 Talk
APPLICABLE ---
SESSION NUMBER : 10
Session Outcome: 1 Implement : a program to create 5 pthreads and display Hello world. Main thread should wait until all new threads are terminated. Use Simpler
Argument Passing to a Thread.
SESSION NUMBER : 11
Session Outcome: 1 Implement : a UNIX system program to implement concurrent Linked List
SESSION NUMBER : 12
Session Outcome: 1 Implement producer-consumer problem using a mutex, binary and counting semaphores, and condition variables
16/24
7/23/2020
Skilling
session Topics/Experiments CO-Mapping
no
Bridge COurse:Linux Command Line: What Is the Shell, Navigation, Exploring the System, Compiling Programs Xv6
1 design & implementation: cat.c syscall.c syscall.h sysproc.c user.h usys.S xv6 Customisation: 1. XV6 Installation 2. CO1
adda-new- system-call-in- xv6
Linux Command Line: Manipulating Files and Directories. Xv6 design & implementation: echo.c xv6 customization: cp,
2 CO1
wc.c
Linux Command Line: Searching for Files, Archiving and Backup Xv6 design & implementation: ls.c xv6
3 CO1
customization: ls, date, head
Bridge course: Linux Command Line: Seeing the World as The Shell Sees It, Advanced Keyboard Tricks, Permissions
4 Xv6 design & implementation: kill.c, grep.c xv6 customization: 1. Triply-Indirect- Block filesystem in xv6. 2. xv6 CO2
filesystem visualizer
Linux Command Line: Working with Commands, Redirection Xv6 design & implementation: exec.c xv6 customization:
5 CO2
pwd, cd, mv
Linux Command Line: Seeing the World as The Shell Sees It, Advanced Keyboard Tricks, Permissions Xv6 design &
6 CO2
implementation: ln.c rm.c, mkdir.c xv6 customization: rm, getpinfo
Bridge Course: Linux Command Line: Formatting Output, Printing Xv6 design & implementation: vm.c xv6
7 CO3
customization: shell
Linux Command Line: Text Processing, awk Xv6 design & implementation: vm.c, umalloc.c xv6 customization: Priority
8 CO3
scheduler in xv6, chpr
9 Linux Command Line: Processes Xv6 design & implementation: vm.c xv6 customization: ps, back trace CO3
Linux Command Line: The Environment, A Gentle Introduction To vi, Customizing the Prompt Xv6 design &
10 CO4
implementation: vm.c xv6 shared memory
Bridge Course: Linux Command Line: Package Management, Storage Media, Networking xv6: A Sample Assembly
11 CO4
Language Program xv6 customization: xv6 Assembly code
Linux Command Line: Writing Shell Scripts Assembly programming: 1. Using Inline Assembly 2. Using Li Porting xv6
12 CO4
with POSIX compliance + VFS + ulibc + ACPI
SESSION NUMBER : 1
Session Outcome: 1 Exploring the System, Compiling Programs and Execution of Programs
Session Outcome: 2 Understand Xv6 design & implementation: cat.c syscall.c syscall.h sysproc.c user.h usys.S 1. XV6 Installation 2. add a-new- system-call-in-
xv6
SESSION NUMBER : 2
17/24
7/23/2020
40 experiment using tool 3 LTC --- NOT
APPLICABLE ---
--- NOT
10 Assessment and Interaction 2 Talk
APPLICABLE ---
--- NOT
30 Documenting Results,submitting in LMS as assignment 2 Talk
APPLICABLE ---
SESSION NUMBER : 3
SESSION NUMBER : 4
Session Outcome: 1 Understand Xv6 design & implementation: ln.c rm.c, mkdir.c
SESSION NUMBER : 5
SESSION NUMBER : 6
SESSION NUMBER : 7
SESSION NUMBER : 8
SESSION NUMBER : 9
SESSION NUMBER : 10
SESSION NUMBER : 11
SESSION NUMBER : 12
Session Outcome: 2 Porting xv6 with POSIX compliance + VFS + ulibc + ACPI
Assignment
Week Assignment Type Topic Details co
No
Hour 1 2 3 4 5 6 7 8 9
Day Component
Mon V-S13,V-S14,V- V-S13,V-S14,V-
- - S15,V-S16,V-S17,V- S15,V-S16,V-S17,V- - -
Theory - - -- -- S18,V-S19,V-S20,V- S18,V-S19,V-S20,V- - - ---
- - S21,V-S22,V-S23,V- S21,V-S22,V-S23,V- - -
S24,V-S25 S24,V-S25
- - - -
Tutorial - - -- -- -- -- - - ---
- - - -
Lab - - V-S13,V-S13,V-S14,V- V-S13,V-S13,V-S14,V- -- -- - - ---
- - S14,V-S15,V-S15,V-S16,V- S14,V-S15,V-S15,V-S16,V- - -
- - S16,V-S17,V-S17,V-S18,V- S16,V-S17,V-S17,V-S18,V- - -
S18,V-S19,V-S19,V-S20,V- S18,V-S19,V-S19,V-S20,V-
S20,V-S21,V-S21,V-S22,V- S20,V-S21,V-S21,V-S22,V-
20/24
7/23/2020
S22,V-S23,V-S23,V-S24,V- S22,V-S23,V-S23,V-S24,V-
S24,V-S25,V-S25 S24,V-S25,V-S25
- - - -
Skilling - - -- -- -- -- - - ---
- - - -
- - V-S1,V-S2,V-S3,V-S4,V- V-S1,V-S2,V-S3,V-S4,V- - -
Theory - - S5,V-S6,V-S7,V-S8,V-S9,V- S5,V-S6,V-S7,V-S8,V-S9,V- -- -- - - ---
- - S10,V-S11,V-S12 S10,V-S11,V-S12 - -
- - - -
Tutorial - - -- -- -- -- - - ---
- - - -
V-S1,V-S1,V-S2,V- V-S1,V-S1,V-S2,V-
Tue S2,V-S3,V-S3,V-S4,V- S2,V-S3,V-S3,V-S4,V-
- - S4,V-S5,V-S5,V-S6,V- S4,V-S5,V-S5,V-S6,V- - -
Lab - - -- -- S6,V-S7,V-S7,V-S8,V- S6,V-S7,V-S7,V-S8,V- - - ---
- - S8,V-S9,V-S9,V- S8,V-S9,V-S9,V- - -
S10,V-S10,V-S11,V- S10,V-S10,V-S11,V-
S11,V-S12,V-S12 S11,V-S12,V-S12
- - - -
Skilling - - -- -- -- -- - - ---
- - - -
V-S13,V-S14,V-S15,V-
- - - -
S16,V-S17,V-S18,V-
Theory - - --- --- --- --- - -
S19,V-S20,V-S21,V-
- - - -
S22,V-S23,V-S24,V-S25
- - - -
Tutorial - - --- --- --- --- - - --
Wed - - - -
- - - -
Lab - - --- --- --- --- - - --
- - - -
- - - -
Skilling - - --- --- --- --- - - --
- - - -
- - - -
Theory - - --- --- --- --- - - ---
- - - -
- - - -
Tutorial - - --- --- --- --- - - ---
- - - -
Thu
- - - -
Lab - - --- --- --- --- - - ---
- - - -
- - - -
Skilling - - --- --- --- --- - - ---
- - - -
- - - -
Theory - - --- --- --- --- - - --
- - - -
- - - -
Tutorial - - --- --- --- --- - - --
- - - -
- - - -
Lab - - --- --- --- --- - - --
Fri - - - -
V-S13,V-S13,V-S14,V-
S14,V-S15,V-S15,V-
S16,V-S16,V-S17,V-
- - - - S17,V-S18,V-S18,V-
Skilling - - --- --- --- --- - - S19,V-S19,V-S20,V-
- - - - S20,V-S21,V-S21,V-
S22,V-S22,V-S23,V-
S23,V-S24,V-S24,V-
S25,V-S25
- - - -
Theory -- -- -- -- --
- - - -
- - - -
Tutorial -- -- -- -- --
- - - -
Sat
- - - -
Lab -- -- -- -- --
- - - -
- - - -
Skilling -- -- -- -- --
- - - -
Sun - - - -
Theory -- -- -- -- --
- - - -
- - - -
Tutorial -- -- -- -- --
- - - -
- - - -
Lab -- -- -- -- --
- - - -
Skilling - - -- -- -- -- - - --
21/24
7/23/2020
- - - -
REMEDIAL CLASSES:
Supplement course handout, which may perhaps include special lectures and discussions that would be planned, and schedule notified according
SELF-LEARNING:
Content beyond syllabus covered (if any) should be delivered to all students that would be planned, and schedule notified accordingly.
S.no Advanced Topics, Additional Reading, Research papers and any CO ALM References/MOOCS
EVALUATION PLAN:
Evaluation Type Evaluation Component Weightage/Marks Assessment Dates Duration (Hours) CO1 CO2 CO3 CO4 CO5
Weightage 9 9
Lab End Semester Exam 120
End Semester Max Marks 50 50
Summative Weightage 4.5 1.125 1.125 1.125 1.125
Exam – Exercise 120
Evaluation Max Marks 50 12.5 12.5 12.5 12.5
Total= 40 % Weightage 26.5 6.625 6.625 6.625 6.625
End Semester Exam 180
Max Marks 100 25 25 25 25
Weightage 2 0.5 0.5 0.5 0.5
Questions &Answers 100
Max Marks 100 25 25 25 25
Weightage 8 8
Continuous Evaluation - Lab Exercise 100
In Semester Max Marks 100 100
Formative Weightage 6 1.5 1.5 1.5 1.5
ALM 50
Evaluation Max Marks 100 25 25 25 25
Total= 25 % Weightage 5 1 1 1 1 1
Attendance 50
Max Marks 5 1 1 1 1 1
Weightage 4 1 1 1 1
Home Assignment and Textbook 60
Max Marks 40 10 10 10 10
Weightage 11.65 5.825 5.825
Semester in Exam-I 120
Max Marks 50 25 25
In Semester Weightage 11.65 5.825 5.825
Semester in Exam-II 120
Summative Max Marks 50 25 25
Evaluation Weightage 7.7 7.7
Total= 35 % Lab In Semester Exam 100
Max Marks 50 50
Weightage 4 1 1 1 1
Exercise 100
Max Marks 50 12.5 12.5 12.5 12.5
ATTENDANCE POLICY:
Every student is expected to be responsible for regularity of his/her attendance in class rooms and laboratories, to appear in scheduled tests and examinations and
fulfill all other tasks assigned to him/her in every course
In every course, student has to maintain a minimum of 85% attendance to be eligible for appearing in Semester end examination of the course, for cases of medical
issues and other unavoidable circumstances the students will be condoned if their attendance is between 75% to 85% in every course, subjected to submission of
medical certificates, medical case file and other needful documental proof to the concerned departments
DETENTION POLICY :
In any course, a student has to maintain a minimum of 85% attendance and In-Semester Examinations to be eligible for appearing to the Semester End Examination,
failing to fulfill these conditions will deem such student to have been detained in that course.
PLAGIARISM POLICY :
Supplement course handout, which may perhaps include special lectures and discussions
COURSE TEAM MEMBERS, CHAMBER CONSULTATION HOURS AND CHAMBER VENUE DETAILS:
Supplement course handout, which may perhaps include special lectures and discussions
Delivery Chamber Chamber
Sections of Chamber Consultation Signature of
Name of Faculty Component of Consultation Day Consultation Room
Faculty Timings for each day Course faculty:
Faculty (s) No:
7-MA,22-
SHAHANA BANO L - - - -
MA
SHAHANA BANO P 7-A,22-A - - - -
SHAHANA BANO S 7-A,22-A - - - -
22/24
7/23/2020
VISHNUVARDHAN L 1-MA,16- - - - -
MANNAVA MA
VISHNUVARDHAN
P 1-A,16-A - - - -
MANNAVA
VISHNUVARDHAN
S 1-A,16-A - - - -
MANNAVA
2-MA,17-
VIJAYA BABU BURRA L - - - -
MA
VIJAYA BABU BURRA P 2-A,17-A - - - -
VIJAYA BABU BURRA S 2-A,17-A - - - -
SAI KIRAN 3-MA,18-
L - - - -
PASUPULETI MA
SAI KIRAN
P 3-A,18-A - - - -
PASUPULETI
SAI KIRAN
S 3-A,18-A - - - -
PASUPULETI
THIRUPATHI RAO 4-MA,19-
L - - - -
KOMATI MA
THIRUPATHI RAO
P 4-A,19-A - - - -
KOMATI
THIRUPATHI RAO
S 4-A,19-A - - - -
KOMATI
TIRAPATHI REDDY 5-MA,20-
L - - - -
BURRAMUKKU MA
TIRAPATHI REDDY
P 5-A,20-A - - - -
BURRAMUKKU
6-MA,21-
Pradeepini Gera L - - - -
MA
Pradeepini Gera P 6-A,21-A - - - -
Pradeepini Gera S 6-A,21-A - - - -
8-MA,23-
swetha Kolachana L - - - -
MA
swetha Kolachana P 8-A,23-A - - - -
swetha Kolachana S 8-A,23-A - - - -
Naresh Vurukonda P 3-B,18-B - - - -
Naresh Vurukonda S 8-B,19-B - - - -
Talluri Lakshmi Siva
P 25-B - - - -
Rama Krishna
Talluri Lakshmi Siva
S 3-B,15-B - - - -
Rama Krishna
VENKATA
P 4-B - - - -
MANDHALA
VENKATA
S 9-B,20-B - - - -
MANDHALA
LAKSHMANA
L 9-MA - - - -
MAGULURI
LAKSHMANA
P 9-A,14-B - - - -
MAGULURI
LAKSHMANA
S 9-A,21-B - - - -
MAGULURI
CHANDOL MOHAN
L 10-MA - - - -
KUMAR
CHANDOL MOHAN
P 10-A,19-B - - - -
KUMAR
CHANDOL MOHAN
S 10-A,23-B - - - -
KUMAR
SAI PRASANTHI 11-MA,24-
L - - - -
MAGANTY MA
SAI PRASANTHI
P 11-A,24-A - - - -
MAGANTY
SAI PRASANTHI
S 11-A,24-A - - - -
MAGANTY
Yellamma Pachipala P 1-B,16-B - - - -
Yellamma Pachipala S 4-B,16-B - - - -
sadhana BURLA L 14-MA - - - -
sadhana BURLA P 11-B,14-A - - - -
sadhana BURLA S 5-A,14-A - - - -
GUNASEKHAR T P 24-B - - - -
GUNASEKHAR T S 5-B,17-B - - - -
ASDAQUE HUSSAIN
L 13-MA - - - -
MOHAMMED
ASDAQUE HUSSAIN
P 13-A - - - -
MOHAMMED
ASDAQUE HUSSAIN S 6-B,13-A - - - -
23/24
7/23/2020
MOHAMMED
BHAVANI VASANTHA P 6-B,21-B - - - -
BHAVANI VASANTHA S 11-B,24-B - - - -
MOUNIKA
P 10-B,13-B - - - -
VALASAPALLI
MOUNIKA
S 10-B,22-B - - - -
VALASAPALLI
JHANSI RANI 12-MA,25-
L - - - -
PARITALA MA
JHANSI RANI
P 12-A,25-A - - - -
PARITALA
JHANSI RANI
S 12-A,25-A - - - -
PARITALA
ARPITA ROY P 7-B,22-B - - - -
ARPITA ROY S 25-B - - - -
RAVI TEJA
L 15-MA - - - -
KANAKALA
RAVI TEJA
P 9-B,15-A - - - -
KANAKALA
RAVI TEJA
S 15-A - - - -
KANAKALA
M Mekala P 8-B,23-B - - - -
M Mekala S 20-A - - - -
Gottumukkala varma S 1-B,13-B - - - -
HITESHWAR AZAD P 2-B,17-B - - - -
HITESHWAR AZAD S 7-B,18-B - - - -
Debnath Bhattacharyya P 5-B,20-B - - - -
Debnath Bhattacharyya S 2-B,14-B - - - -
Sindhura Surapaneni P 12-B,15-B - - - -
Sindhura Surapaneni S 12-B - - - -
GENERAL INSTRUCTIONS
Students should come prepared for classes and carry the text book(s) or material(s) as prescribed by the Course Faculty to the class.
NOTICES
All notices concerning the course will be displayed on the respective Notice Boards.
(VISHNUVARDHAN MANNAVA)
Department Of CSE
HEAD OF DEPARTMENT:
24/24