Upload
mirza-zeeshan-baig
View
217
Download
0
Embed Size (px)
Citation preview
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),
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
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
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
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.=========================================================