Programação de Sistemas
|
|
|
- Orlando Belo da Silva
- 10 Há anos
- Visualizações:
Transcrição
1 Programação de Sistemas Acesso a ficheiros panorama global Programação de Sistemas Acesso a ficheiros : 1/27 Introdução (1) [Definição]: No Linux, um ficheiro é uma sequência de Bytes. Os ficheiros são catalogados no Linux em 3 tipos: Regulares (-) Directórios (d), com estrutura interna de dados em árvore Directórios (d), com estrutura interna de dados em árvore Especiais, sequências residentes fora de unidades de massa Dispositivos de caracteres (c) ou de bloco (b) Ligações (l) Tubos (p) Socket (s) A todos os ficheiros são disponibilizados o mesmo conjunto de funções (open, read,...) embora algumas possam gerar erro: ex, ler da impressora. Programação de Sistemas Acesso a ficheiros: 2/27
2 Introdução (2) Os ficheiros são acedidos, de forma distinta, em diversos níveis de abstracção. Aplicação: chamadas de extensões definidas na biblioteca normalizada de linguagem de alto nível (ex: biblioteca glibc, da linguagem C), independente do sistema operativo. Nível de processo: chamadas de sistema operativo. Para dispositivos: Gestores de periférico. Controlador de periférico. inb outb printk Aplicação C Standard I/O Unix I/O (acedidas por system calls) Gestor periférico Controlador periférico fopen fdopen fread fwrite fscanf fprintf sscanf sprintf fgets fputs fflush fseek fclose open read write lseek stat close open read write ioctl close Programação de Sistemas Acesso a ficheiros: 3/27 Introdução (3) A biblioteca C é usada em sistemas operativos distintos (Lunix, MSDOS,...) O Unix I/O pode ser acedido por qualquer linguagem de programação oferecida pelo Unic (C, f77,...) O Linux oferece uma terceira forma de acesso a ficheiros, mmap que mapeia dispositivos (incluindo ficheiros) à memória virtual. O mmap é abordado numa secção especial do capítulo de gestão de memória central. Programação de Sistemas Acesso a ficheiros: 4/27
3 Biblioteca normalizada do C (1) Biblioteca normalizada do C99 (versão normalizada do C definida pelo ANSI em 2000), dividida em 24 partes (15 pelo C89). Funções e constantes definidas no Linux em /usr/include/stdio.h Disponibilizada no Linux pelo arquivo libc.a Os ficheiros são manipulados com base em ponteiros para FILE. typedef struct { char* _ptr; int _cnt; char* _base; int _flag; int _file; int _charbuf; int _bufsiz; char* _tmpfname; } FILE; Programação de Sistemas Acesso a ficheiros: 5/27 Biblioteca normalizada do C (2) A. Funções de acesso FILE * fopen(char *, char *); Abre um ficheiro, em que 1º parâmetro - localização do ficheiro (a partir do directório corrente) 2º parâmetro - modos de acesso. Modo Acesso Posição inicial Se existir fich? Se não existir fich? r Apenas leitura Início Retorna NULL r+ Leitura e escrita Início Retorna NULL w Apenas escrita Início Conteúdo rescrito Ficheiro criado w+ Leitura e escrita Início Conteúdo rescrito Ficheiro criado a Acrescento Fim Ficheiro criado a+ Acrescento e leitura Fim Ficheiro criado Programação de Sistemas Acesso a ficheiros: 6/27
4 Biblioteca normalizada do C (3) Linux os processos de utilizador são lançados com 3 ficheiros abertos stdin: standard input (usualmente associado ao teclado) stdout: standard output (usualmente associado ao terminal) stderr: standard error (usualmente associado ao terminal) As operações de escrita/leitura do ficheiro dependem da memória tampão ( buffer ) usado Line-buffered, ou text-stream, formado por linhas até 256 caracteres-cada uma terminada obrigatoriamente por \n. Fully-buffered e Unbuffered. int fclose(file *); Fecha ficheiro, descarregando ( flush ) dados que ainda estejam em memória tampão ( buffer ) em que 1º parâmetro - referência do ficheiro a fechar. Retorno 0 em caso de sucesso, EOF em caso de erro. Programação de Sistemas Acesso a ficheiros: 7/27 Biblioteca normalizada do C (4) B. Funções de leitura Ficheiros de texto: int fscanf(file *, char *,...); 1º parâmetro - referência do ficheiro a ler. 2º parâmetro - formatação da entrada Parâmetros seguintes - localização dos dados a ler. Nota: scanf(char *format,...) é equivalente a fscanf(stdin, char *format,...) Opções de formatação Opção %d Inteiro com sinal Formato %f Vírgula flutuante com sinal %x Hexadecimal sem sinal %b Binário sem sinal %c Caractere %s Cadeia de caracteres Programação de Sistemas Acesso a ficheiros: 8/27
5 Biblioteca normalizada do C (5) int fgetc(file *); Retorno caractere lido, convertido para (int). Nota1: tentativa de ler para além do fim do ficheiro retorna EOF Nota2: getc() equivalente a fgetc() Nota3: int getchar() equivalente a int getc(stdin) char *fgetcs(char *, int, FILE *); Lê sequência de caracteres até ao número indicado no 2º parâmetro, terminando antes se for detectado EOF. Nota: gets() corresponde a fgets() de STDIN, mas lê até EOF ou \n sem se preocupar com a dimensão da memória tampão. Logo, evitar usar gets. int ungetc(int, FILE *); Reenvia caractere para o ficheiro. Programação de Sistemas Acesso a ficheiros: 9/27 Biblioteca normalizada do C (6) Ficheiros binários size_t fread(void *, size_t, size_t, FILE *); Lê de um ficheiro, em que 1º parâmetro - localização da zona de memória 2º parâmetro - dimensão dos elementos a ler. 3º parâmetro - número de elementos a ler. 4º parâmetro - referência do ficheiro a ler. Retorno número de elementos lidos. Programação de Sistemas Acesso a ficheiros: 10/27
6 Biblioteca normalizada do C (7) C. Funções de escrita Ficheiros de texto: int fprintf(file *, char *,...); Nota: printf(char *format,...) é equivalente a fprintf(stdout, char *format,...) int fputc(int, FILE *); int fputs(char *, FILE *); Ficheiros binários: size_t fwrite(void *, size_t, size_t, FILE *); Programação de Sistemas Acesso a ficheiros: 11/27 Biblioteca normalizada do C (8) D. Gestão da memória tampão Memória tampão, gerida automaticamente pelas funções da biblioteca normalizada existe na área do utilizador e possui dimensão de 1 bloco de disco. memória tampão é criada na função fopen() A escrita para (leitura do) dispositivo realmente feita apenas quando a memória tampão está cheia (vazia). Nos ficheiros de texto, escrita e leitura realmente feitas quando for detectado o \n. Definição de buffer de utilizador void setbuf(file *, char *); Descarga de dados em buffer de utilizador: int fflush(file *); Programação de Sistemas Acesso a ficheiros: 12/27
7 Biblioteca normalizada do C (9) E. Reposicionamento Em FILE é mantida a posição do ficheiro, de tipo long int Na abertura, FILE é posicionado no início (fim) nos modos r e w (modo a ). Recolha da posição corrente (no início do ficheiro, o valor é 0) long int ftell(file *); Reposicionamento no início do ficheiro void rewind(file *); Programação de Sistemas Acesso a ficheiros: 13/27 Biblioteca normalizada do C (10) Reposicionamento aleatório int fseek(file *, long int, int); Desloca posição corrente para localização de partida+nbytes (garantido apenas em ficheiros binários). 3º parâmetro - localização de partida: SEEK_SET (0) = início de ficheiro SEEK_CUR (1) = posição corrente SEEK_END (2) = fim do ficheiro Se 2º parâmetro for positivo (negativo), deslocamento é dirigido para o fim (início) do ficheiro. Nota: garantido apenas em ficheiros regulares Programação de Sistemas Acesso a ficheiros: 14/27
8 Biblioteca normalizada do C (11) F. Ficheiros temporários O ficheiro temporário possui as seguintes características Identificador único, desconhecido do utilizador. Ficheiro de tipo binário acessio escrita, wb+ Automaticamente eliminado no fclose(). Usado tipicamente para armazém temporário de dados de grande dimensão Criação de ficheiro tenporário FILE *tmpfile(void); Programação de Sistemas Acesso a ficheiros: 15/27 POSIX (1) Ficheiros são geridos no POSIX por 2 estruturas de dados Descritor de ficheiro : inteiro positivo, único em cada processo, que referencia entrada na tabela de descritores. No Unix, os descritores de ficheiros podem referir Directórios Dispositivos de bloco (disco, disquete,...) ou de caracter (terminais), Sockets, pipes ou FIFOS. Descritor de ficheiro aberto : existente no espaço do núcleo Liga os descritores de ficheiro (privados aos processos) ao bloco de controlo do sistema de ficheiros. Mantém a posição corrente de leitura/escrita. No UFS, o bloco de controlo designado i-node contém informação administrativa (dono, datas, permissões de acesso,...) localização dos dados. Programação de Sistemas Acesso a ficheiros: 16/27
9 POSIX (2) Programação de Sistemas Acesso a ficheiros: 17/27 POSIX (3) A. Operações na tabela de descritores de ficheiros POSIX define diversos criadores de descritores de ficheiros, conforme o tipo de ficheiro. Número máximo de descritor de ficheiros abertos indicados pelo comando Shell ulimit n. No lançamento de processo, o Shell cria descritores de ficheiros nos 3 primeiros índices: Processo Índice Nome Fich. por omissão 0 stdin (standard input) Teclado 1 stdout (standard output) Monitor 2 stderr (standard error) Monitor A função scanf lê dados sempre do descritor 0. A função printf escreve dados sempre no descritor 1. Programação de Sistemas Acesso a ficheiros: 18/27
10 POSIX (4) APUE 3.3 Abertura de dispositivo de caracteres ou de bloco int open(char *, int [, mode_t]); Retorno - índice na tabela de descritores de ficheiros. 1º parâmetro - localização do ficheiro 2º parâmetro - modos de acesso. Bits juntos por disjunção (ex: o_rdwr O_CREAT) Modo O_RDONLY O_WRONLY O_RDWR O_APPEND O_CREAT Acesso Leitura apenas Escrita apenas Leitura e escrita Acrescenta Cria ficheiro, se não existir Nota: creat(char* [, int] [, mode_t]) equivale a open(, O_CREAT O_WRONLY O_TRUNC, ) Programação de Sistemas Acesso a ficheiros: 19/27 POSIX (5) 3º parâmetro (opcional) permissões de acesso. Elemento Bandeira Valor Acesso Dono ( owner ) S_IRWXU 0700 Leitura,escrita e execução S_IRUSR 0400 Leitura apenas S_IWUSR 0200 Escrita apenas S_IXUSR 0100 Execução apenas Nota1: Para Grupo ( group ), substituir U por G e USR por GRP. Para Outros ( other ), substituir U por O e USR por OTH. Nota2: processos com terminal associado abrem automaticamente 3 descritores de ficheiros: STDIN_FILENO (0), associado ao teclado STDOUT_FILENO (1), associado ao monitor STDERR_FILENO (2), associado ao monitor Programação de Sistemas Acesso a ficheiros: 20/27
11 POSIX (6) Abertura de um socket int socket(int, int, int); 1º parâmetro domínio de comunicação 2º parâmetro tipo 3º parâmetro protocolo de comunicação Abertura de um tubo int pipe(int [2]); 1º parâmetro localização onde são armazenados 2 descritores de ficheiro (leituraíndice 0, e escrita-índice 1 no tubo) Cópia de descritor de ficheiro int dup(int); Parâmetro índice de descritor a copiar Retorna índice do novo descritor (o primeiro vazio) Programação de Sistemas Acesso a ficheiros: 21/27 POSIX (7) B. Fecho de descritor de ficheiro int close(int); C. Funções de leitura/escrita ssize_t read(int, void *, size_t); Retorno número de Bytes efectivamente lidos. 2º parâmetro localização do local de instalação dos dados 3º parâmetro dimensão do local de instalação dos dados ssize_t write(int, const void *, size_t); Retorno número de Bytes efectivamente escritos. Programação de Sistemas Acesso a ficheiros: 22/27
12 POSIX (7) D. Funções de reposicionamento off_t lseek(int, off_t, int); 2º parâmetro local de partida (valores iguais ao 3º parâmetro de fseek) 3º parâmetro deslocamento E. Manipulação do descritor de ficheiro int fcntl(int, int, struck flock*); 2º parâmetro comando de manipulação: POSIX apenas define F_DUPFD : duplica descritor de ficheiro F_GETFD/ F_SETFD : recolhe/altera bandeiras ( flags ) do descritor F_GETFL/ F_SETFL : recolhe/altera bandeiras ( flags ) do ficheiro F_GETLK/ F_SETLK/ F_SETLKW : determina dono/testa/tranca fechadura em zona de ficheiro Programação de Sistemas Acesso a ficheiros: 23/27 Atributos de ficheiros (1) Os atributos de ficheiros podem ser recolhidos num programa pela função stat, disponilibizada na biblioteca C e no Unix I/O. #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> int stat(char *, struct stat *); int fstat(int, struct stat *); Os atributos são amazenados na estrutura stat Programação de Sistemas Acesso a ficheiros: 24/27
13 Atributos de ficheiros (2) struct stat { mode_t st_mode; /* file type & mode & permissions */ ino_t st_ino; /* file inode number */ dev_t st_dev, /* device number (file system) */ st_rdev; /* device number for special files */ nlink_t st_nlinks; /* number of links */ uid_t st_uid; /* owner user ID */ gid_t st_gid; /* owner group ID */ off_t st_size; /* size in bytes, for regular files */ time_t st_atime, /* time of the last access */ st_mtime, /* time of the last modification */ st_ctime; /* time of the last status change */ long st_blksize, /* best I/O block size */ st_blocks; /* number of 512 byte blocks */ }; Programação de Sistemas Acesso a ficheiros: 25/27 Atributos de ficheiros (3) Campo st_mode é um bitset do tipo de ficheiro e de permissões de acesso. Bit 31 Bit 0 RWX RWX RWX type user group others Máscaras de permissões de acesso listadas no open() Máscaras de tipo de ficheiro (S_IFMT= ) Bandeira Valor Tipo ficheiro S_IFREG Regular S_IFSOCK Socket S_IFLNK Ligação simbólica S_IFDIR Directório S_IFIFO Tubo ou FIFO Programação de Sistemas Acesso a ficheiros: 26/27
14 Atributos de ficheiros (4) Exemplo: programa que testa se um ficheiro é um directório struct stat sbuf; int file = open( ); if( stat( file, &sbuf ) == 0 ) if( (sbuf.st_mode & S_IFMT) == S_IFDIR ) printf( Directorio!\n ); Macros são disponibilizadas em <linux/stat.h> if( stat( file, &sbuf ) == 0 ) if( S_ISDIR(sbuf.st_mode) ) printf( Directorio!\n ); Programação de Sistemas Acesso a ficheiros: 27/27
Programação de Computadores I. Linguagem C Arquivos
Linguagem C Arquivos Prof. Edwar Saliba Júnior Novembro de 2011 Unidade 12 Arquivos 1 Trabalhando com Arquivos Um arquivo em Linguagem C pode representar diversas coisas, como: arquivos em disco, uma impressora,
Estruturas de Dados. Profa. Juliana Pinheiro Campos
Estruturas de Dados Profa. Juliana Pinheiro Campos Arquivos ESTRUTURAS DE DADOS Técnicas para que possamos salvar e recuperar informações em arquivos de maneira estruturada. Assim será possível implementar
Manipulação de Arquivos
Manipulação de Arquivos Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Tipo
Introdução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza
Introdução Manipulação de arquivos em C Estrutura de Dados II Prof Jairo Francisco de Souza Manipulação de Arquivo em C Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo
Sistema de Entrada/Saída
Conteúdo Ficheiros ([email protected]) Grupo de Sistemas Distribuídos Departamento de Informática Escola de Engenharia Universidade do Minho Sistemas Operativos 2006-2007 2 Descritores de ficheiros Descritores
Programação de Sistemas
Programação de Sistemas FIFOs Programação de Sistemas FIFOs : 1/13 Introdução APUE 15.5 Os tubos só podem ser usados por processos que tenham um antecessor comum. Para resolver a limitação dos tubos, o
Comunicação. O Modelo de Fluxo de Dados (Streams)
Comunicação O Modelo de Fluxo de Dados (Streams) Os programas escritos em C utilizam o conceito de fluxo de dados (em, inglês, eles são chamados de streams) para comunicarem-se com dispositivos do computador
Algoritmos e Estruturas de Dados I 01/2013. Arquivos. Pedro O.S. Vaz de Melo
Algoritmos e Estruturas de Dados I 01/2013 Arquivos Pedro O.S. Vaz de Melo Problema 1 Considere que um arquivo de dados contém os valores das dimensões (tam. max.: 100) e dos elementos de duas matrizes
Computação 2. Aula 8. Profª. Fabiany Arquivos
Computação 2 Aula 8 Arquivos Profª. Fabiany [email protected] E/S com Arquivos A linguagem C não possui nenhum comando de E/S. Todas as operações de E/S ocorrem mediante chamadas a funções de biblioteca
Comunicação entre Processos Canal de comunicação Arquitetura da comunicação Modelos de comunicação
Comunicação entre Processos Canal de comunicação Arquitetura da comunicação Modelos de comunicação Sistemas Operativos 2015-2016 O que construímos até agora... A abstração de processo 2 A possibilidade
Programação de Sistemas
Programação de Sistemas Sistemas de ficheiros ext e iso9660 Programação de Sistemas Sistema de ficheiros : 1/21 Sistema de ficheiros ext (1) As estruturas de dados usadas nas partições do Unix muito diversificadas
Sistemas Operacionais II
Sistemas Operacionais II Aula 1 Autor: Renê de Souza Pinto Orientação: Prof. Dr. Francisco José Monaco [email protected], [email protected] Universidade de São Paulo Instituto de Ciências Matemáticas
Algoritmos e Estruturas de Dados I. Arquivos. Pedro O.S. Vaz de Melo
Algoritmos e Estruturas de Dados I Arquivos Pedro O.S. Vaz de Melo Problema 1 Considere que um arquivo de dados contém os valores das dimensões (tam. max.: 100) e dos elementos de duas matrizes de números
Métodos Computacionais. Arquivos
Métodos Computacionais Arquivos Arquivos Um arquivo representa um elemento de informação armazenado em memória secundária (disco) Características: Informações são persistidas Atribui-se nomes aos elementos
PIP/CA - Programa Interdisciplinar de Pós-Graduação em Computação Aplicada da UNISINOS ALGORITMOS & ESTRUTURAS DE DADOS
PIP/CA - Programa Interdisciplinar de Pós-Graduação em Computação Aplicada da UNISINOS Disciplina de Nivelamento - 2000/1: ALGORITMOS & ESTRUTURAS DE DADOS Professor Responsável: Prof. Fernando Santos
Sistema de Arquivos no Unix
Sistema de Arquivos no Unix Introdução (1) Estruturados na forma de uma árvore única, iniciando pelo diretório "/", que é chamado de "raiz". Há suporte para arquivos, diretórios e links (atalhos). Os arquivos
I/O de baixo-nível em ficheiros
7 I/O de baixo-nível em ficheiros Sumário: Introdução Funções de entrada/saída de baixo-nível Referência bibliográfica: W. Stevens. Advanced Programming in the UNIX Environment. Addison-Wesley, 1992 (cap.3,
Aula 16: Manipulação de Arquivos em C
Aula 16: Manipulação de Arquivos em C Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Manipulação de Arquivos Programação de Computadores IV 1 / 33
14. Arquivos. W. Celes e J. L. Rangel. Estruturas de Dados PUC-Rio 13-1
14. Arquivos W. Celes e J. L. Rangel Neste capítulo, apresentaremos alguns conceitos básicos sobre arquivos, e alguns detalhes da forma de tratamento de arquivos em disco na linguagem C. A finalidade desta
MC-102 Algoritmos e Programação de Computadores
MC-102 Algoritmos e Programação de Computadores Prof. Ariel Vargas Unicamp Arquivos Binários Arquivos Arquivos Texto Podem ser manipulados por um editor de texto comum Os dados são gravados como caracteres
Existe uma quantidade de informação que pode ser armazenada para resolver o problema.
Arquivos Introdução As estruturas vistas anteriormente armazenam as informações na memória principal do computador. Nem sempre é conveniente. Problemas: A informação é perdida; As estruturas de dados são
Arquivos. Estruturas de Dados II Vanessa Braganholo
Arquivos Estruturas de Dados II Vanessa Braganholo Entidades } Aplicações precisam armazenar dados sobre as mais diversas entidades, que podem ser concretas ou abstratas } Funcionário de uma empresa (concreto)
Computação Eletrônica. Aula 12 Arquivos Texto e Binário. Prof: Luciano Barbosa. CIn.ufpe.br
Computação Eletrônica Aula 12 Arquivos Texto e Binário Prof: Luciano Barbosa Relembrando a Arquitetura Básica de um Computador Até agora, toda a informação armazenada por nossos programas estava na memória
Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção
Sistemas de Arquivos Funções de um SO Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção 2 Sistemas Operacionais Necessidade de Armazenamento Grandes quantidades
Arquivos. 1 Primeiras palavras. Jander Moreira
Arquivos Jander Moreira 1 Primeiras palavras Uma das primeiras coisas são ensinadas a respeito de computadores são seus elementos constituintes: processador, memória, unidades de entrada e saída. E também
Sistemas Operacionais
Sistemas Operacionais Gerência de Arquivos Edson Moreno [email protected] http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de
Capítulo 6. Gerenciamento de Arquivos. 6.1 Arquivos 6.2 Diretórios 6.3 Implementação (6.3.1 a 6.3.6) 6.4 Exemplos
Capítulo 6 Gerenciamento de Arquivos 6.1 Arquivos 6.2 Diretórios 6.3 Implementação (6.3.1 a 6.3.6) 6.4 Exemplos 1 Armazenamento de longo prazo 1. Deve guardar grandes volumes de dados. 2. Informação armazenada
Sumário. Ficheiros. Ficheiros
Sumário Ficheiros Motivação Operações Ficheiros de texto e binários Manipulação de ficheiros de texto Abertura Encerramento Descritores de ficheiros: stdin, stdout, stderr Escrita Leitura Outras funções
Comunicação Inter-Processo em Unix. Pipes FIFO (Named Pipes) Pipes
Comunicação Inter-Processo em Unix Pipes FIFO (Named Pipes) 1 Pipes 2 1! Comunicação entre pai e filho Ao chamar um fork(), processos pai e filho deixam de compartilhar memória Como fazer então para que
CAP. IX - MANIPULAÇÃO DE ARQUIVOS Generalidades sobre Arquivos. 9.2 Abertura e Fechamento de Arquivos. Operações com arquivos:
CAP. IX - MANIPULAÇÃO DE ARQUIVOS 9.1 Generalidades sobre arquivos 9.2 Abertura e fechamento de arquivos 9.3 Arquivos textos e arquivos binários 9.4 Leitura e escrita em arquivos binários 9.5 Procura direta
Algoritmos e Programação _ Departamento de Informática
16 ARQUIVOS Um arquivo corresponde a um conjunto de informações (exemplo: uma estrutura de dados-registro), que pode ser armazenado em um dispositivo de memória permanente, exemplo disco rígido. As operações
Unix: Sistema de Arquivos. Geraldo Braz Junior
Unix: Sistema de Arquivos Geraldo Braz Junior 2 Arquivos Um arquivo é visto pelo SO apenas como uma seqüência de bytes: nenhuma distinção é feita entre arquivos ASCII, binários, etc.; Muitos programas
6. Comunicação entre processos - Pipes
6. Comunicação entre s - Pipes 6.1 O que são pipes Os pipes em UNIX constituem um canal de comunicação unidirecional entre s com um ascendente comum (entre um pai e um seu descendente). Uma vez estabelecido
Comunicação entre Processos
Comunicação entre Processos Pipes Redirecionamento de entrada e saída 4/19/18 1 O Pipe: Características (1) Canal de comunicação entre processos parentes, usando a politica First-In-First-Out (FIFO) Tipicamente,
Primeiro Curso de Programação em C 3 a Edição
Edson Luiz França Senne Primeiro Curso de Programação em C 3 a Edição Visual Books Sumário Prefácio da Terceira Edição 9 Prefácio da Primeira Edição 11 Aula 1 13 Regras de sintaxe de uma linguagem de programação...
IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira
IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários
Tubos ou Pipes de Comunicação
1 Tubos ou Pipes de Comunicação 1. Introdução Os tubos (ou pipes) constituem um mecanismo fundamental de comunicação unidirecional entre processos. Eles são um mecanismo de I/O com duas extremidades, ou
V JOLIM. C e Linux Dicas e Truques. Márcio Fuckner [email protected]
V JOLIM C e Linux Dicas e Truques Márcio Fuckner [email protected] Agenda Introdução Entrada e Saída C em Redes Multithreading Utilidades Introdução Apresentação Márcio Fuckner Bacharel em Sistemas
Estrutura de um programa em linguagem C
Estrutura de um programa em linguagem C Estrutura de um programa em linguagem C Exemplo de um programa em linguagem C Directivas de Pré-Processamento #include Declarações Globais Declarações
Comunicação entre pai e filho
Comunicação entre pai e filho Ao chamar um fork(), processos pai e filho deixam de compartilhar memória Como fazer então para que o resultado de um processo possa ser recebido pelo outro? Exemplos: Processo
Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria
USP - ICMC - SSC SSC 0501-1o. Semestre 2015 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] icmc. usp. br, gmail. com Página Pessoal: http://www.icmc.usp.br/~fosorio/
1 Funções básicas de implementação de arquivos
1 Funções básicas de implementação de arquivos 1.1 Definindo registros Depois de um objeto do mundo real ter sido modelado, ou seja, após seus atributos importantes (e relevantes) terem sido identificados,
Fundamentos de Arquivos. SCC203 Algoritmos e Estruturas de Dados II
Fundamentos de Arquivos SCC203 Algoritmos e Estruturas de Dados II Arquivos Informação mantida em memória secundária HD Disquetes Fitas magnéticas CD DVD 2 Discos X Memória Principal Tempo de acesso HD:
Manual do Desenvolvedor Criptografia de Arquivos do WebTA
Manual do Desenvolvedor Criptografia de Arquivos do WebTA Versão 1.4 Índice 1. Objetivo..3 2. Processo..3 3. API de Criptografia - Biblioteca Java..4 3.1 WEBTACryptoUtil..4 3.1.1 decodekeyfile..4 3.1.2
UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Sistema de arquivos. Prof. Valeria M. Bastos Prof. Antonio Carlos Gay Thomé 13/06/2012 1
UFRJ IM - DCC Sistemas Operacionais I Unidade IV Sistema de arquivos Prof. Valeria M. Bastos Prof. Antonio Carlos Gay Thomé 13/06/2012 1 ORGANIZAÇÃO DA UNIDADE Sistema de Arquivos Gerenciamento de E/S
Sistemas de Ficheiros. Ficheiros Diretórios Implementação de sistemas de ficheiros Exemplos de sistemas de ficheiros
Sistemas de Ficheiros Ficheiros Diretórios Implementação de sistemas de ficheiros Exemplos de sistemas de ficheiros 1 Armazenamento de Informação de Longo Prazo 1. Deve armazenar grandes massas de dados
Persistência de Dados
Persistência de s Universidade do Estado de Santa Catarina - Udesc Centro de Ciências Tecnológicas - CCT Departamento de Ciência da Computação Tecnologia de Sistemas de Informação Estrutura de s II - DAD
LEIC/LERC 2012/13 2º Teste de Sistemas Operativos 15/Janeiro/2013
Número: Nome: LEIC/LERC 2012/13 2º Teste de Sistemas Operativos 15/Janeiro/2013 Identifique todas as folhas. Responda no enunciado, apenas no espaço fornecido. Justifique todas as respostas. Duração: 1h30m
implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Fernando Ramos, Nuno Neves, Sistemas Operativos, 2014 2015
Sistemas de ficheiros: implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Objetivos da aula Descrever algunsdetalhes daimplementação deumsistema de ficheiros Discutir algoritmos
Referencial do Módulo B
1 Referencial do Módulo B Liga, desliga e reinicia correctamente o computador e periféricos, designadamente um scanner; Usa o rato: aponta, clica, duplo-clique, selecciona e arrasta; Reconhece os ícones
Sistemas Operativos: Introdução. March 14, 2011
Sistemas Operativos: Introdução March 14, 2011 Sumário Chamadas ao Sistema Aula TP 2 Organização dum SO Arranque dum Sistema Operativo Sumário Chamadas ao Sistema Aula TP 2 Organização dum SO Arranque
Programação. MEAer e LEE. Manipulação de ficheiros de texto. Bertinho Andrade da Costa. Instituto Superior Técnico. 2010/2011 1º Semestre
Programação MEAer e LEE Bertinho Andrade da Costa 2010/2011 1º Semestre Instituto Superior Técnico Manipulação de ficheiros de texto Programação 2010/2011 IST-DEEC Manipulação de Ficheiros 1 Sumário Ficheiros
Sistemas Operacionais 3º bimestre. Dierone C.Foltran Jr. [email protected]
Sistemas Operacionais 3º bimestre Dierone C.Foltran Jr. [email protected] Sistema de Arquivos (1) Todas as aplicações precisam armazenar e recuperar informações. Considerações sobre os processos: Espaço
Projeto: Camada Independente de Dispositivo
Projeto: Camada Independente de Dispositivo Introdução Esse documento tem como finalidade demonstrar como será implementada a Camada Independente de Software. Estrutura A camada independente de software
Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger
Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger O controle da entrada e saída (E/S ou I/O, input/output) de dados dos dispositivos é uma das funções principais de um sistema operacional.
Capítulo 6 Sistemas de Arquivos
Capítulo 6 Sistemas de Arquivos 6.1 Arquivos 6.2 Diretórios 6.3 Implementação do sistema de arquivos 6.4 Exemplos de sistemas de arquivos 1 Armazenamento da Informação a Longo Prazo 1. Deve ser possível
8. Tratamento de Arquivos
8. Tratamento de Arquivos Algumas vezes, uma aplicação precisa ler ou gravar dados em arquivos. Por exemplo: um contador de página da web deve ter acesso a um arquivo onde esteja armazenado o número de
Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos
Sistema de Arquivos Prof. Edwar Saliba Júnior Março de 2007 1 Objetivos Facilitar o acesso dos usuários ao conteúdo dos arquivos; Prover uma forma uniforme de manipulação de arquivos, independente dos
Estruturas de Dados. Módulo 15 - Arquivos. 2/6/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 15 - Arquivos 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Sistemas de Arquivos. Sistemas Operacionais - Professor Machado
Sistemas de Arquivos Sistemas Operacionais - Professor Machado 1 Armazenamento da Informação a Longo Prazo 1. Deve ser possível armazenar uma quantidade muito grande de informação 2. A informação deve
Sistemas Operacionais: Sistema de Arquivos
Sistemas Operacionais: Sistema de Arquivos Sistema de Arquivos Arquivos Espaço contíguo de armazenamento Armazenado em dispositivo secundário Estrutura Nenhuma: seqüência de bytes Registros, documentos,
Linguagem C Ficheiros Compilação Separada
Linguagem C Ficheiros Compilação Separada typedef definição de tipos Apontadores para estruturas Ficheiros na bibiloteca standard do C Compilação Separada Definição de novos tipos em C É possível definir
Manipulação de Arquivos Sistema de Arquivos UNIX. Taisy Silva Weber UFRGS
Manipulação de Arquivos Sistema de Arquivos UNIX Taisy Silva Weber UFRGS Trabalhando com arquivos conceitos básicos sobre FS revisão sistema de arquivos UNIX diretórios, arquivos e dispositivos ( syscalls
