logo

Col·locació en el sistema operatiu

Al sistema operatiu, havíem de donar l'entrada a la CPU, i la CPU executa les instruccions i finalment dóna la sortida. Però hi havia un problema amb aquest enfocament. En una situació normal, hem de fer front a molts processos, i sabem que el temps que triga l'operació d'E/S és molt gran en comparació amb el temps que triga la CPU a l'execució de les instruccions. Per tant, en l'antic enfocament, un procés donarà l'entrada amb l'ajuda d'un dispositiu d'entrada i, durant aquest temps, la CPU es troba en un estat inactiu.

edat de salman khan khan

Aleshores, la CPU executa la instrucció i la sortida es torna a donar a algun dispositiu de sortida i, en aquest moment, la CPU també es troba en estat inactiu. Després de mostrar la sortida, el següent procés comença la seva execució. Així, la majoria de les vegades, la CPU està inactiva, que és la pitjor condició que podem tenir en els sistemes operatius. Aquí entra en joc el concepte de spooling.

Què és el spooling

La col·locació de dades és un procés en què les dades es mantenen temporalment per ser utilitzades i executades per un dispositiu, programa o sistema. Les dades s'envien i s'emmagatzemen a la memòria o a un altre emmagatzematge volàtil fins que el programa o l'ordinador ho sol·liciti per a l'execució.

SPOOL és un acrònim de operacions simultànies de perifèrics en línia . Generalment, el spool es manté a la memòria física de l'ordinador, als buffers o a les interrupcions específiques del dispositiu d'E/S. El spool es processa en ordre ascendent, funcionant segons un algorisme FIFO (first in, first out).

La col·locació es refereix a posar dades de diferents treballs d'E/S en una memòria intermèdia. Aquest buffer és una àrea especial de memòria o disc dur a la qual poden accedir els dispositius d'E/S. Un sistema operatiu realitza les activitats següents relacionades amb l'entorn distribuït:

  • Gestiona la spool de dades dels dispositius d'E/S, ja que els dispositius tenen diferents taxes d'accés a les dades.
  • Manté la memòria intermèdia de cola, que proporciona una estació d'espera on les dades poden descansar mentre el dispositiu més lent es posa al dia.
  • Manté el càlcul paral·lel a causa del procés de spool, ja que un ordinador pot realitzar E/S en ordre paral·lel. És possible que l'ordinador llegeixi dades d'una cinta, escrigui dades al disc i escrigui en una impressora de cinta mentre fa la seva tasca informàtica.

Com funciona el spooling al sistema operatiu

En un sistema operatiu, la spooling funciona en els passos següents, com ara:

  1. La col·locació en cola implica la creació d'un buffer anomenat SPOOL, que s'utilitza per retenir treballs i dades fins que el dispositiu en què es crea el SPOOL estigui preparat per fer servir i executar aquest treball o operar amb les dades.
  2. Quan un dispositiu més ràpid envia dades a un dispositiu més lent per realitzar alguna operació, utilitza qualsevol memòria secundària connectada com a memòria intermèdia SPOOL. Aquestes dades es conserven al SPOOL fins que el dispositiu més lent estigui preparat per funcionar amb aquestes dades. Quan el dispositiu més lent està preparat, les dades del SPOOL es carreguen a la memòria principal per a les operacions necessàries.
    Col·locació en el sistema operatiu
  3. El spooling considera tota la memòria secundària com un buffer enorme que pot emmagatzemar moltes tasques i dades per a moltes operacions. L'avantatge de Spooling és que pot crear una cua de treballs que s'executen en ordre FIFO per executar els treballs un per un.
  4. Un dispositiu es pot connectar a molts dispositius d'entrada, cosa que pot requerir alguna operació amb les seves dades. Per tant, tots aquests dispositius d'entrada poden posar les seves dades a la memòria secundària (SPOOL), que després pot ser executada un per un pel dispositiu. Això s'assegurarà que la CPU no estigui inactiva en cap moment. Per tant, podem dir que la col·locació és una combinació d'emmagatzematge en memòria intermèdia i en cua.
  5. Després que la CPU generi alguna sortida, aquesta sortida es desa primer a la memòria principal. Aquesta sortida es transfereix a la memòria secundària des de la memòria principal i, des d'allà, la sortida s'envia als dispositius de sortida respectius.

Exemple de spooling

El millor exemple de spooling és impressió . Els documents que s'han d'imprimir s'emmagatzemen al SPOOL i després s'afegeixen a la cua per a la impressió. Durant aquest temps, molts processos poden realitzar les seves operacions i utilitzar la CPU sense esperar mentre la impressora executa el procés d'impressió dels documents un per un.

Col·locació en el sistema operatiu

També es poden afegir moltes funcions al procés d'impressió en cola, com ara establir prioritats o notificar quan s'hagi completat el procés d'impressió o seleccionar els diferents tipus de paper per imprimir segons l'elecció de l'usuari.

Avantatges del spooling

A continuació es mostren els avantatges següents de la spool en un sistema operatiu, com ara:

llista de matrius java
  • El nombre de dispositius d'E/S o d'operacions no importa. Molts dispositius d'E/S poden treballar junts simultàniament sense cap interferència ni interrupció entre ells.
  • En spool, no hi ha interacció entre els dispositius d'E/S i la CPU. Això vol dir que no cal que la CPU esperi a que es realitzin les operacions d'E/S. Aquestes operacions triguen molt a acabar d'executar-se, de manera que la CPU no esperarà que s'acabin.
  • La CPU en estat inactiu no es considera molt eficient. La majoria de protocols es creen per utilitzar la CPU de manera eficient en el mínim de temps. En spooling, la CPU es manté ocupada la major part del temps i només passa a l'estat inactiu quan la cua s'esgota. Per tant, totes les tasques s'afegeixen a la cua i la CPU acabarà totes aquestes tasques i després passarà a l'estat inactiu.
  • Permet que les aplicacions s'executin a la velocitat de la CPU mentre funcionen els dispositius d'E/S a les seves respectives velocitats màximes.

Inconvenients del spooling

En un sistema operatiu, la spool té els següents desavantatges, com ara:

  • El spooling requereix una gran quantitat d'emmagatzematge en funció del nombre de sol·licituds fetes per l'entrada i del nombre de dispositius d'entrada connectats.
  • Com que el SPOOL es crea a l'emmagatzematge secundari, tenir molts dispositius d'entrada treballant simultàniament pot ocupar molt d'espai a l'emmagatzematge secundari i, per tant, augmentar el trànsit del disc. Això fa que el disc sigui cada cop més lent a mesura que el trànsit augmenta cada cop més.
  • La spooling s'utilitza per copiar i executar dades des d'un dispositiu més lent a un dispositiu més ràpid. El dispositiu més lent crea un SPOOL per emmagatzemar les dades per operar en una cua i la CPU hi treballa. Aquest procés en si mateix fa que el spooling sigui inútil per utilitzar-lo en entorns en temps real on necessitem resultats en temps real de la CPU. Això es deu al fet que el dispositiu d'entrada és més lent i, per tant, produeix les seves dades a un ritme més lent, mentre que la CPU pot funcionar més ràpid, de manera que passa al següent procés de la cua. És per això que el resultat final o la sortida es produeix en un moment posterior en lloc de fer-ho en temps real.

Diferència entre spooling i buffering

La col·locació i la memòria intermèdia són les dues maneres en què els subsistemes d'E/S milloren el rendiment i l'eficiència de l'ordinador utilitzant un espai d'emmagatzematge a la memòria principal o al disc.

Col·locació en el sistema operatiu

La diferència bàsica entre la col·locació i l'emmagatzematge en memòria intermèdia és que la col·locació se solapa l'E/S d'un treball amb l'execució d'un altre treball. En comparació, la memòria intermèdia se superposa a l'E/S d'un treball amb l'execució del mateix treball. A continuació es mostren algunes diferències més entre la col·locació i la memòria intermèdia, com ara:

Termes Enrotllament Buffering
Definició Spooling, acrònim de Simultaneous Peripheral Operation Online (SPOOL), col·loca les dades en una àrea de treball temporal per poder accedir-hi i processar-les per un altre programa o recurs. La memòria intermèdia és un acte d'emmagatzemar dades temporalment a la memòria intermèdia. Ajuda a fer coincidir la velocitat del flux de dades entre l'emissor i el receptor.
Necessitat de recursos La spooling requereix menys gestió de recursos, ja que diferents recursos gestionen el procés per a feines específiques. L'emmagatzematge en memòria intermèdia requereix més gestió de recursos, ja que el mateix recurs gestiona el procés del mateix treball dividit.
Implementació interna La col·locació superposa l'entrada i la sortida d'un treball amb el càlcul d'un altre treball. La memòria intermèdia se solapa l'entrada i la sortida d'un treball amb el càlcul del mateix treball.
Eficient La cola és més eficient que la memòria intermèdia. La memòria intermèdia és menys eficient que la spooling.
Processador El spooling també pot processar dades en llocs remots. El col·lector només ha de notificar quan es completa un procés al lloc remot per enviar el següent procés al dispositiu del costat remot. La memòria intermèdia no admet el processament remot.
Mida a la memòria Considera el disc com un gran spool o buffer. La memòria intermèdia és una àrea limitada a la memòria principal.