Exame SO

1276 palavras 6 páginas
Departamento de Engenharia
Informática
Faculdade de Ciências e
Tecnologia
Universidade de Coimbra

Sistemas(Operativos(
9(de(Janeiro(2013–(Exame(Normal
120 + 30 minutos

Nome (

nº (

Regras (
Qualquer tentativa de fraude conduzirá à anulação da prova para todos os intervenientes.
Consulta: 2 Páginas. Não são permitidos meios electrónicos (calculadora, telemóvel, …).
As respostas devem ser obrigatoriamente efectuadas na folha fornecida.
Nas questões de escolha múltipla, apenas uma das opções é verdadeira.
Avaliação (
Questão

Classificação

1.a
1.b
1.c
1.d

(1

Questão

Classificação

2
3.a
3.b

Questão

Classificação

4.a
4.b
5
6

Questão (

Considere o seguinte segmento de código:
#include
#include

int f(int n) { static int num_calls = 0; if (n == -1) return num_calls;
++num_calls;
return __f(n, 0);
}

#define BASE 5 int total, x = 0; char buf[1024] = {0}; int __f(int n, int num_iter) { int result = n; if (num_iter < n - 1) result += __f(n, ++num_iter); return result;
}

int main(int argv, char **argc) { int i; if (argv > 1) x = atoi(argc[1]); else x = BASE; total = f(x); sprintf(buf,"f(%d)=%d", x, total); printf("%s\n", buf); return 0;
}

a) Depois de compilado, este programa estará estruturado de acordo com o formato dos ficheiros executáveis que discutimos nas aulas. Indique para o seguinte conjunto de variáveis, em que secções do ficheiro serão colocadas (.bss, .data, .stack):
Variável

Secção do ficheiro executável total x buf result num_calls i Exame Normal de Sistemas Operativos – 9 de Janeiro de 2013

-1-

b) Responda à seguinte questão e
A função ”int f(int n)“ é reentrante?

justifique

a

sua

resposta

convenientemente:

!
!
!
!
!
!
c) Apresente o código para uma versão thread safe da função ”int f(int n)“ que permita a esta função ser executada em paralelo por diferentes threads. NOTA: Soluções com exclusão mútua ao nível da

Relacionados

  • RELACAO INTERLIFE FARMACIA MEDICO E COMERCIO
    3737 palavras | 15 páginas
  • Titulo de credito
    285 palavras | 2 páginas
  • Trabalhos
    17030 palavras | 69 páginas
  • advogado
    3586 palavras | 15 páginas
  • cancer
    1921 palavras | 8 páginas
  • Professor
    1744 palavras | 7 páginas
  • radiologia
    2797 palavras | 12 páginas
  • Caso de ana
    1311 palavras | 6 páginas
  • Psicopatia
    4092 palavras | 17 páginas
  • pcmso
    373 palavras | 2 páginas