CSCE 4413 Operating Systems Syllabus Spring 2006

Similar documents
Development of an IT Curriculum. Dr. Jochen Koubek Humboldt-Universität zu Berlin Technische Universität Berlin 2008

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

Department of Computer Science. Program Review Self-Study

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

We are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.

BUS Computer Concepts and Applications for Business Fall 2012

Self Study Report Computer Science

Syllabus: INF382D Introduction to Information Resources & Services Spring 2013

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown

Courses in English. Application Development Technology. Artificial Intelligence. 2017/18 Spring Semester. Database access

Computer Science (CS)

K 1 2 K 1 2. Iron Mountain Public Schools Standards (modified METS) Checklist by Grade Level Page 1 of 11

Spring 2015 IET4451 Systems Simulation Course Syllabus for Traditional, Hybrid, and Online Classes

GACE Computer Science Assessment Test at a Glance

CS 100: Principles of Computing

On-Line Data Analytics

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

Undergraduate Program Guide. Bachelor of Science. Computer Science DEPARTMENT OF COMPUTER SCIENCE and ENGINEERING

Coding II: Server side web development, databases and analytics ACAD 276 (4 Units)

Computer Organization I (Tietokoneen toiminta)

ENG 111 Achievement Requirements Fall Semester 2007 MWF 10:30-11: OLSC

Course Content Concepts

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

Course Syllabus. Alternatively, a student can schedule an appointment by .

Document number: 2013/ Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering

Data Structures and Algorithms

P. Belsis, C. Sgouropoulou, K. Sfikas, G. Pantziou, C. Skourlas, J. Varnas

POFI 1349 Spreadsheets ONLINE COURSE SYLLABUS

Computer Architecture CSC

Introduction to Information System

Scottsdale Community College Spring 2016 CIS190 Intro to LANs CIS105 or permission of Instructor

Master s Programme in Computer, Communication and Information Sciences, Study guide , ELEC Majors

Modeling user preferences and norms in context-aware systems

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

Computerized Adaptive Psychological Testing A Personalisation Perspective

Education: Integrating Parallel and Distributed Computing in Computer Science Curricula

Computer Science (CSE)

Astronomy/Physics 1404 Introductory Astronomy II Course Syllabus

4. Long title: Emerging Technologies for Gaming, Animation, and Simulation

ASTR 102: Introduction to Astronomy: Stars, Galaxies, and Cosmology

Office Hours: Mon & Fri 10:00-12:00. Course Description

Financial Accounting Concepts and Research

MINISTRY OF EDUCATION

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS APPLIED STATICS MET 1040

Guidelines for Project I Delivery and Assessment Department of Industrial and Mechanical Engineering Lebanese American University

Business Analytics and Information Tech COURSE NUMBER: 33:136:494 COURSE TITLE: Data Mining and Business Intelligence

ADMN-1311: MicroSoft Word I ( Online Fall 2017 )

UCEAS: User-centred Evaluations of Adaptive Systems

ITM2500 Spreadsheet & Database Productivity. Spreadsheet & Database Productivity

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

EECS 700: Computer Modeling, Simulation, and Visualization Fall 2014

ENEE 302h: Digital Electronics, Fall 2005 Prof. Bruce Jacob

SAM - Sensors, Actuators and Microcontrollers in Mobile Robots

International Organizations and Global Governance: A Crisis in Global Leadership?

Learning Methods for Fuzzy Systems

Strategy and Design of ICT Services

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

M.S. in Environmental Science Graduate Program Handbook. Department of Biology, Geology, and Environmental Science

Course Policies and Syllabus BUL3130 The Legal, Ethical, and Social Aspects of Business Syllabus Spring A 2017 ONLINE

Syllabus CHEM 2230L (Organic Chemistry I Laboratory) Fall Semester 2017, 1 semester hour (revised August 24, 2017)

Economics 201 Principles of Microeconomics Fall 2010 MWF 10:00 10:50am 160 Bryan Building

Unit purpose and aim. Level: 3 Sub-level: Unit 315 Credit value: 6 Guided learning hours: 50

COURSE DESCRIPTION PREREQUISITE COURSE PURPOSE

MinE 382 Mine Power Systems Fall Semester, 2014

Android App Development for Beginners

What is Effect of k-12 in the Electrical Engineering Practice?

Advanced Multiprocessor Programming

INTRODUCTION TO GENERAL PSYCHOLOGY (PSYC 1101) ONLINE SYLLABUS. Instructor: April Babb Crisp, M.S., LPC

FINANCE 3320 Financial Management Syllabus May-Term 2016 *

ECON492 Senior Capstone Seminar: Cost-Benefit and Local Economic Policy Analysis Fall 2017 Instructor: Dr. Anita Alves Pena

General Microbiology (BIOL ) Course Syllabus

Top US Tech Talent for the Top China Tech Company

SYLLABUS- ACCOUNTING 5250: Advanced Auditing (SPRING 2017)

Introduction to CS 100 Overview of UK. CS September 2015

CS 101 Computer Science I Fall Instructor Muller. Syllabus

University of Groningen. Systemen, planning, netwerken Bosman, Aart

Syllabus for PRP 428 Public Relations Case Studies 3 Credit Hours Fall 2012

From Virtual University to Mobile Learning on the Digital Campus: Experiences from Implementing a Notebook-University

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS APPLIED MECHANICS MET 2025

Advanced Multiprocessor Programming

ACCT 100 Introduction to Accounting Course Syllabus Course # on T Th 12:30 1:45 Spring, 2016: Debra L. Schmidt-Johnson, CPA

Beveridge Primary School. One to one laptop computer program for 2018

Education for an Information Age

OFFICE SUPPORT SPECIALIST Technical Diploma

CS Course Missive

DOCTOR OF PHILOSOPHY HANDBOOK

ACC 362 Course Syllabus

MAE Flight Simulation for Aircraft Safety

Ericsson Wallet Platform (EWP) 3.0 Training Programs. Catalog of Course Descriptions

IST 649: Human Interaction with Computers

SYLLABUS: RURAL SOCIOLOGY 1500 INTRODUCTION TO RURAL SOCIOLOGY SPRING 2017

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

AGENDA LEARNING THEORIES LEARNING THEORIES. Advanced Learning Theories 2/22/2016

GIS 5049: GIS for Non Majors Department of Environmental Science, Policy and Geography University of South Florida St. Petersburg Spring 2011

Syllabus for GBIB 634 Wisdom Literature 3 Credit hours Spring 2014

Knowledge-Based - Systems

Pod Assignment Guide

San José State University

Transcription:

General Information CSCE 4413 Operating Systems Syllabus Spring 2006 Time/Location: MWF 8:30 9:20 a.m. in ENGR 307 Instructor: Dale R. Thompson, ENGR 331, 479-575-5090, drt@uark.edu Office Hours: MWF 9:30-11:30 a.m. Required Text: Silberschatz, Galvin, and Gagne, Operating System Concepts, Wiley, Seventh edition Catalog Description CSCE 4413 Operating Systems 3 credits An introduction to operating systems including topics in system structures, process management, storage management, files, distributed systems, and case studies. Prerequisite: CSCE 3213 and CSCE 2143 or CENG 2143. Schedule (an average of three class periods per chapter) Dates Topic Reading Introduction to operating systems Chapter 1 Operating system structures Chapter 2 Processes Chapter 3 Threads Chapter 4 CPU scheduling Chapter 5 Process synchronization Chapter 6 Deadlocks Chapter 7 Main memory Chapter 8 Virtual memory Chapter 9 File-system interface Chapter 10 File-system implementation Chapter 11 Mass-storage structure Chapter 12 I/O Systems Chapter 13 Student Evaluation Grading will be based on homework, two exams, and a final exam. All graded work will receive a percentage from 0 to 100%. The overall letter grade for the class will be based on the percentage obtaining by combining all the components using the weights listed below. Grading Breakdown: Homework (35%) Exam 1 (20%) Exam 2 (20%) Final Exam (25%) The final class grade will be assigned according to the 10-point scale shown below. The grades may or may not be curved.

Percentage Range Grade 90.00 100 A 80.00 89.99 B 70.00 79.99 C 60.00 69.99 D < 60.00 F Course Policies Class Attendance: You are responsible for all material covered in class. If you must miss a class, it is your responsibility to get the notes, handouts, assignments, etc. from someone else in class. Attendance will be taken. Attendance will be used as a deciding factor when final average is between grades. For example, if you have an average of 89.50 and you have attended a high percentage of the classes it may be rounded up to an "A". If you have an average of 89.50 and you have attended a small percentage of the classes it will probably still be a "B". Homework: Homework will be assigned and graded. All assignments will be given with a strict deadline, and students are required to submit their assignments on or before the deadline. See the Deadline Policy below. Deadline Policy: All assignments will be given with a strict deadline, and students are required to submit their assignments on or before the deadline. Homework will be collected at the start of the class on the due date, and late submissions will not be accepted. In case of extenuating circumstances, students are advised to contact the professor as soon as practical. You are encouraged to discuss the course and the assignments with each other; however, your exams and homework should be your own work. Exams: Two in-class exams will be given. It will be a closed book and closed note exam. Final Exam: A comprehensive final examination will be given. It is scheduled according to the University calendar. It will be a closed book and closed note exam and will cover all course material. Academic Dishonesty: Students who violate University standards of academic integrity are subject to disciplinary sanctions, including failure in the course and suspension from the University. Since dishonesty in any form harms the individual, other students and the University, policies concerning academic dishonesty will be strictly enforced. I expect you will familiarize yourself with the University's Academic Dishonesty Policy which may be found in your undergraduate catalog.

ACM Core Topic Mapping List and refer to ACM/IEEE knowledge units covered (see ACM/IEEE Computing Curriculum 2001 Computer Science Final Report). Core topics are in bold. 45 contact hours ACM Core Topics Program Core Target Operating Systems DS. Discrete Structures (43 core hours) DS1. Functions, relations, and sets 6 DS2. Basic logic 10 DS3. Proof techniques 12 DS4. Basics of counting 5 DS5. Graphs and trees 4 DS6. Discrete probability 6 PF. Programming Fundamentals (38 core hours) PF1. Fundamental programming constructs 9 PF2. Algorithms and problem-solving 6 PF3. Fundamental data structures 14 PF4. Recursion 5 PF5. Event-driven programming 4 2 AL. Algorithms and Complexity (31 core hours) AL1. Basic algorithmic analysis 4 AL2. Algorithmic strategies 6 AL3. Fundamental computing algorithms 12 AL4. Distributed algorithms 3 AL5. Basic computability 6 AL6. The complexity classes P and NP - AL7. Automata theory - AL8. Advanced algorithmic analysis - AL9. Cryptographic algorithms - AL10. Geometric algorithms - AL11. Parallel algorithms - AR. Architecture and Organization (36 core hours) AR1. Digital logic and digital systems 6 AR2. Machine level representation of data 3 AR3. Assembly level machine organization 9 AR4. Memory system organization and architecture 5 AR5. Interfacing and communication 3 AR6. Functional organization 7 AR7. Multiprocessing and alternative architectures 3 2 AR8. Performance enhancements - AR9. Architecture for networks and distributed systems - OS. Operating Systems (18 core hours) OS1. Overview of operating systems 2 2 OS2. Operating system principles 2 3 OS3. Concurrency 6 6 OS4. Scheduling and dispatch 3 6

OS5. Memory management 5 6 OS6. Device management - 3 OS7. Security and protection - 2 OS8. File systems - 4 OS9. Real-time and embedded systems - 2 OS10. Fault tolerance - OS11. System performance evaluation - 2 OS12. Scripting - NC. Net-Centric Computing (15 core hours) NC1. Introduction to net-centric computing 2 NC2. Communication and networking 7 NC3. Network security 3 NC4. The web as an example of client-server computing 3 NC5. Building web applications - NC6. Network management - NC7. Compression and decompression - NC8. Multimedia data technologies - NC9. Wireless and mobile computing - PL. Programming Languages (21 core hours) PL1. Overview of programming languages 2 PL2. Virtual machines 1 PL3. Introduction to language translation 2 PL4. Declarations and types 3 PL5. Abstraction mechanisms 3 PL6. Object-oriented programming 10 PL7. Functional programming - PL8. Language translation systems - PL9. Type systems - PL10. Programming language semantics - PL11. Programming language design - HC. Human-Computer Interaction (8 core hours) HC1. Foundations of human-computer interaction 6 HC2. Building a simple graphical user interface 2 HC3. Human-centered software evaluation - HC4. Human-centered software development - HC5. Graphical User Interface Design - HC6. Graphical User Interface Programming - HC7. HCI aspects of multimedia systems - HC8. HCI aspects of collaboration and communication - GV. Graphics and Visual Programming (3 core hours) GV1. Fundamental techniques in graphics 2 GV2. Graphic systems 1 GV3. Graphic communication - GV4. Geometric modeling - GV5. Basic rendering - GV6. Advanced rendering - GV7. Advanced techniques - GV8. Computer animation -

GV9. Visualization - GV10. Virtual reality - GV11. Computer vision - IS. Intelligent Systems (10 core hours) IS1. Fundamental issues in intelligent systems 1 IS2. Search and constraint satisfaction 5 IS3. Knowledge representation and reasoning 4 IS4. Advanced search - IS5. Advanced knowledge representation and reasoning - IS6. Agents - IS7. Natural language processing - IS8. Machine learning and neural networks - IS9. AI planning systems - IS10. Robotics - IM. Information Management (10 core hours) IM1. Information models and systems 3 IM2. Database systems 3 IM3. Data modeling 4 IM4. Relational databases - IM5. Database query languages - IM6. Relational database design - IM7. Transaction processing - IM8. Distributed databases - IM9. Physical database design - IM10. Data mining - IM11. Information storage and retrieval - IM12. Hypertext and hypermedia - IM13. Multimedia information and systems - IM14. Digital libraries - SP. Social and Professional Issues (16 core hours) SP1. History of computing 1 2 SP2. Social context of computing 3 SP3. Methods and tools of analysis 2 SP4. Professional and ethical responsibilities 3 SP5. Risks and liabilities of computer-based systems 2 SP6. Intellectual property 3 SP7. Privacy and civil liberties 2 SP8. Computer crime - 2 SP9. Economic issues in computing - SP10. Philosophical frameworks - SE. Software Engineering (31 core hours) SE1. Software design 8 SE2. Using APIs 5 SE3. Software tools and environments 3 SE4. Software processes 2 SE5. Software requirements and specifications 4 SE6. Software validation 3 SE7. Software evolution 3 1

SE8. Software project management 3 SE9. Component-based computing - SE10. Formal methods - SE11. Software reliability - SE12. Specialized systems development - CN. Computational Science (no core hours) CN1. Numerical analysis - CN2. Operations research - CN3. Modeling and simulation - CN4. High-performance computing - TOTAL 45 Course Outcomes Course outcomes are capabilities that you expect a student to be able to do upon successful completion of this course. Outcome 1 Upon the successful completion of this course a student should understand: Operating systems structure and operations. Concepts of process management, memory management, direct access storage management, resource allocation, and time management. Process synchronization, mutual exclusion, and deadlocks. Virtual memory structure and implementation. File access methods and allocation. Operating system and application protection and security. Real-time systems. More specifically, the student will be able to do the following: Specific Outcomes Describe the major differences between generic batch, interactive, conversational, network, real-time, and time-sharing operating systems. Calculate average wait time, turnover time, and throughput for processes using various scheduling algorithms. Evaluate paging algorithms for efficiency using page fault frequencies. Construct a process state diagram and explain how all of the state transitions (context switches) take place. Describe how the various interrupt handlers process interrupts and effect state changes. Design and implement mutual exclusion routines that use software only, machine instructions, and semaphores. Chapter 1 5 8, 9 3 2, 13 6

Describe the four necessary conditions for deadlock to occur. Produce a directed resource graph and use graph reduction to determine if deadlock exists Evaluate disk scheduling algorithms by calculating total seek times. 12 Use Dijkstra s Bankers Algorithm to determine safe resource 7 allocation. Describe the similarities and differences of multiprogramming 4, 6 systems and multiprocessing systems. Compare the various protection and security measures used by major 14, 15 operating systems. 7 Assessing Course Effectiveness What do you, the instructor, do to assess the effectiveness of your course? How do you make decisions to change the course? How do you assess how well the course is achieving its outcomes? During the semester: o In class participation, Homework, 2 in-class exams, Final Exam At the end of the semester: o Course Evaluation o CSCE Outcomes Assessment begun in Spring 2005 Other feedback: o Discussions and feedback from students during the semester o Feedback from instructors in courses that depend on this course Program Outcomes Fill in the table relating your course outcomes to CS program outcomes. Indicate the extent to which each CSCE Program Outcome listed below is related to a course outcome. Use a 5 point scale: 0=not at all, 1=very slight, 2=slight, 3=moderate, 4=significant, 5=highly significant. For any outcome with a score of 4 or 5, identify the course outcomes that relate to the program outcome. Computer Science Outcomes Operating Systems Extent Course Outcome 1) Demonstrate proficiency in algorithms, data structures, software design, concepts of programming languages, and computer organization and 4 1 architecture. 2) Develop breadth in advanced Computer Science topics that build on the core (Database Management, Operating Systems, Formal Languages). 3) In a collaborative, team project, analyze, design, and implement a significant software solution to a problem. 0 4) Compose, test, and document programs in several different programming paradigms. 5) Have expertise in at least one important programming language. 1 1

6) Be able to use easily several operating systems, computer architectures, and network environments. 4 1 7) Apply knowledge of mathematics and natural science. 1 1 8) Communicate effectively. 3 1 9) Understand the history of computing, the social context of computing, professional and ethical responsibilities, risks and liabilities of computerbased systems, intellectual property, and privacy and civil liberties. 10) Recognize the need for, and have the ability to engage in life-long learning. 11) Have knowledge of contemporary issues. Computer Engineering Outcomes Operating Systems A an ability to apply knowledge of mathematics, science, and engineering 3 1 B an ability to design and conduct experiments, as well as to analyze and interpret data C an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and 3 1 sustainability D an ability to function on multi-disciplinary teams 0 1 E an ability to identify, formulate, and solve engineering problems 3 1 F an understanding of professional and ethical responsibility 3 1 G an ability to communicate effectively 3 1 H the broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context I a recognition of the need for, and an ability to engage in life-long learning J a knowledge of contemporary issues K (k) an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice. 4 1