Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Security-focused operating system wikipedia , lookup
Burroughs MCP wikipedia , lookup
Spring (operating system) wikipedia , lookup
Unix security wikipedia , lookup
Distributed operating system wikipedia , lookup
Memory management unit wikipedia , lookup
Course Syllabi Course Title and Code Operating Systems CSC229 Course Identification and General Information: Department Contact Hours Web Address Computer Science 2 theory classes per week of 75 minutes each 1 practical lab per week of 100 minutes Course Level 6 Credit Hours 4(3+2+0) http://www.coc.qu.edu.sa/en/Dr.master.syed/Pages/Course.aspx Course Instructor/Coordinator’s Name: Dr. Master Prince + Maha Al Otabi Textbook Title, Author, and Year: (1) Operating System Concepts, 9th Edition, Avi Silberschatz, Peter Baer Galvin, Greg Gagne, ISBN-13: 9781118063330, John Wiley & Sons, 2013. (2) Lab Booklet(Material includes 12 Practical part as experiments on Linux OS) Other Supplemental Materials: (1) Teach Yourself Linux in 24 Hours, Third Edition, Bill Ball, Stephen Smoogen, 2000. (2) Getting Started with Ubuntu 11.10 (Ubuntu’s Manual from official website): http://files.ubuntumanual.org/manuals/getting-started-withubuntu/11.10/en_US/print/Getting%20Started%20with%20Ubuntu%2011.10.pdf. (3) Operating Systems Design and Implementation, 3rd Edition, (2011), Kindle Edition, Andrew S. Tanenbaum, Albert S Woodhull, ISBN: o-13-142938-8. Specific Course Information: Catalog Description: Overview of operating systems (OS) principles and concepts, components, structure. OS services, system calls, APIs, interrupts, system mode and user mode, system programs, security, protection, OS design and implementation, processes. Process, operation on process, PCB, process synchronization (concurrency). CPU Scheduling: Basic concepts, scheduling criteria, states diagram, dispatching, context switching, CPU performance, resource allocation, and schedulers. Scheduling algorithms, preemptive and non-preemptive scheduling, SJF, Round Robin. Main memory, virtual memory, algorithms, swapping, contiguous memory allocation, segmentation, paging, page replacement, allocation of frames, memory-mapped files. File-Systems, File Concept, directories. o o o Pre-requisites: CEN 126. Co-Requisites: None. Required, Elective, or Selected Elective: Required. Specific Goals for the Course: Summary of the main learning outcomes for enrolled students. Provide a grand tour of the major components of OS. Page 1 of 4 Learn and understand the OS concepts and fundamentals, OS structure, I/O system, APIs, System calls, process management, memory management, File system. Illustrate several open-sources of OS. Install, and apply basic concepts using the Linux operating system. Clarify the various features of processes, including scheduling, creation, termination, and communication. Study and analyze various CPU Scheduling algorithms. Improve student's skills in thinking based on discussions and problem solving. Learn and summarize the main features, functionalities, and services of OS. Describe the mechanism of using interrupts, dispatching, context switching and describe the difference between processes and threads. Differentiate various process scheduler types. Understand and describe the memory management, swapping, contiguous memory allocation, memory paging, page tables, and memory segmentation. Describe the file systems. Program Outcomes Addressed by the Course: This course provides the following outcomes with the following relationship: Computer Science Program Outcome Relationship to Course a) An ability to apply knowledge of computing and mathematics appropriate to the program’s student outcomes and to the discipline. b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution. c) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs. d) An ability to function effectively on teams to accomplish a common goal. e) An understanding of professional, ethical, legal, security and social issues and responsibilities. f) An ability to communicate effectively with a range of audiences. g) An ability to analyze the local and global impact of computing on individuals, organizations, and society. h) Recognition of the need for and an ability to engage in continuing professional development. i) An ability to use current techniques, skills, and tools necessary for computing practice. j) Medium Not Related Not Related Medium Not Related Not Related Not Related Not Related High An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that Not Related demonstrates comprehension of the tradeoffs involved in design choices. k) An ability to apply design and development principles in the construction of software systems of varying complexity. Page 2 of 4 Not Related Brief List of Topics to be covered: Overview of OS principles and concepts, components, structure. OS services. system calls, APIs, interrupts, system mode and user mode, system programs, OS generation and System Boot. Protection and Security, OS design and implementation, Unix OS structure, other types of OS such as IOS. Processes & threads, operation of process, interposes communication, virtual Machine. Process management and process synchronization. CPU Scheduling: Basic concepts, scheduling criteria, states diagram, schedulers. Scheduling algorithms, FCFS, SJF preemptive and non-preemptive scheduling, Examples, Round Robin. Main memory, allocation algorithms, swapping process. Logical and physical addresses, Memory paging, page tables, Memory Segmentation, allocation of frames. File-Systems interface. Outcome Assessment: 1. Direct Assessment ☒ ☒ ☒ ☒ ☐ ☐ ☐ ☒ ☐ ☐ ☒ ☐ ☒ ☒ ☒ ☒ Midterm Written Exam I Midterm Written Exam II Final Written Exam Quizzes Homework Integrative Projects Students’ Portfolios Case Study Oral Exams Written Reports Participation in Lecture Illustrative Presentations Use of Computer Facilities by Students Reading of References Related to Course Topics Team Work Practice in the Lab 2. Indirect Assessment ☐ ☒ ☐ ☒ Pre-Course Questionnaire Post-Course Questionnaire Group Discussions Students’ Interviews Course Outline: Topics Contact Hours 7 10 Overview of operating systems principles and concepts, components, structure. OS services, system calls, APIs, and interrupts. System mode and user mode, system programs, OS generation and System Boot, Unix OS structure, other types of OS’ such as IOS. Page 3 of 4 10 6 9 10 5 Scheduling algorithms, FCFS, SJF preemptive and non-preemptive scheduling, Examples, Round Robin. Second mid Term Exam Main memory, allocation algorithms, swapping process. 4 Logical and physical addresses, Memory paging, page tables, Page table structures algorithms, Memory Segmentation, allocation of frames. File-Systems interface 4 Review 10 75 Protection and Security, OS design and implementation, Virtual Machine, processes & threads, operation on process, Interposes Communication, Synchronization. Process management and process synchronization, communication models. First mid Term Exam CPU Scheduling: Basic concepts, scheduling criteria, states diagram, schedulers. Total Contact Hours Notes: A 3 Credit Theory-Course should utilize 45 Contact Hours in 15 Weeks. A 2 Credit Practical-Course should utilize 30 Contact Hours in 15 Weeks. A 4 Credit Course (3 Theory and 1 Practical) should utilize 60 Contact Hours in 15 Weeks. Each theory-credited Contact Hour is equivalent to 50 lecture minutes and 10 minutes of rest. Each practical-credit Contact Hour is equivalent to 100 lab minutes and 20 minutes of rest. Page 4 of 4