È corretto dire che i thread consentono ai programmatori di esporre i processi interni allo scheduler del SO?

0

È corretto dire che i thread sono stati inventati per consentire ai programmatori di esporre i processi interni allo scheduler del sistema operativo?

    
posta Ben 05.07.2016 - 10:03
fonte

1 risposta

1

Un tradizionale non-threaded è in realtà un programma con 1 thread.

Ora capiamo che, in alcuni sistemi operativi, l'elaborazione in parallelo si ottiene eseguendo più istanze di un programma. Non diresti che sta esponendo i processi interni al sistema operativo, ma sta facendo esattamente la stessa cosa che fa un programma multi-thread (cioè uno con supporto OS per più thread interni).

Tutto ciò che fa un programma "threaded" è consentire l'esecuzione di più punti di esecuzione utilizzando la stessa istanza del programma, invece di avviare un processo completamente nuovo (con tutta la memoria associata e sicurezza e altro supporto del sistema operativo) riutilizzare i thread le stesse cose che ha un singolo processo.

Quindi, sono stati inventati dei thread per rendere più efficiente l'elaborazione parallela. (YMMV con alcuni sistemi operativi in cui un processo è piuttosto leggero in primo luogo)

    
risposta data 05.07.2016 - 10:24
fonte

Leggi altre domande sui tag