Sistemas operativos

1353 palavras 6 páginas
SINAIS E PROCESSOS
O trabalho da shell é repetitivo. Basicamente, consiste em: * pedir um comando (fazendo aparecer o "pronto" ....>); * ler e interpretar o comando; * executar o comando (ou dar erro, se o comando for inválido) e repetir, fazendo reaparecer o "pronto" para pedir um novo comando.
*Fork():
Fork serve para criar um processo filho apartir do processo pai por exemplo:

int a,n; a=3; n=fork(); if(n==0){ a=a+1; printf("FILHO:%d",a); }else{ a=a+2; printf("PAI:%d",a);
}
Output:
FILHO:4
PAI:5

A notar que o int a , no inicio era 3 e quando se faz o fork, esse int e alterado de forma difrente nos dois processos no pai, e incrementado mais 2 e no filho mais 1

*Sinais: os sinais sao metedos de comunicar com processos difrentes, e existem varios tipos de sinais a enviar.

SIGKILL - Mata o processo
SIGINIT - Inicia o processo
SIGIGN - Ignora o sinal
SIGUSR1 - Sinal 1

para armar o sinal, ou seja para preparar um sinal podemos usar duas maneiras o kill ou o signal, por exemplo:

kill(SIGKILL,getpid()); mata o proprio processo, pois o kill arma o sinal SIGKILL que termina o processo do getpid(), que neste caso é o proprio porcesso

outro exemplo: void handler(int sinal){ printf("RECEBI O SINAL %d",sinal);
}
main(){ signal(SIGUSR1,handler);
}
este sinal é enviado e chama o handler que nao é mais que um printf do recebi um sinal

*Sleep, Wait sleep(5) o que faz e ficar "suspenso" durante 5 segundos, ou seja passado esses 5 segundos o programa volta a a sua execuçao normal. wait() mantem o programa suspenso ate que alguma coisa aconteça por exemplo a receçao de um sinal

FILA DE MENSAGENS
*Criaçao:
msgid = msgget(ID*,TAMANHO**,IPC_CREATE | 0600 ***);

*ID deve ser um ID unico entre 1000 e 9999
**Tamanho maximo que a msg deve ter, por exemplo por norma é usado estruturas, por exemplo numa estrutura de fila de mensagem struct typedef{ char mensagem[20] ; long tipo;}
*** Caso a msg seja criada

Relacionados

  • Sistemas Operativos
    3618 palavras | 15 páginas
  • Sistemas operativos
    471 palavras | 2 páginas
  • Sistemas operativos
    2940 palavras | 12 páginas
  • Sistemas operativos
    1466 palavras | 6 páginas
  • sistemas operativos
    630 palavras | 3 páginas
  • Sistemas operativos
    418 palavras | 2 páginas
  • Sistemas Operativos
    6363 palavras | 26 páginas
  • Sistemas operativos
    3094 palavras | 13 páginas
  • sistemas operativos
    6279 palavras | 26 páginas
  • sistemas operativos
    340 palavras | 2 páginas