Podcast
Questions and Answers
O que é o ponteiro de ficheiro?
O que é o ponteiro de ficheiro?
O ponteiro de ficheiro é a posição corrente associada ao descritor do ficheiro.
Como se chama a função utilizada para posicionar o ponteiro de ficheiro numa determinada posição?
Como se chama a função utilizada para posicionar o ponteiro de ficheiro numa determinada posição?
- read
- lseek (correct)
- fsync
- write
Fsync é uma função que força uma escrita imediata para o dispositivo físico.
Fsync é uma função que força uma escrita imediata para o dispositivo físico.
True (A)
Como se chama o parâmetro que deve ser especificado no open para abrir um ficheiro em modo de acréscimo (append)?
Como se chama o parâmetro que deve ser especificado no open para abrir um ficheiro em modo de acréscimo (append)?
Corresponda os possíveis valores da variável errno com o seu significado:
Corresponda os possíveis valores da variável errno com o seu significado:
O que são APIs de baixo nível em relação a ficheiros na linguagem C?
O que são APIs de baixo nível em relação a ficheiros na linguagem C?
Explique o conceito de sistema de chamadas no contexto do sistema operativo.
Explique o conceito de sistema de chamadas no contexto do sistema operativo.
Qual é a importância de um descritor de ficheiro no E/S de baixo nível?
Qual é a importância de um descritor de ficheiro no E/S de baixo nível?
Os ficheiros em sistemas Unix são utilizados exclusivamente para armazenar dados binários.
Os ficheiros em sistemas Unix são utilizados exclusivamente para armazenar dados binários.
O que é persistente é um ficheiro, ou seja, os dados mantêm-se mesmo com o reiniciar de sistemas e cortes de energia elétrica.
O que é persistente é um ficheiro, ou seja, os dados mantêm-se mesmo com o reiniciar de sistemas e cortes de energia elétrica.
Study Notes
Introdução à File I/O
- A linguagem C disponibiliza duas APIs para interação com ficheiros: API de baixo nível e API de alto nível.
- A API de baixo nível (Low-level API) inclui funções como open, close, read, write, entre outras.
- A API de alto nível (High-level API) inclui funções como fopen, fclose, fprintf, entre outras.
Chamadas ao sistema
- Chamadas ao sistema são a forma como o sistema operacional (SO) disponibiliza serviços às aplicações.
- Exemplos de serviços: abertura e manipulação de ficheiros, estabelecimento de ligações de rede, etc.
O que é um ficheiro?
- Um ficheiro é uma abstração para organizar e manter dados em memória persistente (discos, pen, etc.).
- O armazenamento é persistente, ou seja, os dados mantém-se mesmo com o reiniciar do sistema e cortes de energia elétrica.
- Um ficheiro é um conjunto de bits - 0 e 1.
E/S Baixo Nível
- No E/S baixo nível, o descritor de ficheiro é um inteiro.
- A função open mapeia o ficheiro indicado pelo nome para um descritor de ficheiro.
- A função creat é utilizada para criar um ficheiro.
Descritores do tipo “int”
- A API de baixo nível assenta em descritores do tipo int.
- O descritor é devolvido pelas funções open/creat.
- O descritor é o índice na tabela de descritores abertos do ficheiro agora aberto/criado.
Função read
- A função read tenta ler um máximo de len octetos do ficheiro para a zona de memória apontada por buf.
- O ponteiro de ficheiro é a posição corrente associada ao descritor do ficheiro.
- Uma operação leitura/escrita é feita em relação ao ponteiro de ficheiro.
Escrita - write
- A função write escreve um máximo de len octetos da zona de memória apontada por buf para o ficheiro.
- O ponteiro de ficheiro é atualizado após a escrita.
E/S Sincronizado
- O SO não efetua imediatamente a escrita para o dispositivo físico (e.g., disco, pen).
- Apenas quando o buffer associado ao ficheiro é que efetiva a escrita para o dispositivo.
- O buffer atua como memória tampão/amortecimento.
- A função fsync pode ser utilizada para forçar uma escrita imediata.
errno e seek
- A variável errno é uma variável inteira global ao processo.
- Certas funções ativam o errno quando ocorre um erro.
- O valor de errno indica o que correu mal.
- A função strerror pode ser utilizada para obter uma mensagem de erro.
- A função lseek pode ser utilizada para posicionar o ponteiro de ficheiro numa determinada posição.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Quiz about the low-level API for file I/O in the C programming language, covering topics such as buffers and application interaction.