Operating Systems Fundamentals

Description:
This course dives into how operating systems (OS) work to manage hardware, run software applications, and provide a stable environment for users and developers. It’s critical for understanding system behavior and performance.

Learning Objectives:

  • Understand the purpose and types of operating systems

  • Explore process and memory management

  • Learn about file systems and storage

  • Study security and access control

Detailed Content:

6.1 Introduction to Operating Systems

An operating system is the system software that manages hardware and software resources on a computer. It acts as a bridge between the user and the computer hardware.

Examples of OS: Windows, Linux, macOS, Android.

6.2 Functions of an Operating System

  • Process management: Scheduling and running programs.

  • Memory management: Allocating and deallocating RAM.

  • File system management: Organizing and accessing files.

  • Device management: Handling input/output devices.

  • Security: Managing user access, permissions, and data protection.

6.3 Process Management

  • Each running program is called a process.

  • Processes have states: Ready, Running, Waiting, Terminated.

  • Multitasking OSs switch between processes using scheduling algorithms.

  • Scheduling types: FCFS, Round Robin, Priority Scheduling.

6.4 Threads and Concurrency

  • Threads are lightweight processes.

  • Used in multitasking to run tasks simultaneously.

  • Concurrency improves performance.

6.5 Memory Management

  • OS allocates RAM to processes.

  • Virtual memory allows use of disk as temporary RAM.

  • Paging and segmentation organize memory efficiently.

6.6 File Systems

  • Files are stored in folders and directories.

  • Permissions: read, write, execute.

  • File systems: NTFS (Windows), EXT4 (Linux), APFS (macOS).

6.7 Security and User Access

  • User accounts and groups.

  • Authentication: Passwords, biometrics.

  • Authorization: Permissions and access rights.

  • Encryption protects sensitive data.