## 1. Disk Scheduling Algorithms
In traditional Hard Disk Drives (HDDs), data is read and written by a mechanical disk head moving across spinning platters. Because mechanical movement is slow, the operating system uses **Disk Scheduling Algorithms** to order incoming I/O requests. The main goal is to minimize **Seek Time** (the time it takes for the disk head to move to the required cylinder).
To compare these algorithms, let's use a standard example:
* **Total Cylinders:** 0 to 199 (200 total tracks)
## 1. Demand Paging
In a standard virtual memory system, the operating system doesn't load an entire program into physical memory (RAM) at once. Instead, it uses **Demand Paging**—a strategy where pages are loaded into memory **only when they are needed (on demand)**.
### How It Works: The Page Fault Mechanism
1. **CPU Reference:** The CPU tries to access a specific virtual address.
2. **Page Table Check:** The Hardware (MMU) checks the page table entry for that page. Each entry has a **Valid/
## Deadlock Characterization
A **deadlock** is a situation where a set of processes are blocked because each process is holding a resource and waiting for another resource held by some other process in the set.
### The Four Necessary Conditions
A deadlock can arise if and only if the following four conditions hold simultaneously in a system:
1. **Mutual Exclusion:** At least one resource must be held in a non-shareable mode. Only one process can use the resource at any given instant.
2. **Hold and
## The Critical Section Problem
In a multi-threaded or multi-process system, shared data can easily become corrupted if multiple processes try to modify it at the same time. This issue is known as a **race condition**.
To prevent this, we identify the section of code where shared resources are accessed as the **Critical Section**. The goal is to ensure that only one process executes in its critical section at any given moment.
```
do {
[ Entry Section ] <-- Request permission to enter
**Process Management** is one of the most critical responsibilities of an Operating System. While a program is just a passive collection of instructions stored on a disk, a process is an active, executing instance of that program.
## 1. Process Concepts & The Process Control Block When a program is loaded into memory to execute, it becomes a process. A process is structurally divided into four distinct memory sections:
* **Text Section:** Contains the compiled, executable machine code.
* **
An **Operating System (OS)** acts as an intermediary or a bridge between the computer hardware and the user. It manages the hardware resources, provides a platform for application software to run, and ensures that the computer system operates efficiently and securely.
## 1. Core Functions and Characteristics
### Major Functions of an OS ::: **Processor Management (CPU Scheduling):** Decides which process gets the processor when, and for how long.
* **Memory Management:** Tracks primary memory (RAM)
A **coronavirus** is not just one single bug; it is actually a large family of viruses. They get their name because under a microscope, they look like they are wearing a spiked crown—**"corona"** means crown in Latin.
While many coronaviruses only cause mild illnesses like the common cold, a few rare types can jump from animals to humans and cause severe respiratory infections.
### Key Types of Coronaviruses
Most of the time, humans contract mild "community" coronaviruses that cause basic cold symptoms.
Piaget wyróżnił 4 stadia rozwoju poznawczego:
Dziecko poznaje świat przez zmysły i ruch.
Uczy się związku między działaniem a skutkiem.
Pod koniec tego okresu rozwija się stałość przedmiotu – dziecko rozumie, że przedmiot istnieje nawet wtedy, gdy go nie widzi.
Rozwija się mowa i myślenie symboliczne.
Dziecko potrafi używać słów, obrazów i symboli.