25-12-2024 - Computer Basics - Operating System (4) [EN]-[IT]

image.png


~~~ La versione in italiano inizia subito dopo la versione in inglese ~~~


ENGLISH
25-12-2024 - Computer Basics - Operating System (4) [EN]-[IT]
With this post I would like to give a brief instruction about the topic mentioned in the subject
(code notes: X_80)

Operating System (4) - Memory Management
Memory management is a fundamental function of the operating system that consists in controlling and optimizing the use of a computer's memory. It ensures that each process has the space necessary to perform its operations without interfering with other processes.
Main points:
-Allocation and deallocation
-Protection
-Virtual memory
-Paging and segmentation
-Optimization

The goal is to assign each process a portion of central memory by checking that the operation of a given program does not occupy memory areas already used by other programs. In practice, the memory manager allows programs to work in their own virtual address space, ignoring the actual areas of physical memory occupied.

Here are some information pills about the subject in question.

1-virtual memory
A virtual memory is given by the combination of main memory and swap area
Virtual memory is a technique used by operating systems to simulate a larger amount of memory than that physically available in RAM (main memory)

2-LRU (Last Recently Used)
The LRU (Last Recently Used) replacement algorithm is based on the principle of global locality.
In the case in which all page locations are occupied, it is necessary to choose the page to be overwritten based on the reference bit and the variation bit. Generally, to implement this choice, the LRU (Last Recently Used) replacement algorithm is used. This algorithm is based on the principle of global locality, that is, if a page has been used recently, it will most likely be used again. Consequently, for the overwriting operation, a page not recently used is chosen. If the chosen page has undergone changes, it must first be saved to disk and then overwritten. Finally, it is necessary to appropriately update all the tables involved (both the page occupancy table and the page table of the processes involved).

3-Static relocation
A static relocation is obtained from the fixed partition technique

4-Page swapping
The page swapping operation consists of loading a page that is not present in memory

5-The swap area
The swap area is the area of ​​the disk used to host the pages in secondary memory

6-segmentation technique
The segmentation technique requires that each memory reference is given by a pair: segment and displacement.
The segmentation technique requires that a program is divided into multiple segments, each of which can subsequently be loaded into a different partition (in each segment the logical addresses start from 0).
The address field of the instructions is made up of a part containing the segment number (of size 1 byte) and a displacement part containing the address within the segment (of size 2 bytes). Each memory reference is then given by a pair <segment name, offset>.

7-First fit
First fit is the fastest free partition strategy.

Different strategies are used to choose the free partition to use:
⎯ first fit: the memory manager scans the list of segments until it finds the first free area large enough. This area is divided into two parts, one for the process and one for unused memory. First fit is a fast strategy because it limits search operations to a minimum;
⎯ next fit: similar to first fit but in this case the memory manager starts each search from the point left by the previous search. This strategy has slightly lower performance than first fit;
⎯ best fit: the memory manager scans the entire list of segments and chooses the smallest free area large enough to contain the process. Best fit is a slower strategy than first fit and wastes more memory because it leaves memory areas too small to be used;

8-Fixed Partition Technique
In the fixed partition technique, this information is contained in the partition:
-PID of the program
-final address
-starting address
NOTE:
In the fixed partition technique, the intermediate address is not contained in the partition.

9-Single contiguous memory
In single contiguous memory management, the memory is divided into two parts

10-Mapping operation
The mapping or address reallocation operation consists in transforming the logical address into a physical address.

Conclusions
Memory management aims to ensure efficiency, multitasking and security during the execution of programs.

Question
The more our needs grow, the more the memory of our computers grows.
My first computer had 64 KB of RAM (it was a Commodore 64). Do you remember how much RAM your first computer purchased or used at school had?



[ITALIAN]
25-12-2024 - Basi di informatica - Sistema operativo (4) [EN]-[IT]
Con questo post vorrei dare una breve istruzione a riguardo dell’argomento citato in oggetto
(code notes: X_80)

Sistema operativo (4) - La gestione della memoria
La gestione della memoria è una funzione fondamentale del sistema operativo che consiste nel controllare e ottimizzare l'uso della memoria di un computer. Essa garantisce che ogni processo abbia lo spazio necessario per eseguire le sue operazioni senza interferire con altri processi.
Punti principali:
-Allocazione e deallocazione
-Protezione
-Memoria virtuale
-Paginazione e segmentazione
-Ottimizzazione

L’obiettivo è quello di assegnare ad ogni processo una porzione di memoria centrale controllando che il funzionamento di un dato programma non occupi zone di memorie già impiegate da altri programmi. In pratica, il gestore della memoria consente ai programmi di lavorare in un proprio spazio di indirizzamento virtuale, ignorando le effettive zone di memoria fisica occupata.

Qui di seguito alcune pillole di informazioni a riguardo dell’argomento in oggetto.

1-memoria virtuale
Una memoria virtuale è data dall'insieme di memoria centrale e area di swap
La memoria virtuale è una tecnica usata dai sistemi operativi per simulare una quantità di memoria maggiore rispetto a quella fisicamente disponibile nella RAM (memoria centrale)

2-LRU (Last Recently Used)
L’algoritmo di sostituzione LRU (Last Recently Used) si basa sul principio di località globale.
Nel caso in cui tutte le sedi pagina siano occupate, è necessario scegliere la pagina da sovrascrivere sulla base del bit di riferimento e del bit di variazione. Generalmente, per implementare questa scelta si adopera l’algoritmo di sostituzione LRU (Last Recently Used). Questo algoritmo si basa sul principio di località globale, ossia se una pagina è stata usata di recente, molto probabilmente verrà nuovamente utilizzata. Di conseguenza, per l’operazione di sovrascrittura si sceglie una pagina non usata di recente. Se la pagina scelta ha subito variazioni, deve essere prima salvarla su disco e poi sovrascritta. Infine, è necessario aggiornare in maniera opportuna tutte le tabelle interessate (sia la tabella di occupazione delle pagine che la tabella delle pagine dei processi coinvolti).

3-Rilocazione di tipo statico
Una rilocazione di tipo statico si ricava dalla tecnica delle partizione fisse

4-Page swapping
L'operazione di page swapping consiste nel caricare una pagina non presente in memoria

5-L'area di swap
L'area di swap è l'area del disco utilizzata per ospitare le pagine in memoria secondaria

6-tecnica di segmentazione
La tecnica di segmentazione prevede che ogni riferimento di memoria è dato da una coppia: segmento e displacement.
La tecnica di segmentazione prevede che un programma sia suddiviso in più segmenti, ciascuno dei quali potrà essere successivamente caricato in una partizione diversa (in ogni segmento gli indirizzi logici partono da 0).
Il campo indirizzo delle istruzioni è formato da una parte contenente il numero del segmento (della dimensione di 1 byte) e da una parte displacement contenente l’indirizzo all’interno del segmento (della dimensione di 2 byte). Ogni riferimento di memoria è quindi dato da una coppia <nome segmento, offset>.

7-First fit
La first fit è la strategia della partizione libera più veloce.

Per la scelta della partizione libera da utilizzare sono impiegate diverse strategie:
⎯ first fit: il gestore di memoria scandisce la lista dei segmenti fin quando trova la prima zona libera abbastanza grande. Questa zona viene divisa in due parti, una per il processo e una per la memoria non utilizzata. Il first fit è una strategia veloce perché limita al massimo le operazioni di ricerca;
⎯ next fit: similare al first fit ma in questo caso il gestore della memoria inizia ogni ricerca dal punto lasciato alla ricerca precedente. È una strategia che presenta prestazioni leggermente inferiori al first fi;
⎯ best fit: il gestore di memoria scandisce tutta la lista dei segmenti e sceglie la più piccola zona libera sufficientemente grande da contenere il processo. Il best fit è una strategia più lenta del first fit e spreca più memoria poiché lascia zone di memoria troppo piccole per essere utilizzate;

8-Tecnica delle partizioni fisse
Nella tecnica delle partizioni fisse, queste informazioni sono contenute nella partizione:
-PID del programma
-indirizzo finale
-indirizzo iniziale
NOTA:
Nella tecnica delle partizioni fisse, q non è contenuta nella partizione l'indirizzo intermedio.

9-memoria contigua singola
Nella gestione di memoria contigua singola la memoria è divisa in due parti

10-L'operazione di mapping
L'operazione di mapping o riallocazione degli indirizzi consiste nel trasformare l'indirizzo logico in indirizzo fisico.

Conclusioni
La gestione della memoria ha come obiettivo di garantire efficienza, multitasking e sicurezza durante l'esecuzione dei programmi.

Domanda
Più crescono le nostre esigenze e più cresce la memoria dei nostri computer.
Il mio primo computer aveva 64 KB di memoria RAM (era un Commodore 64). Ricordate quanta memoria RAM aveva il vostro primo computer acquistato o usato a scuola?

THE END



0
0
0.000
6 comments
avatar

I know about everything aside from the part of First fit
Thanks for sharing your knowledge

0
0
0.000
avatar

Congratulations @stefano.massari! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You distributed more than 75000 upvotes.
Your next target is to reach 76000 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out our last posts:

Christmas Season is Back - Gift your Loved Friends
0
0
0.000