Sistemas operacionais
Professor Especialista: Sílvio José Trindade Alvim
Polo: Mimoso do Sul
Tutor a Distância: Wemersom Carvalho dos Santos
Aluno: Maurício Brandão Gonçalves
Tarefa 4 – Edição e Compilação de Programas no GNU/Linux
1 – Que tipo de exceção de segurança é gerada pelo programa abaixo? Explique com suas palavras.
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char **argv)
{
int i; float vetor[10]; for (i=0; i<1000; i++)
{
vetor[i] = (float) i; printf ("vetor[%d] = %.f\n", i, vetor[i]);
}
return 0;
}
mauricio@mauricio-laptop:~$ cd so2 mauricio@mauricio-laptop:~/so2$ gcc prog3_acessoilegal.c -o prog3_acessoilegal -Wall mauricio@mauricio-laptop:~/so2$ ./prog3_acessoilegal vetor[0] = 0 vetor[1] = 1 vetor[2] = 2 vetor[3] = 3 vetor[4] = 4 vetor[5] = 5 vetor[6] = 6 vetor[7] = 7 vetor[8] = 8 vetor[9] = 9
Falha de segmentação mauricio@mauricio-laptop:~/so2$ R: O tipo de exceção de segurança e a tentativa de acesso ilegal à memória, sendo este erro chamado de falha de segmentação, pois no programa é declarado um vetor de 10 posições e um comando for para 1000 posições, levando o programa a tentar acessar uma posição de memória fora de seu segmento, ocasionando com isso a exceção de segurança.
2 – A construção abaixo utiliza uma “|” (barra vertical) para representar o que?
./prog1 | ./prog2 | ./prog3 | ... | ./progN
R: Representa os pipes.
3 – Digite o comando ps em suas formas variadas – conforme os exemplos a seguir – e compare as saídas apresentadas (lembre-se de que para sair do comando less basta digitar q). No último exemplo, não se esqueça de trocar o nome “Sérgio”pelo seu login. Exemplos:
a. ps
b. ps a
c. ps x | less
d. ps ax | less
e. ps aux | less
f. ps aux | grep sergio
R: mauricio@mauricio-laptop:~$ ps PID TTY TIME CMD 6860 pts/0 00:00:00 bash 6877 pts/0 00:00:00 ps
Exibe informações sobre o estado corrente