Giuseppe CATTANEO | OPERATING SYSTEMS
Giuseppe CATTANEO OPERATING SYSTEMS
cod. 0512100006
OPERATING SYSTEMS
0512100006 | |
COMPUTER SCIENCE | |
EQF6 | |
COMPUTER SCIENCE | |
2021/2022 |
OBBLIGATORIO | |
YEAR OF COURSE 2 | |
YEAR OF DIDACTIC SYSTEM 2017 | |
AUTUMN SEMESTER |
SSD | CFU | HOURS | ACTIVITY | |
---|---|---|---|---|
INF/01 | 6 | 48 | LESSONS | |
INF/01 | 3 | 24 | LAB |
Objectives | |
---|---|
KNOWLEDGE AND UNDERSTANDING - STRUCTURED AND ORGANIC VISION OF A MODERN OPERATING SYSTEM - UNDERSTANDING OF THE MAIN IMPLEMENTATION CHOICES AND MECHANISMS OF MANAGEMENT OF AN INFORMATION SYSTEM - INTERFACE DESCRIPTION AND A FILE SYSTEM IMPLEMENTATION - DEFINING THE PROCESS STRUCTURE, THE SCHEDULING ALGORITHMS TO OPTIMIZE THE USE OF THE CPU, AND THE TIMING FOR THE MANAGEMENT OF SHARED RESOURCES - MANAGEMENT OF THE CENTRAL MEMORY - UNDERSTANDING OF LINUX (UNIX) OPERATING SYSTEM WITH MAIN SYSTEM CALL AND SHELL APPLYING KNOWLEDGE AND UNDERSTANDING - INSTALL, CONFIGURE AND MANAGE A MULTIUSER OPERATING SYSTEM - DESIGN AND IMPLEMENT SIMPLE SYSTEM FUNCTIONS - EVALUATE THE PERFORMANCE OF THE TARGET OPERATING SYSTEM, OPTIMIZING THROUGH TUNING AND PROFILING THE RESOURCE USAGE - IDENTIFY OPTIMAL SOLUTIONS INDEPENDENTLY EVALUATING THE EFFICIENCY AND FORMAL CORRECTNESS. |
Prerequisites | |
---|---|
THE STUDENTS NEED TO KNOW THE COMPUTER ARCHITECTURE AND THE C PROGRAMMING LANGUAGE. |
Contents | |
---|---|
48 HOURS FOR CLASSES 24 HOURS FOR LABORATORY 1) INTRODUCTION OF THE ORGANIZATION, THE DATA STRUCTURES, AND THE OPERATIONS OF A MODERN OPERATING SYSTEM. PROCESS MANAGEMENT AND MEMORY. 2) BASIC ELEMENTS OF THE LINUX OPERATING SYSTEM: INSTALLATION AND BASIC BASH COMMANDS. 3) STRUCTURE OF OPERATING SYSTEMS: SERVICES, USER INTERFACE, SYSTEM CALLS, TYPES OF CALLS, AND SYSTEM PROGRAMS. 4) FILE SYSTEM INTERFACE: THE CONCEPT OF FILE ACCESS METHODS, DIRECTORY STRUCTURE, MOUNTING A FILE SYSTEM BLOCK ALLOCATION METHOD, MANAGEMENT OF FREE SPACE. 5) IMPLEMENTATION OF FILE SYSTEM: STRUCTURES OF A FS, FS, AND DIRECTORIES. 6) I/O FILES: FILE DESCRIPTOR, STANDARD FILE OPERATIONS ON FILES, FILE TABLE, FILE SHARING, ATOMIC OPERATIONS, I/O BUFFER. 7) FILES AND DIRECTORIES: FILE TYPES, STAT STRUCTURE, REAL AND EFFECTIVE USER ID, ACCESS PERMISSIONS, LINKS. 8) PROCESSES: CONCEPT, SCHEDULING, OPERATIONS ON PROCESSES, PID, FORK, WAIT, EXIT, ENVIRONMENT, AND ENVIRONMENT VARIABLES, FILE SHARING, EXEC. 9) SCHEDULING: BASIC CONCEPTS, CRITERIA, SCHEDULING ALGORITHMS, AND EXAMPLES. 10) INTERPROCESS COMMUNICATION: UNIX PIPE AND FIFO. 11) THREADS AND SHARED MEMORY APPROACHES. 12) PROCESS SYNCHRONIZATION: THE PROBLEM OF CRITICAL REGION, IL PROBLEMA DELLA REGIONE CRITICA, PETERSON'S ALGORITHM, SEMAPHORES. 13) MEMORY MANAGEMENT: BACKGROUND, SWAPPING, CONTIGUOUS ALLOCATION, PAGING, AND PAGE TABLE STRUCTURE. 14) VIRTUAL MEMORY: BACKGROUND, DEMAND PAGING, COPY ON WRITE, PAGE REPLACEMENT, FRAME ALLOCATION, AND THRASHING 15) SIGNALS: CONCEPT, TYPES, AND USE THE SIGNALS. |
Teaching Methods | |
---|---|
THE COURSE "OPERATING SYSTEMS" PROVIDES: - A THEORETICAL PART OF LESSONS (48 HOURS) TO TRANSFER THE KNOWLEDGE ABOUT THE STRUCTURES OF AN OPERATING SYSTEM IN GENERAL AND PARTICULARLY FOR THE UNIX OS - A SECTION ON PRACTICAL ASPECTS (C PROGRAMMING CALLING LOW-LEVEL SYSTEM API) WILL BE DEVELOPED IN THE LABORATORY (24 HOURS). DURING THESE ACTIVITIES THE STUDENTS WILL EXPERIMENTS WITH THE UNIX API, WRITING, DEBUGGING, AND RUNNING SIMPLE PROGRAMS WRITTEN IN THE C PROGRAMMING LANGUAGE. THESE SMALL SAMPLE APPLICATIONS WILL BE PROFILED TO ACQUIRE OBJECTIVE DATA FOR THE TUNING STEP. |
Verification of learning | |
---|---|
THE ACHIEVEMENT OF THE OBJECTIVES OF THE COURSE IS CERTIFIED BY PASSING AN EXAM (WITH MARKS FROM 0 TO 30). THE EXAM INCLUDES A WRITTEN TEST AND, AFTER PASSING IT, AN ORAL TEST AIMED AT VERIFYING THE ACQUIRED SKILLS. DURING THE COURSE, THERE ARE 2 TESTS: ONE MID-TERM AND ANOTHER AT THE END). PASSING BOTH TESTS WILL ALLOW THE STUDENT TO TAKE ONLY THE ORAL EXAM AT THE FIRST SESSION ON THE CALENDAR. EACH TEST CONSISTS OF A SET OF 5 QUESTIONS TO WHICH THE STUDENT SHOULD PROVIDE OPEN ANSWERS. IN THE MID-TERM TESTS, THE QUESTIONS WILL BE RELATED ONLY TO THE TOPICS PRESENTED IN THE CORRESPONDING COURSE PERIOD. IN BOTH CASES FOR THE WRITTEN TESTS WILL BE GIVEN A TIME LIMIT OF 120 MIN. EACH STUDENT WILL BE PROVIDED WITH A SHEET WITH THE 5 QUESTIONS AND BLANK SPACE FOR THE ANSWERS. 4 QUESTIONS, EACH WITH GRADES FROM 0 TO 5, WILL REFER DIRECTLY TO THE THEORETICAL TOPICS OF THE COURSE, WHILE THE LAST, WITH GRADES FROM 0 TO 14, WILL BE A PROGRAMMING EXERCISE AND THE STUDENT SHOULD WRITE A PROGRAM IN C LANGUAGE WITH THE USE OF SOME OF THE SYSTEM CALLS OF THE LINUX OPERATING SYSTEM INTRODUCED DURING THE COURSE. THE KNOWLEDGE ACQUIRED BY THE STUDENT OF THE MAIN MODULES OF AN OPERATING SYSTEM AND ITS MAIN ORGANIZATION WILL BE VERIFIED BY MEANS OF THE ANSWERS PROVIDED TO THE FIRST 4 QUESTIONS. THE LEVEL OF ASSESSMENT OF THE TESTS SHALL TAKE INTO ACCOUNT THE COMPLETENESS AND ACCURACY OF THE ANSWERS AND THE CLARITY IN THE PRESENTATION. THE MINIMUM LEVEL OF ASSESSMENT (18) IS ASSIGNED WHEN THE STUDENT DEMONSTRATES UNCERTAINTIES IN THE APPLICATION OF THE METHODS STUDIED AND HAS A LIMITED KNOWLEDGE OF THE STRUCTURE AND ORGANIZATION OF AN OPERATING SYSTEM. THE MAXIMUM LEVEL (30) IS ASSIGNED WHEN THE STUDENT DEMONSTRATES A COMPLETE AND IN-DEPTH KNOWLEDGE OF THE CONCEPTS AND DIFFERENT MODULES OF AN OPERATING SYSTEM. IN ADDITION, IT IS ABLE TO SOLVE THE PROPOSED PROBLEMS BY BECOMING EFFICIENT AND ACCURATE TO THE SOLUTION AND SHOWS A REMARKABLE ABILITY TO CONNECT DIFFERENT CONCEPTS TO EACH OTHER. THE LAUDE IS ATTRIBUTED WHEN THE CANDIDATE DEMONSTRATES SIGNIFICANT MASTERY OF THEORETICAL AND OPERATIONAL CONTENTS AND SHOWS THAT HE KNOWS HOW TO PRESENT THE TOPICS WITH CONSIDERABLE PROPERTIES OF LANGUAGE AND AUTONOMOUS PROCESSING SKILLS EVEN IN CONTEXTS OTHER THAN THOSE PROPOSED BY THE TEACHER. THE PROGRAMMING EXERCISE WILL MAKE IT POSSIBLE TO VERIFY THE SKILLS IN THE USE OF THE LOW-LEVEL SERVICES PROVIDED BY THE OPERATING SYSTEM AND THEIR CORRECT USE FOR THE SOLUTION OF A CONCRETE PROBLEM. STUDENTS WHO HAVE NOT PASSED THE EXAMS WILL STILL BE ABLE TO TAKE THE TRADITIONAL EXAM. |
Texts | |
---|---|
A. SILBERSCHATZ, P.B. GALVIN, G.GAGNE: SISTEMI OPERATIVI: CONCETTI ED ESEMPI. 9A EDITION. PEARSON EDUCATION ITALIA, 2014, ISBN: 9788865183717 W.R. STEVENS, S.A. RAGO, “ADVANCED PROGRAMMING IN THE UNIX ENVIRONMENT”, ADDISON-WESLEY, ISBN: 9780321637734 SUGGESTED: C. NEWHAM, B. ROSENBLATT, “LEARNING THE BASH SHELL”, O'REILLY, ISBN: 0-596-00965-8 SOFTWARE / HARDWARE: OPERATING SYSTEM: LINUX PC CONNECTED TO INTERNET |
More Information | |
---|---|
TO ACHIEVE A GOOD KNOWLEDGE, IT IS REASONABLE TO ASSUME THAT ON AVERAGE 2 HOURS OF STUDY WILL BE REQUIRED FOR EACH HOUR OF LESSONS. THE COURSE REQUIRES THAT STUDENTS ACQUIRE A GOOD SKILL WITH C-LANGUAGE PROGRAMMING (WRITING CODE, COMPILING, DEBUGGING, AND RUNNING). IT IS THEREFORE DESIRABLE THAT EACH STUDENT WILL SPEND THE NECESSARY NUMBER OF HOURS IN NON-ASSISTED EDUCATIONAL LABORATORIES TO HIGHLIGHT AND FILL ANY EDUCATIONAL GAP. E-MAIL: CATTANEO@UNISA.IT |
BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2022-11-21]