Anúncios

Classificação do Exercício 1 do Projecto

29 outubro 2020, 23:01 Renato Jorge Caleira Nunes

As notas do Ex1 do Projecto estão disponíveis na secção "Pautas".


Projeto: substituir strtok por strtok_r

26 outubro 2020, 11:59 João Pedro Faria Mendonça Barreto

No código base que foi fornecido para o 1º exercício, é usada a função strtok, na função lookup() (em fs/operations.c).

A função strtok *não é segura* de se usar com múltiplas tarefas (i.e., não é thread-safe). Ou seja, a partir do momento em que o código base fornecido é paralelizado, a função strtok deve ser substituída pela sua alternativa thread-safestrtok_r.Esta correção torna-se especialmente importante no 2º exercício, já que neste exercício a concorrência entre tarefas aumenta substancialmente — e com ela a probabilidade do strtok manifestar o seu problema quando usado concorrentemente.


Para fazerem esta correção, basta executar os passos seguintes: 

1. Declarar "char *saveptr" como variável local na função em que strtok é chamada.
2. Substituir as linhas em que a função strtok é originalmente usada (linhas 257 e 262 do ficheiro fs/operations.c no código base): 

char *path = strtok(full_path, delim); 
[...] 
path = strtok(NULL, delim); 
Por estas linhas: 

char *path = strtok_r(full_path, delim, &saveptr); 
[...] 
path = strtok_r(NULL, delim, &saveptr); 


Para mais informações, recomenda-se a consulta das man pages associadas.
Nota: os grupos que não tenham efetuado esta modificação no 1º exercício não tiveram a sua avaliação penalizada por esse lapso.


Publicados dois novos guiões laboratoriais de apoio ao projeto

24 outubro 2020, 22:10 João Pedro Faria Mendonça Barreto

Os guiões laboratoriais para as duas próximas semanas de aulas laboratoriais encontram-se disponíveis na secção "Laboratórios".

Ambos os guiões estão pensados para dar um apoio introdutório à matéria que será exercitada nos requisitos 2 e 4 do projeto (respetivamente).Recomendamos que os alunos realizem estes guiões antes de abordarem cada um desses requisitos no projeto.


Novidades na secção "Teóricas"

21 outubro 2020, 14:31 João Pedro Faria Mendonça Barreto

A secção "Teóricas" deste site foi completada com:

- Testes e exames teóricos (incluindo resoluções) de anos anteriores
- Listagem de todas as secções do livro principal cobertas pelas aulas lecionadas até ao momento

Além destes elementos, relembro que é nesta secção que disponibilizamos os materiais (slides, exemplos de código, etc.) usados nas aulas teóricas.


Video com últimos minutos da aula teórica LEIC-T de 20/outubro

21 outubro 2020, 12:27 João Pedro Faria Mendonça Barreto

Devido a uma falha técnica, a aula teórica de terça, 20/outubro, à LEIC-T terminou alguns minutos antes do previsto.

Para compensar, acabei de disponibilizar na secção "Teóricas" um vídeo curto (10min) com a discussão que ficou por fazer nessa parte final da aula.

O assunto deste vídeo curto é a aplicação de uma estratégia de trincos finos no 2º exercício do projeto, logo encorajo todos os alunos a verem o vídeo assim que puderem.

Até quinta,
João Barreto