0% found this document useful (0 votes)
7 views11 pages

IT576 Computer Systems Course Outline

The document provides information about the IT576 Computer Systems course including: - Lecture and lab schedules with lectures on Mondays, Wednesdays, and Fridays and lab schedule to be announced. - An outline of the course modules covering basic data structures and algorithms for the first 6-7 weeks and operating systems for the next 6-7 weeks. - A grading policy where class participation is 20%, exams make up another 60% and lab performance/exam is the remaining 20%. - Recommended textbooks on algorithms, operating systems, and operating system concepts.

Uploaded by

ManiklalDas
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views11 pages

IT576 Computer Systems Course Outline

The document provides information about the IT576 Computer Systems course including: - Lecture and lab schedules with lectures on Mondays, Wednesdays, and Fridays and lab schedule to be announced. - An outline of the course modules covering basic data structures and algorithms for the first 6-7 weeks and operating systems for the next 6-7 weeks. - A grading policy where class participation is 20%, exams make up another 60% and lab performance/exam is the remaining 20%. - Recommended textbooks on algorithms, operating systems, and operating system concepts.

Uploaded by

ManiklalDas
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

IT576 Computer Systems (3-0-2-4)

Lecture schedule (CEP 108)


Mondays (10:00 – 10:50)
Wednesdays (10:00- 10:50)
Fridays (11:00 – 11:50)

Lab schedule: TBA


Course Outline (tentative)
• Module 1: Topics in Basic Data Structures and Algorithms [6-7 weeks]
• Basic problem solving techniques - inductive approach; recursive approach;
iterative approach.
• Basic data structures - stack, queue, list; graph representations.
• Divide and Conquer approach - binary search, sorting, tree traversal.
• Greedy approach - graph traversal, shortest path algorithms, minimum
spanning tree.
• Dynamic programming approach

• Module 2: Topics in Operating Systems [6-7 weeks]


• Process management: processes, threads; process states, process control
block, context switch, scheduling algorithms.
• Memory management: paging, virtual addressing, address translation,
memory virtualization, protection.
• Synchronization: critical-section problem; mutual exclusion; deadlocks;
semaphores.
Recommended Books

• Algorithms (Selected chapters) --


Dasgupta, Papadimitriou, Vazirani [TMH].

• Introduction to Algorithms (Selected chapters) --


Cormen, Leiserson, Rivest, Stein [MIT Press].

• Operating Systems: Internals and Design Principles


(Selected chapters) -- Stallings [Pearson]

• Operating System Concepts (Selected chapters) --


Silberschatz, Galvin and Gagne [Wiley].
Grading Policy

• Class participation: 20 %

• First In-semester exam: 20 %

• Lab performance/exam: 20 %

• End-semester exam: 40 %
Algorithm

An algorithm is a well-defined procedure to solve a


problem.
– a sequence of unambiguous instructions.
Algorithm design
Logical Thinking: Methods of reasoning, a set of rules and
techniques to determine whether a statement is valid.
– chip design
– operating system
– safety-critical system
– networking
– software development
– artificial intelligence
– database system, an so on.
Algorithm design
Relational Thinking
– Sets: Collections of well-defined objects.
– Relations: Relations among objects and equivalence
class.

– Properties of graphs and trees and their applications


in real-world problems.
Algorithm design

Recursive Thinking
– Recursion
– Induction
– Reduction
Algorithm design

Quantitative Thinking
– Counting principles

– Estimation, optimization
Algorithm design

Analytical Thinking
– Functions and Recursive Algorithms

– Iterative Algorithms

– Optimization, Quantification, Analysis

Task is to check
– Correctness: prevents us from fooling ourselves.
– Completeness: allows anyone to verify the result.
Inductive approach to solve problems

Sum of the first n (≥ 1) integers is n(n+1)/2.

Sum of the first n (≥ 1) odd integers is n2.

Prove that for n ≥ 7 , 3n < n!

You might also like