Sistemas Informáticos

Folha de perguntas n. 2

19 de Abril de 1995

Nome do aluno: login:

NOTA: nas perguntas de resposta múltipla apenas serão consideradas respostas com apenas uma marca, por exemplo x.

1) Considere que submete à Shell o comando e obtém o resultado apresentado:

$ ls -l somefile?

-rw-rw-rw- 1 jlopes users 70862 Apr 18 15:32 somefile1

lrwxrwxrwx 1 jlopes users 4 Apr 18 17:05 somefile2 -> file

O ficheiro "somefile2" é:

__ um ficheiro regular __ um "hard link"

__ um link __ nenhum deles

2) Considere o fragmento do programa em C:

fd= open("somefile", O_RDWR | O_APPEND);

rc= lseek(fd, -10, SEEK_END);

rc= write(fd, buf, 10);

Se correr o programa, dez caracters de buf são escritos em "somefile"

__ no início __ por cima dos últimos 10

__ no fim __ nenhum deles

3) Qual é a chamada ao Kernel que permite saber o tamanho do ficheiro "somefile":

__ stat("somefile", &sbuf) __ fstat(fd, &sbuf)

__ lstat("somefile", &sbuf) __ todos eles

4) Como pode ler o conteúdo de um directório:

5) Identifique, por ordem, as chamada ao Kernel que deve fazer por forma a retirar o eco do standard input (c_lflag ECHO):

6) Considere o fragmento do programa em C apresentado:

while ((c= getchar())!= EOF )

putchar(c);

Se correr o programa com a.out </etc/passwd

__ copia o ficheiro /etc/passwd para stdout

__ copia o ficheiro /etc/passwd para /etc/passwd.out

__ copia stdin para o ficheiro /etc/passwd.out

__ nenhum deles

7) Qual das seguintes funções da "standard library" devolve a posição corrente num ficheiro "file23" a que corresponde o file pointer fp:

__ ftell(fp) __ fopen("file23")

__ fseek(fp) __ nenhum deles

jlopes, Abril de 95