Processamento com SPOOL Utilização do CPU e periféricos ...

Processamento com SPOOL Utilização do CPU e periféricos ... Processamento com SPOOL Utilização do CPU e periféricos ...

asc.di.fct.unl.pt
from asc.di.fct.unl.pt More from this publisher
21.06.2013 Views

Múltiplos programas ● Vários programas em memória prontos a executar ● Quando um fizer I/O escalonar outro para executar, mantendo o CPU ocupado Perif. entrada CPU Perif. saída Vários programas em concorrência (multiprogramação) tempo 28-02-2007 ASC II - 06/07 7 Time-sharing ●Um programa CPU bound pode monopolizar a máquina Mau para o uso dos periféricos Mau para a interactividade ●Há que partilhar do tempo de CPU por cooperação entre os programas por apreenção do CPU pelo SO (preemption) Time-slice: Cada programa usa no máximo uma determinada fatia de tempo, sendo-lhe o CPU apreendido pelo SO se gastar todo esse tempo. 28-02-2007 ASC II - 06/07 9 Time-sharing (cont) ● Exemplo: 4 processos concorrem pelo CPU ● A quando de I/O ou do fim do time-slice o SO atribui o CPU a outro processo prog.A prog.B Realmente em execução prog.C prog.D Processo 1 Processo 2 Processo 3 Processo 4 S.O. escalonador CPU temporizador 28-02-2007 ASC II - 06/07 11 Multiprogramação (multitasking) ● Cada programa executa num contexto (processo): Imagem do programa em memória Estado do CPU Estado do I/O ● O SO muda de contexto quando necessário Oferece um máquina virtual a cada processo ● É necessário suporte hardware: Um programa "vê" um espaço de memória próprio, recolocado, (e só pode aceder a essa memória) Só o SO acede realmente a toda a memória e aos periféricos gerindo a sua partilha entre os vários processos 28-02-2007 ASC II - 06/07 8 Múltiplos utilizadores ●Suportado por time-sharing ●Cada utilizador vê uma máquina virtual No disco tem um conjunto de aplicações No disco guarda um conjunto de dados O utilizador interage dando comandos ao sistema via um shell Manda o sistema executar programas, p.ex. Permite programas interactivos 28-02-2007 ASC II - 06/07 10 Estados dum processo criação terminação escalonado pronto fim do I/O fim do time-slice bloqueado executando I/O 28-02-2007 ASC II - 06/07 12 2

Sistema interactivo (time-sharing) utilizadores perif. de entrada Terminais (perif. de entrada e saída) Disco (dados e programas) Unidade central perif. de saída consola Operador/administrador 28-02-2007 ASC II - 06/07 13 Curiosidade (Bell-Labs 1970...) Ritchie Thompson Mini-computador DEC PDP-11 com vários periféricos http://www.bell-labs.com/history/unix/ 28-02-2007 ASC II - 06/07 15 Abstracções do SO (máquina virtual) ●Gerir a execução dos programas e os recursos da máquina Criar/terminar os processos Atribuir espaço de memória a cada processo Noção de ficheiros em disco Executa o I/O com os periféricos Time-sharing do CPU transparente para os processos ●Gerir os utilizadores Gerir os recursos que oferece a cada utilizador 28-02-2007 ASC II - 06/07 17 Exemplos de terminais Digital (DEC) vt100 1978 Teletype 33-ASR 1965 28-02-2007 ASC II - 06/07 14 Papel do SO (resumo) ●Melhorar a utilização dos recursos disponíveis Escalonar os vários trabalhos/processos Suportar a multiprogramação Gerir o hardware: Acede realmente aos periféricos Permite a protecção entre os programas ●Facilitar a programação Implementa abstracções e oferece uma interface com o hardware mais fácil de usar 28-02-2007 ASC II - 06/07 16 Resumo (utilizador vs. computador) ● Modo de trabalho do utilizador Submissão de trabalhos off-line ☺ Interactiva (aumenta a produtividade do utilizador) ● Execução suportada pelo SO Puramente sequencial Concorrência do I/O com computação Usando lotes (c/ I/O off-line) Usando SPOOL (c/ I/O on-line) ☺ Concorrência também na computação/multiprogramação (aumenta a eficiência do sistema e rentabiliza a máquina) 28-02-2007 ASC II - 06/07 18 3

Sistema interactivo (time-sharing)<br />

utiliza<strong>do</strong>res<br />

perif. de<br />

entrada<br />

Terminais<br />

(perif. de entrada e saída)<br />

Disco<br />

(da<strong>do</strong>s e programas)<br />

Unidade<br />

central<br />

perif. de<br />

saída<br />

consola<br />

Opera<strong>do</strong>r/administra<strong>do</strong>r<br />

28-02-2007 ASC II - 06/07 13<br />

Curiosidade (Bell-Labs 1970...)<br />

Ritchie<br />

Thompson<br />

Mini-<strong>com</strong>puta<strong>do</strong>r<br />

DEC<br />

PDP-11<br />

<strong>com</strong> vários<br />

<strong>periféricos</strong><br />

http://www.bell-labs.<strong>com</strong>/history/unix/<br />

28-02-2007 ASC II - 06/07 15<br />

Abstracções <strong>do</strong> SO (máquina virtual)<br />

●Gerir a execução <strong>do</strong>s programas e os<br />

recursos da máquina<br />

Criar/terminar os processos<br />

Atribuir espaço de memória a cada processo<br />

Noção de ficheiros em disco<br />

Executa o I/O <strong>com</strong> os <strong>periféricos</strong><br />

Time-sharing <strong>do</strong> <strong>CPU</strong> transparente para os<br />

processos<br />

●Gerir os utiliza<strong>do</strong>res<br />

Gerir os recursos que oferece a cada utiliza<strong>do</strong>r<br />

28-02-2007 ASC II - 06/07 17<br />

Exemplos de terminais<br />

Digital (DEC) vt100<br />

1978<br />

Teletype 33-ASR<br />

1965<br />

28-02-2007 ASC II - 06/07 14<br />

Papel <strong>do</strong> SO (resumo)<br />

●Melhorar a utilização <strong>do</strong>s recursos disponíveis<br />

Escalonar os vários trabalhos/processos<br />

Suportar a multiprogramação<br />

Gerir o hardware:<br />

Acede realmente aos <strong>periféricos</strong><br />

Permite a protecção entre os programas<br />

●Facilitar a programação<br />

Implementa abstracções e oferece uma<br />

interface <strong>com</strong> o hardware mais fácil de usar<br />

28-02-2007 ASC II - 06/07 16<br />

Resumo (utiliza<strong>do</strong>r vs. <strong>com</strong>puta<strong>do</strong>r)<br />

● Mo<strong>do</strong> de trabalho <strong>do</strong> utiliza<strong>do</strong>r<br />

Submissão de trabalhos off-line<br />

☺ Interactiva (aumenta a produtividade <strong>do</strong> utiliza<strong>do</strong>r)<br />

● Execução suportada pelo SO<br />

Puramente sequencial<br />

Concorrência <strong>do</strong> I/O <strong>com</strong> <strong>com</strong>putação<br />

Usan<strong>do</strong> lotes (c/ I/O off-line)<br />

Usan<strong>do</strong> <strong>SPOOL</strong> (c/ I/O on-line)<br />

☺ Concorrência também na<br />

<strong>com</strong>putação/multiprogramação (aumenta a eficiência<br />

<strong>do</strong> sistema e rentabiliza a máquina)<br />

28-02-2007 ASC II - 06/07 18<br />

3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!