Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> hardware >> Dispositivi di Input & Output >> .

Scrivi una serie di indicazioni che indicano a un dispatcher operativo cosa fare quando process?

Indicazioni di dispatcher operativo:gestione del processo

Queste direzioni delineano le procedure per un dispatcher operativo durante la gestione dei processi. Ricorda di dare la priorità ai processi basati su algoritmi di pianificazione predefiniti (ad es. FIFO, SJF, Round Robin).

i. Arrivo di processo:

1. Ricevi richiesta di processo: Dopo aver ricevuto una richiesta di processo (ad es. Da un utente, chiamata di sistema o interrupt I/O), registrare le seguenti informazioni:

* ID processo (PID)

* Livello prioritario (se applicabile)

* Requisiti di memoria

* Time di scoppio della CPU (stimato, se disponibile)

* Richieste I/O (se noto)

2. Controlla la disponibilità delle risorse: Verificare se sono disponibili risorse sufficienti (tempo CPU, memoria, dispositivi I/O) per ospitare il nuovo processo. In caso contrario, posizionare il processo in una coda (ad esempio, coda pronta, coda bloccata) in base alle sue esigenze di priorità e risorse.

3. Allocate Risorse (se disponibile): Se sono disponibili risorse, allocare la memoria necessaria, assegnare una fetta di tempo (se si utilizzano lezioni temporali) e posizionare il processo nella coda pronta.

ii. Esecuzione del processo:

1. Selezione del processo: Seleziona un processo dalla coda pronta in base all'algoritmo di pianificazione.

2. Switch di contesto (se necessario): Se è richiesto uno switch di contesto (passare da un processo all'altro), salvare lo stato del processo corrente (registri, contatore del programma, mappa della memoria) e caricare lo stato del processo selezionato.

3. Esecuzione del processo: Lasciare eseguire il processo selezionato per la sua fetta di tempo assegnata o fino a quando non blocca (ad esempio, in attesa di I/O).

4. Blocco del processo: Se un processo deve attendere l'I/O o un'altra risorsa, spostalo nella coda bloccata appropriata e rilasciare la CPU.

iii. Terminatura del processo:

1. Completamento del processo: Quando un processo completa la sua esecuzione, rivendicare le sue risorse allocate (memoria, ecc.).

2. Gestione della terminazione: Gestire eventuali attività di pulizia necessarie, come chiusura di file, rilasciare blocchi e rilasciare risorse allocate.

3. Rimozione dalle code: Rimuovere il processo terminato da tutte le code.

IV. Gestione dei processi bloccati:

1. I/O Completamento: Quando si completa un'operazione I/O, spostare il processo corrispondente dalla coda bloccata nella coda pronta.

2. Disponibilità delle risorse: Quando diventa disponibile una risorsa richiesta di un processo bloccato, riportarla alla coda pronta.

v. Gestione degli errori:

1. Esaurimento delle risorse: Se le risorse sono costantemente esaurite, prendi in considerazione l'adeguamento delle politiche di allocazione delle risorse o lo studio delle potenziali perdite delle risorse.

2. Errori di processo: Gestire gli errori del processo (ad es. I guasti di segmentazione, le istruzioni illegali) in base alle procedure di gestione degli errori predefinite, interrompendo potenzialmente il processo.

3. Errori di sistema: Se si verifica un errore di sistema, tentare di recuperare con grazia o avviare le procedure di arresto del sistema.

vi. Monitoraggio e registrazione:

1. Mantenere lo stato del processo: Tenere traccia dello stato di tutti i processi (in esecuzione, pronto, bloccato, terminato).

2. Eventi di registro: Registrare eventi significativi, tra cui creazione di processo, risoluzione, decisioni di pianificazione, allocazione delle risorse ed errori. Questo è cruciale per il debug e l'analisi delle prestazioni.

Queste direzioni forniscono un quadro generale. L'implementazione specifica dipenderà dall'algoritmo di progettazione e pianificazione del sistema operativo. Fare sempre riferimento alla documentazione del sistema per istruzioni dettagliate e procedure specifiche.

 

hardware © www.354353.com