5
Home > Courses > Computer Science/Information Technology > CS703 CS703 : Advanced Operating Systems I like this Course Course Info Course Category Computer Science/Information Technology Course Level Graduate Credit Hours 3 Pre-requisites CS201 (CS201 Introduction to Programming), CS604 (CS604 Operating Systems) Instructor Mr. Farhan Zaidi MS Computer Science University of Southern California, USA Course Contents Introduction, Operating System: top-down and bottom up views, design issues, modules and components, services and system calls, structure and organization. Executable file formats, Static Linking, Dynamic linking, Loading programs into memory, Anatomy of a Process, Exceptional control flow, Context switching, Process related system calls, Threads, Concurrency and synchronization: Race conditions, Mutual exclusion and problems arising from them, Locks, semaphores and condition variables, Design of Inter-process communication mechanisms, Readers/writers and producer/consumer problems, Re-entrant code and thread-safe libraries, Deadlock, Design alternatives for highly concurrent servers (research topic). CPU scheduling: Scheduling policies and algorithms, Scheduling algorithm comparison, Real-time and multi- processor scheduling, Linux case study. Dynamic memory management: Internal design alternatives for malloc and free routines, Garbage collection. OS memory management: Memory protection, Program relocation, Memory partitioning techniques, Virtual memory, Paging and segmentation, TLB and cache management. File systems: Naming issues, Design alternatives for file systems, Example file systems and their comparison. I/O management: Memory mapped Vs Direct I/O, Interrupt driven Vs Polled I/O, Device controllers and device drivers, Naming issues, OS I/O architecture, Buffering techniques, Disk devices and their management. Timer management in OS, Event notification mechanisms, UNIX signals, Security and protection: Security aspects in operating systems, Authentication, Authorization, Accounting, Security domains and security models, Protection against worms and viruses, Protection against buffer overflow attacks, Windows case study, Linux case study, Java Security, State of the art OS research topics. ---------------------------------------------------------------------------------------------------- Home > Courses > Computer Science/Information Technology > CS301 CS301 : Data Structures I like this Course Course Info Course Category Computer Science/Information Technology Course Level Undergraduate Credit Hours 3 Pre-requisites CS201 (CS201 Introduction to Programming),

vu open course ware

Embed Size (px)

Citation preview

Page 1: vu open course ware

Home > Courses > Computer Science/Information Technology > CS703

CS703 : Advanced Operating SystemsI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

GraduateCredit Hours

3Pre-requisites

CS201 (CS201 Introduction to Programming), CS604 (CS604 Operating Systems)Instructor

Mr. Farhan ZaidiMS Computer ScienceUniversity of Southern California, USACourse ContentsIntroduction, Operating System: top-down and bottom up views, design issues, modules and components, services and system calls, structure and organization. Executable file formats, Static Linking, Dynamic linking, Loading programs into memory, Anatomy of a Process, Exceptional control flow, Context switching, Process related system calls, Threads, Concurrency and synchronization: Race conditions, Mutual exclusion and problems arising from them, Locks, semaphores and condition variables, Design of Inter-process communication mechanisms, Readers/writers and producer/consumer problems, Re-entrant code and thread-safe libraries, Deadlock, Design alternatives for highly concurrent servers (research topic). CPU scheduling: Scheduling policies and algorithms, Scheduling algorithm comparison, Real-time and multi-processor scheduling, Linux case study. Dynamic memory management: Internal design alternatives for malloc and free routines, Garbage collection. OS memory management: Memory protection, Program relocation, Memory partitioning techniques, Virtual memory, Paging and segmentation, TLB and cache management. File systems: Naming issues, Design alternatives for file systems, Example file systems and their comparison. I/O management: Memory mapped Vs Direct I/O, Interrupt driven Vs Polled I/O, Device controllers and device drivers, Naming issues, OS I/O architecture, Buffering techniques, Disk devices and their management. Timer management in OS, Event notification mechanisms, UNIX signals, Security and protection: Security aspects in operating systems, Authentication, Authorization, Accounting, Security domains and security models, Protection against worms and viruses, Protection against buffer overflow attacks, Windows case study, Linux case study, Java Security, State of the art OS research topics.----------------------------------------------------------------------------------------------------

Home > Courses > Computer Science/Information Technology > CS301

CS301 : Data StructuresI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

UndergraduateCredit Hours

3Pre-requisites

CS201 (CS201 Introduction to Programming),

Page 2: vu open course ware

InstructorDr. Sohail Aslam

PhD Computer ScienceUniversity of Illinois at Urbana-ChampaignCourse ContentsIntroduction, The Array data type, The List abstract data type (ADT), Linked lists, Stacks, Queues, Trees, AVL Trees ,Huffman encoding , The Heap ADT, Priority queue implementation using the heap ADT, The Disjoint Sets ADT, The Table ADT, Implementation using arrays, Skip lists, Table ADT implementation using Hashing, Collision resolution in Hashing, Other uses of Hashing, Sorting, and Selection sort, Insertion sort, Bubble sort algorithms, Divide and conquer strategy: Merge sort, Quick sort.------------------------------------------------------------------------------------------------------------------

Home > Courses > Computer Science/Information Technology > CS502

CS502 : Fundamentals of AlgorithmsI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

UndergraduateCredit Hours

3Pre-requisites

CS301 (CS301 Data Structures)Instructor

Dr. Sohail AslamPh.D Computer ScienceUniversity of Illinois at Urbana-ChampaignCourse ContentsAnalyzing the worst-case running time of an algorithm as a function of input size, solve recurrence relations, Basics of Divide and Conquer strategy, Understand the concepts of Dynamic programming, Understand the concepts of Greedy Algorithm, Understand the concepts of Graph traversing, Understand the concepts of MST and their algorithms, Understand the algorithms for computing shortest path, Basics of Complexity theory.

: Fundamentals of AlgorithmsCourse OverviewCourse SynopsisThis course is designed to provide students with an understanding of the principles and techniques used in the design and analysis of algorithms. The course is primarily theoretical and does not require programming, but it does require understanding of the notion of a mathematical proof and some knowledge of elementary discrete mathematics. We will discuss and analyze a variety of data structures and algorithms chosen for their importance and their illustration of fundamental concepts. We will emphasize analyzing the worst-case running time of an algorithm as a function of input size. We will also spend some time exploring the boundary between feasible computations, taken to be those doable in polynomial time, and infeasible computations

Course Learning OutcomesAt the end of this course you should be able to :

Analyze the worst-case running time of an algorithm as a function of input size Solve Recurrence relations Understand and implement Divide and Conquer strategy

Page 3: vu open course ware

Understand the concepts of Dynamic programming Understand the concepts of Greedy Algorithm Understand the concepts of Graph traversing Understand and explain basics of Complexity theory

===============================================================

Home > Courses > Computer Science/Information Technology > CS702

CS702 : Advanced Algorithms Analysis and DesignI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

GraduateCredit Hours

3Pre-requisites

CS301 (CS301 Data Structures), CS502 (CS502 Fundamentals of Algorithms)Instructor

Dr. N. A. ZafarPh.D Computer ScienceKyushu University, JapanCourse ContentsIntroduction, Underlying mathematical theory, Induction and recursion techniques in analyzing algorithms, Asymptotic notations, Search techniques, Divide-and conquer technique, Randomized algorithms, Heuristic algorithms, Brute Force approach, Backtracking, branch-and-bound, Optimization techniques in algorithms designing, Dynamic algorithms, Greedy algorithms, Graph Theory, Searching algorithms, Minimal spanning tree algorithms, Polynomials and FFT, Number theoretic notations, Number theoretic algorithms, RSA cryptosystems, String matching, pattern matching, NP completeness and NP completeness proofs.=========================================================

Home > Courses > Computer Science/Information Technology > CS402

CS402 : Theory of AutomataI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

UndergraduateCredit Hours

3Pre-requisites

N/AInstructor

Dr. Shahid SiddiqiPh.D. (Computational Mathematics)Brunel University (University of West London), England.Course ContentsLanguages, Kleen Closure, Recursive Definitions, Regular Expressions, Finite and Infinite languages, Regular Languages, NonRegular Languages, Finite Automata with output, Finite Automata and their languages, Transition Graphs, Nondeterminism, NonRegular Languages, The

Page 4: vu open course ware

Pumping Lemma, Context Free Grammars, Tree, Ambiguity, Pushdown Automata, Decidability=========================================================Home > Courses > Computer Science/Information Technology > CS604

CS604 : Operating SystemsI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

UndergraduateCredit Hours

3Pre-requisitesCS301 (CS301 Data Structures), CS401(CS401 Computer Architecture and Assembly Language Programming), CS502 (12 CS502 Fundamentals of Algorithms)

InstructorDr. Syed Mansoor Sarwar

PhD Computer EngineeringIowa State University, USACourse ContentsIntroduction, Single-user systems,Operating system components and services, Operating system structures, Process concept, Inter-process communication (IPC) and process synchronization, UNIX/Linux IPC tools and associated system calls, Use of FIFOs in a program, Thread models, Schedulers, Dispatcher, Algorithm evaluation, Process synchronization, The Critical Section Problem, The Bakery Algorithm, Deadlock and Starvation, Deadlock handling, Detections and Recovery, Memory management, Paging, Memory Management in Intel 80386, Virtual Memory, Demand Paging, , Page Fault, Belady’s Anomaly, Stack Replacement Algorithms, Thrashing, File Concept, Directory Structure, File System, Mounting, File Sharing and Protection, Space Allocation Techniques, Disk Structure and Scheduling, Free Space Management.=========================================================Home > Courses > Computer Science/Information Technology > CS701

CS701 : Theory of ComputationI like this Course

Course InfoCourse Category

Computer Science/Information TechnologyCourse Level

GraduateCredit Hours

3Pre-requisites

CS402 (CS402 Theory of Automata), MTH202Instructor

Dr. Sarmad AbbasiPh.D Computer ScienceRutgers University, USACourse ContentsIntroduction, Set Thoery, Sequences, Tuples, Functions, Relations, Graphs, Turing Machines, Enumerators, Dovetailing, The Church-Turing Thesis, Hilbert's Tenth Problem, Decidable Languages, The Acceptance Problem for DFAs, The Halting Problem, Universal TM, Undicidability of the Halting Problem, Linear Bounded Automata, Computation Histories, Context

Page 5: vu open course ware

Free Grammars, Russell's Paradox, Emptiness Problem, Post Correspondence Problem, Computable Functions, Reducibility, Recursion Theorem, Logical Theories, Godel's Theorem, Oracles, Turing Reducibility, A definition of Information, Incompressible Strings, Complexity Theory, Big Oh and Little Oh Notations, Time Complexity, Non-Deterministic Time, The Class P, The Class NP, Polynomial Time Verifiers, Subset Sum Problem, Satisfiability, NP-Completness, 3-Color Problem, The Cook-Levin Theorem, Independent Sets Problem, Clique, Vertex Cover, Hamiltonian Path Problem, The Subset Sum Problem, The Traveling Salesman Problem, Space Complexity, Relationship between Space and Time Complexity, PSPACE-Completeness, TQBF, Prove that TQBF is PSPACE-Complete, FORMULA-GAME, Generalized Geography, LOGSPACE Transducer, Prove the Theorem: NL = co-NL.=========================================================