PROCESSOS
Santos/SP
2015
SUMRIO
1 INTRODUO................................................................................................4
2 SISTEMA OPERACIONAL...........................................................................5
3 PROCESSOS....................................................................................................6
3.1 Processos Sequenciais e Multiprogramao..................................................................6
3.2 Criao e Trmino de Um Processo................................................................................7
3.3 Hierarquia de Processos..................................................................................................7
3.4 Estados dos Processos......................................................................................................8
3.4.1 No-Submetido...........................................................................................................8
3.4.2 Suspenso.....................................................................................................................8
3.4.3 Pronto.........................................................................................................................8
3.4.5 Executando.................................................................................................................9
3.4.6 Espera........................................................................................................................9
3.5 Bloco de Controle de Processo........................................................................................9
3.6 Tabela de Processos.......................................................................................................10
3.7 Tabela de Interrupes...................................................................................................10
3.8 Threads no Processo......................................................................................................11
3.9 Mquina de Estados Finitos..........................................................................................11
5 ESCALONAMENTO.....................................................................................14
5.1 Algoritmos de Escalonamento.......................................................................................14
5.2 Escalonamento No Preemptivo e Preemptivo.............................................................15
CONSIDERAES FINAIS............................................................................16
REFERNCIAS BIBLIOGRFICAS............................................................17
1 INTRODUO
O objetivo de um sistema operacional organizar e controlar o hardware e o
software para que o dispositivo funcione de maneira flexvel e previsvel, entretanto,
ele no executa somente os programas que podemos ver. Imagine que os
aplicativos que voc roda renem diversas instrues e comandos, porm, so os
processos que efetivamente executam esses comandos. Em outras palavras, isso
significa que, ao contrrio do que se pensa, um nico aplicativo tem, alm daquela
interface amigvel, uma srie de processos relacionados a ele.
Atualmente, temos uma infinidade de sistemas no mercado, que podem at
contar com caractersticas prprias, mas que em sua estrutura bsica so muito
similares. Portanto, para um desenvolvedor, essencial entender o funcionamento
da mquina, pois o resultado de seu trabalho ter o mesmo tratamento quando
executado. O objetivo deste trabalho mostrar ao leitor uma viso geral de como o
computador lida com o grande nmero de informaes tratadas diariamente.
2 SISTEMA OPERACIONAL
um programa complexo e extremamente importante para um sistema
computacional realizar as suas operaes. Seu principal objetivo criar um
ambiente de trabalho que seja conveniente ao usurio, controlando os recursos e
fornecendo a base sobre a qual os programas aplicativos podem ser escritos.
Suas funes bsicas, entre outras, a de fornecer a uma interface de
comunicao entre o sistema de comunicao e o usurio, gerenciar a operao dos
dispositivos de hardware, gerenciar e manter o sistema de arquivos armazenados,
dar suporte aos programas que so executados, gerenciamento de processos, de
memria, de I/O, gerenciamento de arquivos e diretrios, entre outros.
3 PROCESSOS
Processo um mdulo executvel nico que corre simultaneamente com
outros mdulos executveis. Processos so mdulos separados e carregveis, ao
contrrio de threads, que no podem ser carregadas. Mltiplas threads de execuo
podem ocorrer dentro de um mesmo processo. Alm das threads, o processo
tambm inclui certos recursos, como arquivos e alocaes dinmicas de memria e
espaos de endereamento.
A diferena entre um programa e um processo que o programa um
conjunto finito e esttico de instrues, enquanto os processos so dinmicos,
sofrendo alteraes conforme a execuo. O processo o estado do programa em
um dado momento do processamento.
Todo processo necessita de recursos do sistema para ser executado e o
sistema operacional gerencia a execuo desses processos.
que
um
processo
que
est
sendo
executado
seja
suspenso
10
3.4.5 Executando
A execuo propriamente dita. O cdigo est sendo processado. Se ocorrer
durante a execuo uma requisio de E/S o processo colocado no estado de
espera e outro processo da fila de prontos poder ento concorrer a CPU.
3.4.6 Espera
o processo que foi colocado na fila de espera de E/S devido ao processador
de E/S ser mais lento que a CPU principal. O processo tornaria a CPU mais escrava
dele se no houvesse esse estado, pois como ele no est concorrendo CPU ao
executar um E/S, pode-se ento coloc-lo no estado de espera para que os demais
processos do estado pronto possam concorrer a CPU.
11
12
da tabela de interrupes
Ao receber um pedido de interrupo a CPU consulta a tabela de interrupes
para consultar as instrues que servem para aquela interrupo em especfico,
removendo o vetor de interrupo do barramento e salvando temporariamente e
depois consulta um novo contador de programa (PC) com a ajuda desta tabela.
13
que a transio ocorra. Uma ao a descrio de uma atividade que deve ser
realizada num determinado momento.
Um estado descreve um n de comportamento do sistema em que est
espera de uma condio para executar uma transio. Normalmente, um estado
introduzido quando o sistema no reage da mesma forma para uma mesma
condio. No exemplo de um sistema de rdio de carro, quando se est ouvindo
uma estao de rdio, o estmulo "prximo" significa ir para a prxima estao. Mas
quando o sistema est no estado de CD, o estmulo "prximo" significa ir para a
prxima faixa. O mesmo estmulo desencadeia aes diferentes, dependendo do
estado atual. Em algumas representaes de estado finito mquina, tambm
possvel associar aes a um estado:
- Ao de entrada: o que realizado ao entrar no estado,
- Ao de sada: o que executado ao sair do estado.
A transio um conjunto de aes a serem executadas quando uma
condio for cumprida ou quando um evento recebido. Mquinas de estado so
utilizadas para descrever circuitos sequenciais. Diferentemente de um contador que
em geral conta eventos, uma mquina de estado costuma ser usada para controlar o
evento.
14
15
5 ESCALONAMENTO
Quando um sistema precisa organizar as ordens de execuo do processo. O
escalonador do SO utiliza alguns critrios de escalonamento, como: a taxa de
utilizao de CPU, que a frao de tempo durante a qual ela est sendo ocupada;
throughput que so nmeros de processos terminados por unidade de tempo;
turnaround que o tempo transcorrido desde o momento em que o software entra e
o instante em que termina sua execuo; tempo de resposta: intervalo entre a
chegada ao sistema e incio de sua execuo; tempo de espera: soma dos perodos
em que o programa estava no seu estado pronto.
FIFO (First in, first out) ou FCFS (First come, first served): Onde como seu prprio
nome j diz, o primeiro que chega ser o primeiro a ser executado;
SJF (Shortest Job First): Onde o menor processo ganhar a CPU e atrs do mesmo
formar uma fila de processos por ordem crescente de tempo de execuo;
SRT (Shortest Remaining Time): Neste algoritmo escolhido o processo que possua
o menor tempo restante, mesmo que esse processo chegue metade de uma
operao, se o processo novo for menor ele ser executado primeiro;
16
Mltiplas Filas: So usadas vrias filas de processos prontos para executar, cada
processo e colocado em uma fila, e cada fila tem uma poltica de escalonamento
prpria e outra entre filas.
Todos os algoritmos classificam os processos em estados: Iniciando, Pronto,
Executando, Entrada/ Sada e Terminado.
17
CONSIDERAES FINAIS
No decorrer desse trabalho foram destacadas as principais caractersticas no
tratamento de tarefas pelos sistemas operacionais.
Ao contrrio do que muitos usurios pensam, um programa de computador
no consiste apenas naquela interface amigvel, mas em uma srie de sequncias
lgicas, que permitem a comunicao em harmonia entre o software e o hardware.
Por fim, foi possvel perceber alm da complexidade envolta na execuo de
um programa, o dinamismo dos processos, que chega ao ponto tal de para o usurio
parecer que eles ocorrem simultaneamente quando na verdade apenas um
processos processado por vez pelo sistema, auxiliado pelo SO.
18
REFERNCIAS BIBLIOGRFICAS
DEITEL H. M., DEITEL P. J. e CHOFFNES D.R.. Sistemas Operacionais. So
Paulo: 2005. Pearson Prentice Hall.
MACHADO, Francis Berenger; MAIA, Luiz Paulo. Arquitetura de Sistemas
Operacionais. 4. ed. Rio de Janeiro: Ltc, 2007
MARULA, Marcelo; BENINI FILHO, Pio Armando. Informtica: Conceitos e
Aplicaes. 3. ed. [s.l.]: rica, 2005
TANENBAUM, Andrew S.. Organizao Estruturada de Computadores. 5. ed. [s.l]:
Pearson Prentice Hall, 2007.
TANEMBAUM, Andrew S.. Sistemas Operacionais Modernos. So Paulo: Pearson
Prentice Hall, 2003.