0% found this document useful (0 votes)
2 views

os notes

The document outlines a syllabus for a course on operating systems, covering fundamental concepts such as the Unix file system, system calls, process management, and memory management. It also includes advanced topics like the Virtual File System (VFS), Windows operating system internals, and Android development. Each unit consists of detailed lecture hours and key components relevant to the subject matter.

Uploaded by

yatakonakiran2
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

os notes

The document outlines a syllabus for a course on operating systems, covering fundamental concepts such as the Unix file system, system calls, process management, and memory management. It also includes advanced topics like the Virtual File System (VFS), Windows operating system internals, and Android development. Each unit consists of detailed lecture hours and key components relevant to the subject matter.

Uploaded by

yatakonakiran2
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

UNIT - I: Basic Operating System Concepts

Lecture Hours: 10

1. Overview of Unix File System

 The Unix file system is hierarchical and tree-structured.


 It consists of directories and files, starting from the root directory (/).
 Key components:
o Files: Basic unit of storage (text, binary, directories, etc.).
o Links:
 Hard Links: Direct reference to the inode of a file.
 Symbolic Links (Soft Links): Pointers to file paths.
o Inodes: Data structures that store metadata about files (e.g., permissions,
ownership, size, etc.).
o Access Rights: Permissions for read (r), write (w), and execute (x) for owner,
group, and others.

2. System Calls

 Interface between user programs and the kernel.


 Examples: open(), read(), write(), close(), fork(), exec().

3. Overview of Unix Kernels

 Model: Monolithic kernel with modular design.


 Implementation: Written in C, with assembly for low-level tasks.
 Reentrant Kernels: Allow multiple processes to execute kernel code simultaneously.
 Address Space: Divided into user space and kernel space.
 Synchronization: Mechanisms like semaphores, mutexes, and spinlocks to manage
concurrent access.
 Interprocess Communication (IPC): Methods like pipes, message queues, and
shared memory.

4. Process Management

 Handles process creation, scheduling, and termination.


 Key concepts:
o Process States: Running, ready, blocked, etc.
o Context Switching: Saving and restoring process states.

5. Memory Management

 Manages RAM and virtual memory.


 Techniques: Paging, segmentation, and swapping.

6. Device Drivers

 Software interfaces to hardware devices.


 Types: Character drivers, block drivers, and network drivers.

UNIT - II: Processes, Lightweight Processes, and Threads

Lecture Hours: 10

1. Processes

 Process Descriptor: A data structure (e.g., task_struct in Linux) that stores process
information.
 Process State: Running, sleeping, stopped, etc.
 Identifying a Process: Unique Process ID (PID).

2. Relationships Among Processes

 Parent-child hierarchy.
 Organization: Processes are organized in a tree structure.

3. Resource Limits

 Limits on CPU usage, memory, file descriptors, etc.

4. Creating Processes

 System Calls: fork(), exec(), wait().


 Kernel Threads: Lightweight processes managed by the kernel.

5. Destroying Processes

 Termination: Normal (exit) or abnormal (kill).


 Removal: Releasing resources and removing process descriptors.

UNIT - III: The Virtual File System (VFS)

Lecture Hours: 10

1. Role of VFS

 Provides a unified interface for different file systems.

2. File Model

 Abstraction of files, directories, and file systems.

3. System Calls
 Examples: open(), read(), write(), close().

4. Data Structures

 Super Block: Contains file system metadata.


 Inode: Stores file metadata.
 File: Represents an open file.
 dentry (Directory Entry): Caches directory information.

5. Files Associated with a Process

 File descriptors and open file tables.

6. Filesystem Types

 Ext4, NTFS, FAT, etc.


 Special Filesystems: proc, sysfs, tmpfs.

7. Filesystem Handling

 Registration: Registering and unregistering file systems.


 Mounting: Attaching a file system to a directory.
 Unmounting: Detaching a file system.

8. Namespaces

 Isolates resources for containers (e.g., Docker).

9. Implementation of VFS System Calls

 How system calls interact with VFS.

UNIT - IV: Windows Operating System

Lecture Hours: 10

1. Versions, Concepts, and Tools

 Evolution of Windows (e.g., Windows NT, XP, 10, 11).


 Key concepts: GUI, multitasking, security.

2. Windows Internals

 System Architecture: User mode and kernel mode.


 Design Goals: Security, scalability, compatibility.

3. Operating System Model


 Hybrid kernel (combines monolithic and microkernel).

4. Key System Components

 HAL (Hardware Abstraction Layer): Abstracts hardware differences.


 Executive: Core OS services (e.g., memory management, process management).
 Kernel: Low-level operations (scheduling, interrupts).

5. System Mechanisms

 Trap Dispatching: Handles exceptions and interrupts.


 Object Manager: Manages system resources as objects.
 Synchronization: Mutexes, semaphores.
 System Worker Threads: Background tasks.
 Windows Global Flags: Debugging and diagnostics.
 Local Procedure Calls (LPC): Inter-process communication.
 Kernel Event Tracing: Monitoring system events.

UNIT - V: Android

Lecture Hours: 10

1. What is Android?

 Open-source OS for mobile devices, based on Linux.

2. Basic Building Blocks

 Activities: UI screens.
 Services: Background tasks.
 Broadcast Receivers: Respond to system-wide events.
 Content Providers: Manage shared data.

3. UI Components

 Views: Basic UI elements (e.g., buttons, text fields).


 Notifications: Alerts for users.

4. Components for Communication

 Intents: Messages for activating components.


 Intent Filters: Specify the types of intents a component can handle.

5. Android API Levels

 Define the functionality available in different Android versions.

6. Emulator
 Launching Emulator: Testing apps without physical devices.
 Editing Emulator Settings: Configuring hardware, network, etc.
 Emulator Shortcuts: Keyboard shortcuts for easier testing.
 Logcat Usage: Viewing system logs for debugging.

7. Applications of Android

 Mobile apps, IoT, wearables, smart TVs, etc.

These notes provide a comprehensive overview of the topics covered in the syllabus. Each
unit builds on the previous one, starting from basic OS concepts and moving to advanced
topics like Android and Windows internals.

You might also like