Class discussion
Basic Introduction:
Computer hardware elements: Input, Output, Memory, CPU
Difference between RAM and HDD
Role of Operating system as a resource manager
Difference between Program and Process
Programming languages and role of Compiler- High level language and Assembly language
Problem solving techniques: divide and conquer - divide a problem into smaller sub-problems to solve it
Find maximum (or minimum) element in a list of values given that you can compare two elements at a time and find maximum among the two
Find sum of a list of values given that you can add two elements at a time and compute their sum
Sort a list of values
Selection sort and merge sort
complexity assessment
Data driven approach - machine learning
Communication infrastructure and Cloud computing
Types of applications enabled by the ICT infrastructure PDF Slides
Microprocessor Architecture PPT
Example of 8086 microprocessor architecture
Flip-flops and Registers as storage elements
Address Bus and Data bus - Interaction with Memory and IO Devices
Arithmetic and Logic Unit
1-bit Logic operations: AND, OR, NOT and Logic Gates
1-bit arithmetic operations - Add, subtract
Add (AB' + A'B), Carry(AB),
Logic circuit for Subtraction (AB' + A'B), Borrow (A'B)
Hard disk drive architecture
RAID models Expernal link of PPT, chapter-pdf
Operating Systems PPT
book PDF1 (chapter 1 for basics, chapter 2 for process management; chapter 3 for memory management)
book PDF2 (chapter 1 for basics, chapter 4 for file system)
Lecture of system running Linux OS can be found HERE
Programming Languages PPT
Book PDF 3 (chapter 1)
Book PDF 4 (chapter 1, and parts of chapter 5,7, and 8 as discussed in class)
Programs discussed in class can be found HERE
PDF of Basics of Computer Networks can be found HERE. (You may Refer Section 1.1, 1.2 basic, and 1.5)
PPT of the chapter can be found HERE
PDF of Basics of Cloud Computing can be found HERE