Construa a função insere_lista para inserir um elemento na lista ordenada, duplamente encadeada, descrita acima.

Tamanho: px
Começar a partir da página:

Download "Construa a função insere_lista para inserir um elemento na lista ordenada, duplamente encadeada, descrita acima."

Transcrição

1 DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO Disciplina: Sistemas Operacionais Teste de verificação de pré-requisitos Considere as definições de tipos abaixo: type Aponta_Nodo = ^Nodo; NODO Nodo = record Info Suc. Anterior = Aponta_Nodo; Sucessor = integer; Info = Bloco_dados; End; Ant. e as seguintes declarações de variáveis: var Inicio_Lista; Fim_Lista, P : Aponta_Nodo; Fim_Lista Construa a função insere_lista para inserir um elemento na lista ordenada, duplamente encadeada, descrita acima. Proteção de objetos:

2 Bits de permissão agrupados - dono - grupo -público rwx rwx rwx r - read; w - write; x - execute. r w x r - x r - - ( este conjunto significaria que o dono pode ler (r), escrever (w) e executar (x), o grupo do dono pode ler e executar, o público pode apenas ler. ALGUNS COMANDOS UNIX: cd - troca de diretório. Percorrer a árvore do sistema de arquivos; ls - lista o conteúdo de um diretório; mkdir - cria um diretório; mkdir so2 /* cria o sub-diretório so2 dentro do diretório corrente */ rmdir - remove diretório; rm - remove arquivo; cp - copia arquivo(s); cp /bin/date. move/mv - move arquivo; pwd - mostra o caminho do diretório corrente; mount - monta uma unidade no sistema de arquivos; unmount - desmonta; who - relação dos usuários que estão conectados no sistema; who am I - identificação do usuário que está no terminal que executou o comando; write - escreve em um terminal; kill - envia um signal para um processo / matar um processo; kill -9 pid /* pid = process id */ exit - saída, fecha a sessão; passwd - trocar a senha (pede a senha atual e a nova senha); chmod - alterar as permissões de acesso;

3 chmod 700 meu_arquivo grep - buscar uma sequência de caracteres; df - disk free; lpr - envia para o spool; lpq - permite verificar a fila de impressão (line printer queue); lprm - line printer management; ps - (process status) lista os processos no sistema. ln - (link) cria um link para um arquivo. SISTEMAS OPERACIONAIS Aula prática em Laboratório - Objetivo: Fixar conteúdos básicos relativos ao ambiente operacional do Sistema UNIX. Utilizar comandos básicos para operação do sistema. Para a conexão remota com o sistema UNIX existente no laboratório PROTEM a partir dos laboratórios dos blocos G e Z, será necessária a instalação do software emulador de terminal, PUTTY. Este software encontra-se disponível no servidor deste mesmo laboratório. No endereço ftp://campeche.inf.furb.br/pub/windows/utilitarios/terminais-cliente-ssh/putty exe encontra-se o software para download. ftp://campeche.inf.furb.br/pub/windows/utilitarios/terminais-cliente-ssh/putty exe Crie um diretório um e faça download do arquivo. Exercícios: Utilizando o comando who verifique quais os usuários estão conectados ao sistema. Utilizando o comando pwd, verifique qual é seu diretório corrente. Dentro do seu diretório home, crie um diretório com o nome SistemasDois. Copie o arquivo syslog.conf existente no diretório /etc para o diretório SistemasDois, recém criado. Crie o diretório aula no seu diretório home. A partir do diretório aula, crie um link do arquivo syslog.conf no diretório SistemasDois para o diretório aula através do comando: link../sistemasdois/syslog.conf syslog.link Utilizando o comando ls -l, verifique quais são as permissões de acesso disponíveis para o diretório SistemasDois.

4 Ainda com o comando ls -l, verifique as permissões de acesso aos diretórios dos usuários do Laboratório PROTEM. (o diretório /lp/home possui todos os diretórios home dos usuários). Altere as permissões de acesso existentes para o diretório SistemasDois deixando permissões de leitura, escrita e execução, apenas para o dono do diretório. Execute o comando cd SistemasDois. Altere as permissões de acesso ao arquivo syslog.conf existente no diretório SistemasDois. Execute o comando "cat syslog.conf". Descreva o que foi executado. Utilizando o comando ps, verifique quantos e quais os processos (a identificação e o comando) em execução na sua sessão. SISTEMAS OPERACIONAIS * PIPE $>find * grep "furb" * EXECUÇÃO EM FOREGROUND $>cp arquivoa arquivob <enter> * EXECUÇÃO EM BACKGROUND $> cp arquivoa arquivob & <enter> Pode-se também utilizar ^z e o comando bg (background) * ESTRUTURA DO SISTEMA DE ARQUIVOS * BLOCO DE BOOT * SUPERBLOCO * I-NODO * BLOCOS DE DADOS I-NODO: nome do arquivo Número de links Data da criação Data da última modificação Data do último acesso 10 número de blocos de dados ponteiro indireto simples ponteiro indireto duplo ponteiro indireto triplo

5 GERÊNCIA DE PROCESSOS Quando inicializado o sistema cria o processo INIT com PID = 1, este processo será a raiz da árvore de processos. Quando um usuário executa o login o sistema cria um processo e carrega o interpretador de comandos (sh) para atender o usuário. A linha de comando digitada pelo usuário é lida pelo sh que analisa-o e então cria um processo e carrega o comando na área deste processo. Criação de Processo - Chamada fork A chamada fork do sistema operacional UNIX, cria um novo processo no sistema. O processo criado recebe uma cópia do processo que chamou. Imediatamente a criação os dois processo, pai e filho, são idênticos. A função fork retorna um valor inteiro que para o processo pai é a identificação (PID) do processo filho, no processo filho, a função retorna zero. Por exemplo: int ret; ret = fork(); printf("ret = %d\n"),ret); int ret; ret = fork(); if (ret == 0) printf("este é o processo filho.\n") else printf("este é o processo pai, PID do filho = %d\n",ret) Andrew S. Tanenbaum Chamada de sistema EXEC Passos executados para executar uma chamada EXEC [TAN87]: 1. Verifica as permissões - o arquivo é executável? 2. Lê o header do arquivo para obter o tamanhos do segmento e total. 3. Busca os argumentos e as variáveis de ambiente a partir do chamador. 4. Libera a memória antiga e aloca a nova. 5. Copia a pilha para a nova memória imagem. 6. Copia os segmentos de dados e texto para a nova memória imagem.

6 7. Verifica os bits para setuid e setgid. 8. Atualiza a entrada na tabela de processos. 9. Coloca o processo no estado pronto. Biblioteca utilizada para chamar EXEC com argumentos e ambiente (environment) execve(filename, argv, envp); filename é um ponteiro para o nome do arquivo a ser executado; argv é um ponteiro para um array de ponteiros, cada um deles apontando para um argumento; envp é um ponteiro para um array de ponteiros, cada um deles apontando para uma string de ambiente (variável de ambiente). execl(filename, name, arg1, arg2,..., 0); int ret; if ((ret=fork()) == 0) sleep(15); else wait((int *) 0); printf("filho acabou \n"); Execute os exemplos abaixo no UNIX e descreva o que será executado. Para compilar os programas utilize o compilador C (gcc). %> gcc nome_arquivo Será gerado um arquivo a.out com o programa executável, ou %> gcc nome_arquivo -o nome_executavel será criado o arquivo nome_executável com o programa executável, caso não hajam erros de compilação. Para executar digite: %>./nome_executavel (1) int ret1, ret2; ret1 = fork(); ret2 = fork(); printf("programa em execução.\n"); (2) int ret; ret = fork(); if (ret == 0)

7 execl("/bin/ls","ls",0); else printf("processo continua executando.\n"); (3) int ret; ret = fork(); if (ret == 0) execl("/bin/ls","ls",0); printf("quando este comando será executado? \n"); ; printf("por que a função printf anterior não foi executada?\n"); (4) int ret; ret = fork(); if (ret == 0) execl("/bin/ll","ll",0); printf("por que este comando foi executado? \n"); else printf("processo continua executando.\n"); #include <stdio.h> #define MAXBUFF 1024 int pipefd[2], n; char buff[100]; if( pipe(pipefd) < 0 ) printf("erro na chamada pipe\n"); printf("read fd =%d, write fd = %d\n",pipefd[0], pipefd[1]); if ( write(pipefd[1], "Hello world\n", 12)!= 12 ) printf("erro no write\n"); if ( n = read(pipefd[0], buff, sizeof(buff)) <= 0 ) printf(ërro no read\n"); write(1, buff, n); /* fd 1 = stdout */ exit(0); int pipedesc[2], contador, total, ret, n; char buff[10];

8 ret = pipe(pipedesc); if ( ret < 0 ) printf("erro no pipe.\n"); printf("criou pipe\n"); ret = fork(); if ( ret == 0 ) printf("está no filho\n "); close(pipedesc[1]); total = 0; while ( total < 100 ) total = total + 1; while((n=read(pipedesc[0],buff,sizeof(buff)))<= 0); write(1, buff, n); close(pipedesc[0]); else printf("está no pai\n"); close(pipedesc[0]); contador = 0; while ( contador < 100 ) write(pipedesc[1], "A", 1); contador = contador + 1; close(pipedesc[1]); int childpid, pipe1[2], pipe2[2], ret1, ret2; ret1 = pipe(pipe1); ret2 = pipe(pipe2); if ( ret1 < 0 ret2 < 0 ) printf("não criou pipes.\n"); childpid = fork(); if ( childpid < 0 ) printf("não criou processo.\n"); exit(2); else if ( childpid > 0 ) /* é o processo pai */ close(pipe1[0]); close(pipe2[1]); client(pipe2[0], pipe1[1]); wait((int *) 0);

9 close(pipe1[1]); close(pipe2[0]); exit(0); else close(pipe1[1]); close(pipe2[0]); server(pipe1[0], pipe2[1]); close(pipe1[0]); close(pipe2[1]); exit(0); client(readfd, writefd) int readfd, writefd; char buff[maxbuff]; int n; /* * Lê o nome do arquivo da entrada padrão, * escreve-o no pipe. */ if (fgets(buff, MAXBUFF, stdin) == NULL) printf("erro na leitura do nome do arquivo.\n"); n = strlen(buff); if ( buff[n-1] == '\n') n--; if ( write(writefd, buff, n)!= n ) printf("erro escrevendo o nome do arquivo.\n"); /* * Lê os dados a partir do pipe e escreve-os na saída * padrão. */ while (( n = read(readfd, buff, MAXBUFF)) > 0) if (write(1, buff, n)!= n ) printf("erro escrevendo dados.\n"); if ( n < 0 ) printf("erro lendo dados a partir do pipe.\n"); exit(1): server (readfd, writefd)

10 int readfd, writefd; char buff[maxbuff]; int n, fd; /* * lê o nome do arquivo do pipe */ if ( ( n = read(readfd, buff, MAXBUFF)) <= 0 ) printf("erro na leitura do nome do arquivo.\n"); buff[n] = '\0'; if (( fd = open(buff, 0)) < 0 ) /* * erro na abertura do arquivo. */ printf("erro na abertura do arquivo.\n"); else /* * lê os dados do arquivo e escreve-os no pipe. */ while ( (n = read(fd, buff, MAXBUFF)) > 0 ) if ( write(writefd, buff, n)!= n ) printf("erro escrevendo dados pipe.\n"); if ( n < 0 ) printf("erro lendo dados.\n"); EXERCÍCIO PRÁTICO Construir um programa usando as chamadas fork, exec, wait e exit, que leia na entrada padrão a linha de comando, crie um processo filho e coloque em execução no processo filho o comando especificado na linha lida. O processo pai deverá esperar o término do processo filho e emitir mensagem de acordo com o código de retorno do filho. Se código de retorno igual a zero deverá aparecer a mensagem "Executado com sucesso.", senão deverá aparecer a mensagem "Código de retorno = ", seguida do valor numérico do código de retorno. Algoritmo:

11 Início Lê linha de comando; Enquanto não fim faça Início Percorre a linha retirando o nome do comando; Executa um fork para criar um novo processo; Se processo filho então Executa execl especificando o nome do comando como parâmetro; Senão Inicio Executa wait para esperar que a execução do comando termine; Se codigo retorno = zero então Escreva "Executado com sucesso." Senão Escreva "Código de retorno = ", codigo_retorno; Fim Fim se; Lê linha de comando; Fim; Fim; Após concluída a implementação deste exercício, incluir a possibilidade de passar parâmetros para o comando a ser executado. Exercício prático utilizando as chamadas de sistema: fork, pipe, wait, exit, close. Construa um programa em C para implementar a estrutura abaixo: Temos dois processos A e B, criados a partir do processo PP (programa principal), se comunicando através de 2 pipes. No processo A estará executando uma rotina que lê uma string de caracteres no Pipe2, converte-os para maiúsculas e escreve no Pipe1. No processo B estará executando uma rotina que lê uma linha de texto digitada pelo usuário (de no máximo 80 bytes - 79 caracteres mais o terminador), escreve esta linha no Pipe2 e depois lê a string convertida para maiúsculas no Pipe1, exibindo-a na tela. Quando o usuário digitar "FIM", o processo B envia a string para o processo A e encerra (exit). O processo A quando encontra a string "FIM" também encerra (exit).

12 O programa principal deverá criar os pipes, criar os processos, e estabelecer a comunicação entre os mesmos conforme descrito acima. O programa principal deverá ficar esperando (wait) até os processos filhos acabem (exit). As funções para converter os caracteres de minúsculos para maiúsculos e para ler o texto digitado deverão fazer parte do programa principal. #define TAMBUFF 1024 // aluno Edson Elmar Schlei int pipe1[2], pipe2[2], retp1, retp2; int pid_proc_a, pid_proc_b, n, i; char buff[tambuff]; char linha[80]; retp1 = pipe(pipe1); retp2 = pipe(pipe2); if ( (retp1 < 0) (retp2 < 0) ) printf("erro em um dos pipe.\n"); printf("criou os pipes\n"); pid_proc_a = fork(); if ( pid_proc_a == 0 ) // Inicio do Processo A printf("está no filho A \n"); close(pipe1[0]); close(pipe2[1]); // fecha a pipe1 para leitura // fecha a pipe2 para escrita while ((strcmp(buff,"fim"))) for(i=0;i<tambuff;i++) buff[i] = '\0'; // espera vir algo no pipe2 while ((n = read(pipe2[0], buff, sizeof(buff))) <= 0); buff[n] = '\0'; for(i=0;i<n;i++) // converte para maiúsculo buff[i] = toupper(buff[i]); write(pipe1[1],buff,n+1); // retorna a string no pipe1 close(pipe1[1]); close(pipe2[0]); exit(0); // finaliza o processo pid_proc_b = fork(); if (pid_proc_b == 0) // inicio do processo B

13 printf("entrou no processo B"); close(pipe1[1]); close(pipe2[0]); // fecha o pipe1 para escrita // fecha o pipe2 para leitura do for(i=0;i<80;i++) linha[i] = '\0'; printf("\ndigite algo para converte : "); gets(linha); printf("\n%s",linha); write(pipe2[1],linha,strlen(linha)); while ((n = read(pipe1[0], buff, sizeof(buff))) <= 0); printf("%s\n",buff); while((strcmp(buff,"fim"))); close(pipe1[0]); close(pipe2[1]); // fecha o pipe1 para leitura // fecha o pipe2 para escrita exit(0); // fechas os pipes no processo pai close(pipe1[0]); close(pipe1[1]); close(pipe2[0]); close(pipe2[1]); wait((int *)0); wait((int *)0);

Aula 02. Introdução ao Linux

Aula 02. Introdução ao Linux Aula 02 Introdução ao Linux Arquivos Central de Programas do Ubuntu A Central de Programas do Ubuntu é uma loja de aplicativos integrada ao sistema que permite-lhe instalar e desinstalar programas com

Leia mais

Introdução ao Linux. Instituto Federal de Educação, Ciência e Tecnologia do Sul de Minas Gerais Campus Pouso Alegre

Introdução ao Linux. Instituto Federal de Educação, Ciência e Tecnologia do Sul de Minas Gerais Campus Pouso Alegre Instituto Federal de Educação, Ciência e Tecnologia do Sul de Minas Gerais Campus Pouso Alegre Introdução ao Linux Comandos Ubuntu/Linux Michelle Nery Agenda Comandos do Sistema Comandos para Processos

Leia mais

Conceitos de Sistemas Operacionais: Chamadas de Sistema. Prof Rafael J. Sandim

Conceitos de Sistemas Operacionais: Chamadas de Sistema. Prof Rafael J. Sandim Conceitos de Sistemas Operacionais: Chamadas de Sistema Prof Rafael J. Sandim Conceitos de Sistema Operacional Interface entre o SO e os Programas de usuário é definida pelo conjunto de instruções estendidas

Leia mais

E.E.E.P. Dr. Solon Tavares Sistemas Operacionais Prof. Henrique Cordeiro. Programação Concorrente em Linux

E.E.E.P. Dr. Solon Tavares Sistemas Operacionais Prof. Henrique Cordeiro. Programação Concorrente em Linux E.E.E.P. Dr. Solon Tavares Sistemas Operacionais Prof. Henrique Cordeiro Programação Concorrente em Linux O Conceito de Processo no Linux O conceito de processo é fundamental para qualquer sistema operacional

Leia mais

Comunicação entre pai e filho

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

Leia mais

Aula 4 Comandos Básicos Linux. Prof.: Roberto Franciscatto

Aula 4 Comandos Básicos Linux. Prof.: Roberto Franciscatto Sistemas Operacionais Aula 4 Comandos Básicos Linux Prof.: Roberto Franciscatto Prompt Ao iniciar o GNU/Linux, a primeira tarefa a ser executada é o login no sistema, o qual deve ser feito respondendo

Leia mais

Sistemas Operacionais INF 09344 Prof. José Gonçalves

Sistemas Operacionais INF 09344 Prof. José Gonçalves Sistemas Operacionais INF 09344 Prof. José Gonçalves 1 o Trabalho de Programação Período: 2014/1 Data de Entrega: 2/6/2014 Parte I. Usando Fork e Wait Você deve criar um programa C partei.c. Durante a

Leia mais

Roteiro 3: Sistemas Linux arquivos e diretórios

Roteiro 3: Sistemas Linux arquivos e diretórios Roteiro 3: Sistemas Linux arquivos e diretórios Objetivos Detalhar conceitos sobre o sistema operacional Linux; Operar comandos básicos de sistemas Linux em modo Texto; Realizar a manutenção de arquivos

Leia mais

LISTA DE COMANDOS DO LINUX 1

LISTA DE COMANDOS DO LINUX 1 LISTA DE COMANDOS DO LINUX 1 Comandos para manipulação de diretório 1. ls Lista os arquivos de um diretório. 2. cd Entra em um diretório. Você precisa ter a permissão de execução para entrar no diretório.

Leia mais

Unix: Sistema de Arquivos. Geraldo Braz Junior

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

Leia mais

Sistemas Operacionais de Rede Linux - Gerenciamento de Arquivos

Sistemas Operacionais de Rede Linux - Gerenciamento de Arquivos Sistemas Operacionais de Rede Linux - Gerenciamento de Arquivos Conteúdo Programático Login e Logout Iniciando e Desligando o Sistema Tipos de arquivo Texto Binário Arquivos e Diretório Manipulação de

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de

Leia mais

FTP - Protocolo. O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores.

FTP - Protocolo. O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores. FTP FTP - Protocolo O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores. A partir do FTP usuários podem receber ou enviar arquivos de ou para outros computadores

Leia mais

6. Comunicação entre processos - Pipes

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

Leia mais

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

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

Leia mais

SOFTWARE LIVRE. Distribuições Live CD. Kernel. Distribuição Linux

SOFTWARE LIVRE. Distribuições Live CD. Kernel. Distribuição Linux SOFTWARE LIVRE A liberdade de executar o programa, para qualquer propósito. A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades. Acesso ao código-fonte é um pré-requisito

Leia mais

Um processo sob UNIX ocupa uma área de memória formada basicamente por 3 partes:

Um processo sob UNIX ocupa uma área de memória formada basicamente por 3 partes: Processos O UNIX é um sistema operacional multitarefa (suporta multiprogramação). Isso significa que ele é capaz de gerenciar a execução simultânea de vários programas. O termo processo é usado para caracterizar

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Prof. Jó Ueyama Apresentação baseada nos slides da Profa. Kalinka Castelo Branco, do Prof. Dr. Antônio Carlos Sementille e da Profa. Dra. Luciana A. F. Martimiano e nas transparências

Leia mais

ENDEREÇOS DE REDE PRIVADOS. 10.0.0.0 até 10.255.255.255 172.16.0.0 até 172.31.255.255 192.168.0.0 até 192.168.255.255. Kernel

ENDEREÇOS DE REDE PRIVADOS. 10.0.0.0 até 10.255.255.255 172.16.0.0 até 172.31.255.255 192.168.0.0 até 192.168.255.255. Kernel ENDEREÇOS DE REDE PRIVADOS Foram reservados intervalos de endereços IP para serem utilizados exclusivamente em redes privadas, como é o caso das redes locais e Intranets. Esses endereços não devem ser

Leia mais

Projeto: Camada Independente de Dispositivo

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

Leia mais

Algoritmos e Programação _ Departamento de Informática

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

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 8. Introdução ao Linux Introdução a linguagem C

CURSO BÁSICO DE PROGRAMAÇÃO AULA 8. Introdução ao Linux Introdução a linguagem C CURSO BÁSICO DE PROGRAMAÇÃO AULA 8 Introdução ao Linux Introdução a linguagem C Linux Linux é um termo utilizado para se referir a sistemas operacionais que utilizem o núcleo Linux. Existem muitas distribuições

Leia mais

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme AULA 2: INTRODUÇÃO A LINGUAGEM DE C Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme Agenda Introdução a linguagem C Compiladores Variáveis IDEs Exemplos Exercícios Introdução A Linguagem C

Leia mais

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 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

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Conceitos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Introdução Arquitetura de Sistema Operacional Chamadas de sistema. Processos Basicamente, um

Leia mais

PROCESSOS COMPONENTES DE UM PROCESSO. A execução de um processo possui vários componentes. PID e PPID

PROCESSOS COMPONENTES DE UM PROCESSO. A execução de um processo possui vários componentes. PID e PPID PROCESSOS Um processo é um canal de comunicação entre os programas que estão sendo executados no sistema operacional e o usuário, ou seja um processo é um programa que está sendo executado. No Linux /

Leia mais

GNU/Linux/Bash. Aula 2

GNU/Linux/Bash. Aula 2 GNU/Linux/Bash Aula 2 O que é? Ubuntu GNU Linux Ubuntu 12.04 Ubuntu é um sistema operacional baseado em Linux desenvolvido pela comunidade e é perfeito para notebooks, desktops e servidores. Ele contém

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

MÓDULO 02 PROCESSOS E THREADS PROCESSOS e THREADS

MÓDULO 02 PROCESSOS E THREADS PROCESSOS e THREADS MÓDULO 02 PROCESSOS E THREADS PROCESSOS e THREADS 1. ATIVIDADE 01 Verificar a criação de um processo filho (que imprime de 51 a 100) que rodará concorrentemente com o processo pai (que imprime de 1 a 50)

Leia mais

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

Leia mais

O Processo de Programação

O Processo de Programação Programação de Computadores I Aula 04 O Processo de Programação José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/23 Algoritmo Um algoritmo é uma seqüência de

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

Ciclo de Vida de um Processo

Ciclo de Vida de um Processo Nas aulas anteriores Ciclo de Vida de um Processo Marcelo Johann Conceito de Processo Mecanismo de Programação em C/UNIX Continuando Interrupções TRAP Chaveamento de Contexto Chamadas de Sistema INF01142

Leia mais

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

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

Leia mais

Sistemas Operacionais: Sistema de Arquivos

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,

Leia mais

Manipulação de Arquivos Ubuntu. Haline de Souza Scotti Rodrigo Fantinati Ferreira

Manipulação de Arquivos Ubuntu. Haline de Souza Scotti Rodrigo Fantinati Ferreira Manipulação de Arquivos Ubuntu Haline de Souza Scotti Rodrigo Fantinati Ferreira Veremos nesta aula Visão geral do ambiente Ubuntu Arquivos e Diretórios Manipulação de arquivos Exercício Visão geral do

Leia mais

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos

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

Leia mais

Conteúdo 1 Comandos Básicos. Questão 1: Que comando permite encerrar o sistema definitivamente?

Conteúdo 1 Comandos Básicos. Questão 1: Que comando permite encerrar o sistema definitivamente? Conteúdo 1 Comandos Básicos Questão 1: Que comando permite encerrar o sistema definitivamente? a) shutdawn b) shutdown t now c) shutdown r now d) shutdwon h now e) shutdown h now Questão 2: Que comando

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS DE ARQUIVOS MACHADO/MAIA: CAPÍTULO 11 Prof. Pedro Luís Antonelli Anhanguera Educacional SISTEMAS DE ARQUIVOS - INTRODUÇÃO O armazenamento e a recuperação de informações é

Leia mais

Introdução a. Shell Script. Clésio Matos clesior.matos@gmail.com

Introdução a. Shell Script. Clésio Matos clesior.matos@gmail.com Introdução a Shell Script Clésio Matos clesior.matos@gmail.com 1 Plano de apresentação O que são shell scripts Comandos básicos Estruturas básicas do BASH - Comandos condicionais - Comandos de repetição

Leia mais

Revisão Aula 3. 1. Explique a MBR(Master Boot Record)

Revisão Aula 3. 1. Explique a MBR(Master Boot Record) Revisão Aula 3 1. Explique a MBR(Master Boot Record) Revisão Aula 3 1. Explique a MBR(Master Boot Record). Master Boot Record Primeiro setor de um HD (disco rígido) Dividido em duas áreas: Boot loader

Leia mais

Sistema Operacional LINUX

Sistema Operacional LINUX SISTEMA OPERACIONAL Sistema Operacional LINUX Para que o computador funcione e possibilite a execução de programas é necessária a existência de um sistema operacional. O sistema operacional é uma camada

Leia mais

Rotinas de Manipulação de Arquivos

Rotinas de Manipulação de Arquivos Rotinas de Manipulação de Arquivos No IDL existem muitas rotinas de manipulação de arquivos. Uma lista destas rotinas, com uma explicação da sua finalidade, está na tabela abaixo. Rotinas FILEPATH FILE_BASENAME

Leia mais

MANUAL DO ADMINISTRADOR LOCAL. Entidade Municipal

MANUAL DO ADMINISTRADOR LOCAL. Entidade Municipal MANUAL DO ADMINISTRADOR LOCAL Entidade Municipal Abril / 2011 ÍNDICE Objetivos do Sistema de Registro de Integrado - REGIN... 3 Principais Módulos do Sistema... 4 Módulo Controle de Acesso... 5 Módulo

Leia mais

Tutorial: Programando no Linux

Tutorial: Programando no Linux UECE Universidade Estadual do Ceará CCT Centro de Ciências e Tecnologia Curso de Ciência da Computação Tutorial: Programando no Linux Alunos: Henrique Neto e João Gonçalves Professora: Ana Luiza E-mails:

Leia mais

Campus - Cachoeiro Curso Técnico de Informática. Sistema de Arquivos. Prof. João Paulo de Brito Gonçalves

Campus - Cachoeiro Curso Técnico de Informática. Sistema de Arquivos. Prof. João Paulo de Brito Gonçalves Campus - Cachoeiro Curso Técnico de Informática Sistema de Arquivos Prof. João Paulo de Brito Gonçalves Introdução É com o sistema de arquivos que o usuário mais nota a presença do sistema operacional.

Leia mais

Manipulação de Arquivos

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

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 12 Cadeia de Caracteres (Strings) Edirlei Soares de Lima Caracteres Até o momento nós somente utilizamos variáveis que armazenam números (int, float ou

Leia mais

Processos. Adão de Melo Neto

Processos. Adão de Melo Neto Processos Adão de Melo Neto 1 EXECUTE O SEGUINTE Baixa a aula dos dias 20 MAR 15 e 08 MAI 15 e salve no computador. Feche o browser Inicialize o vmware player e inicialize a máquina virtual ubuntu Inicialize

Leia mais

Comandos.::. Aplicativos > Sistema > Acessar Console

Comandos.::. Aplicativos > Sistema > Acessar Console Comandos Aplicativos > Sistema > Acessar Console jonilso 23 de outubro de 2012 Comandos Iniciais whoami Comandos Iniciais whoami Exibe o login do usuário que executou o comando. Comandos Iniciais whoami

Leia mais

Comandos Básicos do Linux/Unix

Comandos Básicos do Linux/Unix Comandos Básicos do Linux/Unix Vou partir do pressuposto que você sabe o básico de um sistema Linux/Unix. É importante para qualquer usuário de sistemas baseados em Unix aprender a trabalhar no modo texto

Leia mais

SVCs para Controle de Processos no Unix (cont.) Sistemas Operacionais

SVCs para Controle de Processos no Unix (cont.) Sistemas Operacionais SVCs para Controle de Processos no Unix (cont.) Primitivas exec..() As primitivas exec constituem, na verdade, uma família de funções que permitem a um processo executar o código de outro programa. Não

Leia mais

Aluísio Eustáquio da Silva

Aluísio Eustáquio da Silva 1 Aluísio Eustáquio da Silva SciLab Programável Material didático usado em aulas de Programação de Computadores, Algoritmos e Lógica de Programação Betim Maio de 2012 2 PROGRAMAÇÃO O SciLab permite que

Leia mais

Principais Comandos do Terminal no LINUX

Principais Comandos do Terminal no LINUX Principais Comandos do Terminal no LINUX Estes comandos não visam ser um compêndio completo de operação, haja vista que se possui mais comandos que esses aqui que serão listados, logo os comandos são:

Leia mais

Capítulo 6 Sistemas de Arquivos

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

Leia mais

Introdução ao Linux: Parte I

Introdução ao Linux: Parte I Data: Introdução ao Linux: Parte I Marcelo Ribeiro Xavier da Silva marceloo@inf.ufsc.br Histórico 3 Origem do GNU Linux Em 1983, Richard Stallman fundou a Free Software Foundation, com o intuito de criar

Leia mais

Processos em Unix. Conteúdo: Definição de Processos em Unix Estrutura, tipo e escalonamento de processos em Unix Processos, Pai, Filho e Zumbi.

Processos em Unix. Conteúdo: Definição de Processos em Unix Estrutura, tipo e escalonamento de processos em Unix Processos, Pai, Filho e Zumbi. Processos em Unix Conteúdo: Definição de Processos em Unix Estrutura, tipo e escalonamento de processos em Unix Processos, Pai, Filho e Zumbi. O que é um Processo em Unix? É um espaço de endereçamento

Leia mais

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica Introdução a Programação Ponteiros e Strings, Alocação Dinâmica Tópicos da Aula Hoje aprenderemos a relação entre ponteiros e strings Ponteiros para strings X Vetores de Caracteres Vetores de ponteiros

Leia mais

Julgue os itens a seguir referentes a conceitos de software livre e licenças de uso, distribuição e modificação.

Julgue os itens a seguir referentes a conceitos de software livre e licenças de uso, distribuição e modificação. Julgue os itens a seguir referentes a conceitos de software livre e licenças de uso, distribuição e modificação. 1.Todo software livre deve ser desenvolvido para uso por pessoa física em ambiente com sistema

Leia mais

Manual do Desenvolvedor Criptografia de Arquivos do WebTA

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

Leia mais

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 1 Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Linguagem a ser Utilizada? Nossa disciplina é de Algoritmos e Estrutura de Dados, e não de linguagem

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Revisão Aula Anterior Estruturas de Decisão (If e Switch)

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Revisão Aula Anterior Estruturas de Decisão (If e Switch) CURSO BÁSICO DE PROGRAMAÇÃO AULA 9 Revisão Aula Anterior Estruturas de Decisão (If e Switch) Revisão Comandos básicos no terminal: Para verificar os arquivos que estão em uma pasta usa-se ls: Para acessar

Leia mais

Persistência 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

Leia mais

Planeamento. Introdução ao Sistema Operativo UNIX. Java: Ferramentas, Entradas/Saídas, Excepções. Threads e Semáforos. Problemas de Sincronização

Planeamento. Introdução ao Sistema Operativo UNIX. Java: Ferramentas, Entradas/Saídas, Excepções. Threads e Semáforos. Problemas de Sincronização Planeamento Introdução ao Sistema Operativo UNIX Java: Ferramentas, Entradas/Saídas, Excepções Threads e Semáforos Problemas de Sincronização Jantar dos Filósofos, Leitores/Escritores,... Sockets Stream

Leia mais

Busca. Pesquisa sequencial

Busca. Pesquisa sequencial Busca Banco de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro, simplesmente digitando sua chave. Uma tabela ou um arquivo é um grupo de elementos, cada um

Leia mais

Sistemas Operacionais. Laboratório 1 (Ambiente de Aprendizado)

Sistemas Operacionais. Laboratório 1 (Ambiente de Aprendizado) Sistemas Operacionais Laboratório 1 () Roteiro Linux em modo texto Acesso Interpretador de comandos Comandos Básicos Tratamento de Arquivos e Diretórios (Pasta*) Permissões Processos Editor de Texto Criação

Leia mais

Programação de Computadores I. Ponteiros

Programação de Computadores I. Ponteiros Ponteiros Prof. Edwar Saliba Júnior Outubro de 2012 Unidade 13 Ponteiros 1 Identificadores e Endereços Na linguagem C, uma declaração de variável faz associação entre um identificador e endereços de memória;

Leia mais

Simulador de Sistemas de Arquivos

Simulador de Sistemas de Arquivos Simulador de Sistemas de Arquivos Trabalho Prático 1 Disciplina: Sistemas Operacionais 2009/1 Professor Humberto César Brandão de Oliveira O trabalho possui dois requisitos fundamentais: a. Entrega do

Leia mais

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL Urano Indústria de Balanças e Equipamentos Eletrônicos Ltda. Rua Irmão Pedro 709 Vila Rosa Canoas RS Fone: (51) 3462.8700 Fax: (51) 3477.4441 Características do Software Urano Integra 2.2 Data: 12/05/2014

Leia mais

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 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

Leia mais

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Gerência de Arquivos É um dos serviços mais visíveis do SO. Arquivos são normalmente

Leia mais

Estruturas de Dados. Profa. Juliana Pinheiro Campos

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

Leia mais

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03. Prof. Gabriel Silva

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03. Prof. Gabriel Silva FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03 Prof. Gabriel Silva Temas da Aula de Hoje: Servidores Linux. Conceitos Básicos do Linux. Instalando Servidor Linux.

Leia mais

Trabalho 3: Agenda de Tarefas

Trabalho 3: Agenda de Tarefas INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma

Leia mais

EN3611 Segurança de Redes Prof. João Henrique Kleinschmidt Prática 2 Certificados digitais Permissões Comandos Password cracker

EN3611 Segurança de Redes Prof. João Henrique Kleinschmidt Prática 2 Certificados digitais Permissões Comandos Password cracker EN3611 Segurança de Redes Prof. João Henrique Kleinschmidt Prática 2 Certificados digitais Permissões Comandos Password cracker Entregar um relatório respondendo as questões propostas e principais observações

Leia mais

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Abertos Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Comando free Gerência de Memória exibe a quantidade de memória livre e utilizada pelo sistema Usage: $ free

Leia mais

Entendendo o Sistema Operacinal. Prof. Armando Martins de Souza E-mail: armandomartins.souza@gmail.com

Entendendo o Sistema Operacinal. Prof. Armando Martins de Souza E-mail: armandomartins.souza@gmail.com Entendendo o Sistema Operacinal Prof. Armando Martins de Souza E-mail: armandomartins.souza@gmail.com Criando um Snapshot da Máquina Padrão Page 2 Criando um Snapshot da Máquina Padrão Page 3 Criando um

Leia mais

Fundamentos de Sistemas Operacionais. GNU / Linux. Prof. Edwar Saliba Júnior Março de 2009. Unidade 04-002 GNU / Linux

Fundamentos de Sistemas Operacionais. GNU / Linux. Prof. Edwar Saliba Júnior Março de 2009. Unidade 04-002 GNU / Linux GNU / Linux Prof. Edwar Saliba Júnior Março de 2009 Conceitos Básico O S.O. é case sensitive, ou seja, sensível à caixa; Exemplo: o arquivo apple.txt é diferente do arquivo Apple.txt e podem conviver juntos

Leia mais

Programação 2009/2010 MEEC

Programação 2009/2010 MEEC Programação 2009/2010 MEEC Laboratório 1 Semana de 28 de Setembro de 2009 SCDEEC Leia com atenção as regras de funcionamento da Sala de Computadores do DEEC (http://scdeec.ist.utl.pt/ e http://scdeec.ist.utl.pt/regras_utilizacao).

Leia mais

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior Armazenamento de Dados Prof. Antonio Almeida de Barros Junior 1 Armazenamento de Dados Todos os dados que utilizamos até o momento, ficavam armazenados apenas na memória. Ao final da execução dos programas,

Leia mais

DESCRIÇÃO DO TRABALHO - VERSÃO DE 29/04/2006 15:00.

DESCRIÇÃO DO TRABALHO - VERSÃO DE 29/04/2006 15:00. DESCRIÇÃO DO TRABALHO - VERSÃO DE 29/04/2006 15:00. Descrição Geral do trabalho. O objetivo do trabalho será o desenvolvimento de um programa Cliente/Servidor para o envio e recebimento de arquivos. Os

Leia mais

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Cronograma Introdução

Leia mais

Sistemas de Arquivos. Gerenciamento de Espaço em Disco

Sistemas de Arquivos. Gerenciamento de Espaço em Disco Sistemas de Arquivos Diretórios Gerenciamento de Espaço em Disco Implementação de Diretórios (1) Contém informações que permitem acessar os arquivos As entradas do diretório fornecem informações para encontrar

Leia mais

Aula 04 - Hackeando a linha de comando

Aula 04 - Hackeando a linha de comando Aula 04 - Hackeando a linha de comando LibrePlanet São Paulo 12 de março de 2015 Terminal Um terminal atua como uma interface para entrada e saída de dados no computador. Existem diversos emuladores de

Leia mais

Requerimento: Digitador de Pedidos ProfarmaNet. Manual de Apoio. Preparado por: Versão: 1.0. Sumário

Requerimento: Digitador de Pedidos ProfarmaNet. Manual de Apoio. Preparado por: Versão: 1.0. Sumário Vanderlei Manual de Apoio Resumo Módulo Básico Especifico para Instalação e Usabilidade Lista de Distribuição Nome Área / Função Histórico de modificações Versão Data Descrição Responsável 13/12/2013 Versão

Leia mais

Algoritmos e Programação Estruturada

Algoritmos e Programação Estruturada Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição de constantes:

Leia mais

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar Software Livre Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar Linux Licença GPL (Licença Pública Geral) Linux Licença GPL (Licença Pública Geral) - A liberdade de executar

Leia mais

Algoritmos e Estruturas de Dados

Algoritmos e Estruturas de Dados AED - Unix commands reference card Page 1 of 5 Algoritmos e Estruturas de Dados Guia de referência de comandos Unix Comandos de gestão de ambiente cd d Muda para a directoria d mkdir d Cria uma nova directoria

Leia mais

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Variáveis na linguagem C: tipo char O tipo char representa um caractere ASCII (ocupa só 1 byte) int main(int argc, char **

Leia mais