



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
The syllabus for the TCSS 422 course on Operating Systems at the Institute of Technology. The document covers the course introduction, operating systems, management of resources, concepts of virtualization/abstraction, CPU, memory, I/O, operating system design goals, assignments, quizzes, exams, and programs. The document also mentions the CentOS 7 virtual machine and C programming in TCSS 422 C mentoring. useful for study notes, lecture notes, summaries, assignments, and university essays.
Typology: Study notes
1 / 7
This page cannot be seen from the preview
Don't miss anything!
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma
TCSS 422: OPERATING SYSTEMS
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
From Virginia Tech Department of Computer Science - 2011 Better than 50% chance of A/B Less than 50% chance of A/B
Repositories of RPM (RedHat Package Files)
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
Responsible for: Making it easy to run programs Allowing programs to share memory Enabling programs to interact with devices March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
OS is in charge of making sure the system operates correctly and efficiently. The OS is a resource manager Manages CPU, disk, network I/O Enables many programs to Share the CPU Share the underlying physical memory (RAM) Share physical devices
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
prompt> gcc prompt> ./cpu "A" -o cpu cpu.c -Wall A A A ˆC prompt> March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
prompt> ./cpu A [1] 7353 & ; ./cpu B & ; ./cpu C & ; ./cpu D & [2] 7354 [3] 7355 [4] 7356 A B D C A B D C A C B D ... Even though we have only programs seem to be running one processor at the same time, all four of!
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
12 #include#include <unistd.h><stdio.h> 34 #include#include <stdlib.h>"common.h" (^56) int 78 main({ int argc, char *argv[]) 9 int *p = malloc(sizeof(int)); memory // a1: allocate some 1011 assert(pprintf("(%d) != NULL address); of p: %08x\n", 12 getpid(), (unsigned) address p); (^) of the// a2: memmoryprint out the 1314 p =while 0 ;( (^1) )// a3: { put zero into the first slot of the memory 1516 Spin(p = *p 1 ); + 1 ; (^1718) } printf("(%d) p: %d\n", getpid(), *p); // a (^1920) } return 0 ;
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
prompt> (2134) memory address./mem of p: 00200000 (2134) (2134) p:p: (^12) (2134) (2134) p:p: (^34) (2134) ˆC p: 5
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
prompt> ./mem &; ./mem & [1] 24113 [2] 24114 (24113) memory address of p: 00200000 (24114) memory (24113) p: 1 address of p: 00200000 (24114) p: 1 (24114) p: 2 (24113) p: 2 (24113) p: 3 (24114) p: 3 ...
Key take-aways:
Isolation
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
12 #include#include <stdio.h><stdlib.h> 34 #include "common.h" 56 volatile intint loops; counter = 0 ; (^78) void *worker(void *arg) { 910 intfor i;(i = 0 ; i < loops; i++) { (^1112) } counter++; (^1314) } return NULL; 15 ... Not the same as Java volatile:
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.
1617 intmain(int argc, char *argv[]) 1819 { if (argc != 2 ) { 2021 fprintf(stderr,exit( 1 ); "usage: threads
March 28, 2017 TCSS422: Operating Systems [Spring 2017] Institute of Technology, University of Washington - Tacoma L1.