Domande di riepilogo sulla gestione del processore
Foglio 1 A che serve il sistema operativo ? Che differenza c’è fra la modalità user e la modalità kernel nel funzionamento dell’hardware ? Perché è necessario avere due stati di funzionamento ? In quale modo/i è possibile passare da modalità utente a modalità kernel e viceversa ? A cosa serve l’istruzione assembler TRAP ? Cosa significa “disabilitare le interruzioni” ? Fornite un esempio di situazione in cui è necessario
Foglio 2 Perché il cambio di contesto fra due processi diversi è un’operazione costosa in termini di tempo? A cosa serve lo stack nello spazio di indirizzamento di un processo ? In che cosa consiste il problema dell’interferenza sui dati condivisi fra due processi ? Fornire un esempio Che differenza c’è fra un thread e un processo ? Discutere le caratteristiche principali dell’implementazione dei thread a livello utente e a livello kernel.
Foglio 3 A che serve l’istruzione assembler TSL? Cos’è un semaforo ? È usabile in modalità utente ? Cos’è un semaforo ? Di cosa si occupa lo scheduler ? Che differenza c’è fra un processo i /o bound e un processo compute bound? Perché gli scheduler reali cercano di dare precedenza ai primi?