Conceptes Clau de Sistemes Operatius: Processos i Memòria
Clasificado en Informática
Escrito el en catalán con un tamaño de 4,53 KB
Concepte de Procés
Un procés es defineix per:
- Una seqüència d'instruccions.
- Una noció d'estat actual.
- Un conjunt de recursos del sistema associats.
Cicle de Vida d'un Procés
El cicle típic és: Càrrega a Memòria > Inicialització > Execució > Finalització.
Unitats d'Execució: Aplicacions, Processos i Fils
Aplicació – Processos – Fils (Threads)
Estratègies de Planificació de Processos
Planificació FIFO (First In – First Out) o FCFS (First Come – First Served)
No és realment multitasca.
Planificació per Prioritats
Aquesta estratègia tampoc és multitasca per si sola.
Planificació Round Robin (execució cíclica o de torn rotatori)
Assigna petits intervals de temps (time slices) a cada procés.
Planificació Round Robin amb Prioritats Dinàmiques
Combina Round Robin amb prioritats que poden canviar.
Càlcul de la Prioritat Efectiva
Prioritat Efectiva = funció (Prioritat Base, Prioritat Assignada, Estadístiques)
Gestió de CPU en Sistemes Multiprocessador
SMP (Symmetric MultiProcessor)
Assigna el mateix paper a totes les CPU o nuclis de CPU disponibles.
AMP (Asymmetric MultiProcessor)
El sistema assigna una o unes determinades CPU o nuclis de CPU a executar processos concrets d’alta prioritat.
Jerarquia de Memòria
Flux de Dades (Accés)
Registres de la CPU > Memòria Cau > Memòria Principal (RAM) > Memòria Virtual en Disc
Flux de Dades (Càrrega)
Memòria Virtual en Disc > Memòria Principal (RAM) > Memòria Cau > Registres de la CPU
Components de la Jerarquia (Exemple)
Xip del processador: CPU <-> Memòria cau interna <-> Memòria cau Externa <-> Memòria principal
Thrashing
Thrashing: situació en la qual el sistema esmerça més temps d'execució i recursos en realitzar l'intercanvi de continguts entre memòria principal i virtual que en la pròpia execució de processos productius.
Gestió de la Memòria Principal pel Sistema Operatiu
Funcions Clau
- Protecció de memòria: Assegurar que un procés no accedeixi a memòria assignada a un altre.
- Reubicabilitat dels processos: Permetre que un procés es pugui carregar i executar en diferents parts de la memòria física.
- Mapeig de memòria principal sobre memòria virtual: Gestionar la correspondència entre adreces virtuals i físiques.
Tècniques de Gestió
Paginació
Consisteix en dividir la memòria principal en conjunts d'adreces consecutives d'una mida fixa (pàgines). Quan es necessita una pàgina que no és a la memòria principal, es produeix un "page fault" (fallada de pàgina).
Segmentació
Mecanisme semblant a la paginació que es diferencia d'aquesta en el fet que la memòria es divideix en conjunts consecutius d'adreces (segments) però, en aquest cas, de mida variable.
Màquines Virtuals (VM)
Màquina Virtual de Sistema
És un programari que permet simular el funcionament d'un ordinador complet sobre una plataforma existent (Plataforma = Maquinari + SO). Les màquines virtuals de sistema també es poden anomenar “Màquines virtuals de Maquinari” perquè simulen una plataforma de maquinari concreta. El programari que ho fa possible s'anomena VMM (Virtual Machine Monitor) o Hipervisor.
Tipus d'Execució del Programari de Virtualització
- Sobre un sistema operatiu instal·lat (Tipus 2).
- Directament sobre una plataforma de maquinari (Tipus 1 o *bare-metal*).
Tipus de Virtualització
Pot ser 100% programari o assistida per maquinari.
Màquines Virtuals de Procés (Exemples)
Aquestes VM estan dissenyades per executar programes individuals independentment de la plataforma subjacent.
- La Màquina Virtual de Java (JVM): permet l'execució d'aplicacions Java (bytecode).
- La Common Language Runtime (CLR): permet l'execució d'aplicacions .NET de Microsoft.
- L'Adobe Flash Player: permetia l'execució de contingut creat amb el llenguatge ActionScript.