A6-R5-Computer Organization and Operating System
Introduction
Operating System is an intermediate software layer between
user and computer hardware. The program which is executed on computer requires
difference resources like memory, hardware, CPU etc. On the other hand,
computer consists of various blocks memory, ALU, control unit, input/output
devices and other peripherals. This module provides information on both the
topics, Computer Organization and Operating System. The functions of Operating
System help user to interact with all components of computers.
Objective
The objectives of this module are:
i. To have a thorough understanding of the basic structure
and operation of a digital computer.
ii. To discuss in detail the operation of the arithmetic
unit including the algorithms & implementation of fixed-point and
floating-point addition, subtraction, multiplication & division.
iii. To study the communication with I/O devices and
standard I/O interfaces.
iv. To study the hierarchal memory system including cache
memories and virtual memory.
v. To gain knowledge of functions of operating system like
memory management, scheduling, file system and interface, distributed systems,
security and deadlocks.
vi. To understand how an Operating System handles multiple
processes.
1. Basic Structure of Computers
- Get familiar with various components of a computer and their function.
- Get familiar with Von Neumann Architecture
2. Computer
- Well acquainted with logic Arithmetic gates and Boolean algebra. Operations
- Get familiar with representation of fixed and floating-point numbers in system iii. Get familiar with binary arithmetic.
3. Central
- General registers Processing Unit and
- Types of instructions Instructions
- Addressing modes
- PCB.
4. Memory Organization
- Primary memory, Secondary memory, Cache memory, Virtual memory
- RAID
5. I/O Organization
- peripheral devices,
- Data transfer modes
- Interrupt handling iv. DMA
6. Operating Systems Overview
- Gather knowledge of various types of operating systems
- Get an overview of various functions performed by OS
- Get an overview about kernel and shell
- Get an overview of system calls
7. Linux Basics
- Use Linux operating system
- Get familiar with basic Linux shell commands like who, whoami, echo, date
- Get familiar with navigating manual pages and getting help for a command.
- List contents of a directory
- Create and remove files and directories.
- Check Inode no of a file
- Copy or move files or directories
- Work with large text files using commands like more, less, head, tail, cut
- Search text within a file using grep command
- Get familiar with process and its states
- Know about Inode structure
- Know the various scheduling techniques
- Start a task in background and move it to foreground
- Write shell scripts.
9. Users, Groups
- View security permissions of and Permissions a file
- Create a new user or group
- Modify existing user
- Modify the ownership of a file.
- Modify the permission of a file
- Monitor the logins
10. Standard I/O and Pipes
- to redirect output to a file
- to redirect input from a file
- take the output of one command and send it into another command as input
11. Finding and processing files
i. locate files based on various criteria such as filename, size, date, type and permission
Marks Distribution
1. Basic Structure of Computers 5
2. Computer Arithmetic Operations 10
3. Central Processing Unit and Instructions 8
4. Memory Organization 8
5. I/O Organization 9
6. Operating Systems Overview 8
7. Linux Basics 16
8. Process Management and Shell Script 13
9. Users, Groups and Permissions 10
10. Standard I/O and Pipes 8
11. Finding and processing files 5
Total 100
Detailed Syllabus
Part 1 – Computer Organization
(i) Basic Structure of Computers
Structure of a Computer System, Arithmetic Logic Unit, Control Unit, Bus Structure, Von Neumann Architecture.
(ii) Computer Arithmetic Operations
Introduction to logic gates, Boolean algebra, Data
Representation-Number system, Fixed and Floating point numbers, Floating point
representation, Signed numbers, Binary Arithmetic, 1’s and 2’s Complements
Arithmetic, Binary adder, 2’s Complement method for multiplication, Map
Simplification.
(iii) Central Processing Unit and Instructions:
General Register Organization, Types of Instructions,
Instruction Formats, Addressing Modes, Data Transfer and Manipulation, Program
Control, Instruction cycle.
Characteristics of Memory Systems, Type of memories, Main
memory, Static & Dynamic memories, Secondary Memory, Performance
Considerations, Cache Memory with mapping, Virtual Memory, Address memory used
pages, page replacement, Introduction to RAID.
Peripheral Devices, Input-Output Interface, Asynchronous Data Transfer Modes, Interrupt handling, Types of Interrupts, Priority Interrupt, Direct Memory Access, Input-Output Processor (IOP), Synchronous and Asynchronous Data Transfer.
Part 2 – Operating System
(vi) Operating Systems Overview:
Overview of Computer Operating Systems, Types of OS,
Functions of OS, Protection and Security, Distributed Operating Systems, System
Calls, Scheduling algorithms, memory management, threads.
Open source, Overview of Linux, Basic Linux commands,
structure of kernel and shell, Getting help, Linux File System, Some Important
Directories, Inodes, Current Working Directory, File and Directory Names,
Absolute and Relative Pathnames, Creating and Removing Directories, Changing
Directories, Listing Directory Contents, Creating and Removing Files, Copying
Files and Directories, Moving and Renaming Files and Directories, fundamental
file types, Hard Links, Symbolic ( or soft) Links, Viewing and working with
large Text files – cat, more, less, head, tail, cut commands, search text
within a file, grep.
Processes: Definition, Process Relationship, Process states,
Process State transitions, Process Control Block, Context switching – Threads –
Concept of multithreads, Listing Processes, Finding Processes, Foreground and
background processes, Interactive Process management tools, Sending signals to
processes. Shell Script, shell variables, control structure using variables in
shell script.
Users, Groups, Linux File Security, Examining Permissions,
accessing root user, creating user and groups, Changing File Ownership,
Changing Permissions – Symbolic Method, Numeric Method, /etc/passwd,
/etc/shadow and /etc/group files, Monitoring Logins, Default Permissions,
Special Permissions umask, passwd.
(x) Standard I/O and Pipes
Standard Input and Output, Redirecting Output to a File,
Redirecting STDOUT to a Program(Piping), Combining Output and Errors,
Redirecting to Multiple Targets (tee), Redirecting STDIN from a file.
Locate, find, Basic find Examples, find and Logical
Operators, find and Permissions, find and Access Times.
1. Operating System Concepts by Peter B. Galvin, Greg Gagne
and Abraham Silberschatz
2. Computer System Architecture by Morris Mano
3. Operating Systems: Internals and Design Principles by
William Stallings, Peasons
4. Operating Systems: A Concept-Based Approach, by D. M.
Dhamdhere, McGraw Hills
5. Computer Organization by John L. Hennessy, McGraw Hills
6. Computer Organization and Architecture by V. Rajaraman, T
Radhakrishnan, PHI