Desenvolvimento para Sistemas Embarcados (CEA 513) Sistema de Arquivos Raiz & Componentes do Kernel

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

Download "Desenvolvimento para Sistemas Embarcados (CEA 513) Sistema de Arquivos Raiz & Componentes do Kernel"

Transcrição

1 Universidade Federal de Ouro Preto Departamento de Computação e Sistemas - DECSI Desenvolvimento para Sistemas Embarcados (CEA 513) Sistema de Arquivos Raiz & Vicente Amorim vicente.amorim.ufop@gmail.com

2 Sumário * Sistema de Arquivos Básico e Bibliotecas * Componentes do kernel

3 Sistema de Arquivos Básico e Bibliotecas

4 Sistema de Arquivos Básico e Bibliotecas * O comportamento do SO Linux para embarcados se difere em muito das versões para desktop/servidores. * Em cada caso, um sistema de arquivos mínimo deve ser considerado. * Algumas funções da versão completa não precisam estar presentes. * Na versão para embarcados o sistema de arquivos básico do SO tende a ser menor e mais compacto.

5 Sistema de Arquivos Básico e Bibliotecas * Sistema de arquivos básico (completo):

6 Sistema de Arquivos Básico e Bibliotecas * Na versão para embarcados, alguns dos diretórios podem ser removidos: - Suporte a multi-usuários: /opt, /home, /root e /mnt. - Versão minimalista: /var e /tmp. (problemas podem ocorrer) - Diretórios restantes são essenciais: /bin, /dev, /etc, /lib, /proc, /sbin e /usr. - Em casos extremos o diretório /proc pode ser omitido: Pode tornar difícil a depuração de algum problema posteriormente.

7 Sistema de Arquivos Básico e Bibliotecas * Aparente redundância do sistema de arquivos: - Binários do sistema podem estar localizados em: /bin, /sbin, / usr/bin e /usr/sbin. - Local de armazenamento depende do papel que o mesmo desempenha no sistema: /bin: Binários essenciais aos usuários e administradores do sistema. /sbin: Binários essenciais aos administradores do sistema mas nunca utilizados por usuários comuns.

8 Sistema de Arquivos Básico e Bibliotecas * Aparente redundância do sistema de arquivos: - Local de armazenamento depende do papel que o mesmo desempenha no sistema: /usr/bin: Binários não essenciais aos usuários e administradores do sistema. /usr/sbin: Binários não essenciais aos administradores do sistema. Mesma lógica é aplicada aos diretórios de armazenamento de bibliotecas: /lib e /usr/lib. - Uma vez criados todos os diretórios do sistema (listados anteriormente) é necessário considerar os componentes de SW.

9 Sistema de Arquivos Básico e Bibliotecas * Bibliotecas - Assim como o sistema de arquivos básico, existe também um conjunto mínimo de bibliotecas que um sistema Linux embarcado deve possuir. - glibc Principal pacote de bibliotecas do sistema. Bibliotecas normalmente localizadas em /lib/<target_prefix>/. Necessário avaliar quais serão as bibliotecas realmente necessárias no sistema alvo. Evitar desperdício de espaço e possivelmente memória principal na imagem final.

10 Sistema de Arquivos Básico e Bibliotecas * Bibliotecas - glibc

11 Sistema de Arquivos Básico e Bibliotecas * Bibliotecas - glibc

12 Sistema de Arquivos Básico e Bibliotecas * Bibliotecas - uclibc Assim como a glibc, é um pacote de bibliotecas. Nomes e modo de uso dos componentes da uclibc são análogos aos da glibc. Nem todas as bibliotecas que compõem a glibc estão disponíveis na uclibc. uclibc implementa somente: ld, libc, libcrypt, libdl, libm, libpthread, libresolv, e libutil. Bibliotecas normalmente localizadas em /lib/<target_prefix>/ uclibc/lib.

13

14 * Os principais componentes de um sistema embarcado Linux podem ser subdivididos em: - Bootloader; - Kernel Linux; - Aplicativos de usuário; - Toolchain (de forma mais abrangente). * Kernel Linux é composto internamente por vários módulos. * Componentes do kernel podem ser compilados built-in ou posteriormente acoplados ao mesmo.

15 * Módulos do kernel Linux - Módulos são códigos independentes que podem ser carregados/descarregados do kernel em tempo de execução. - Código escrito para módulos deve ter o mesmo cuidado que os códigos internos ao kernel. - Execução se dá no mesmo nível de permissão que o kernel. - Qualquer erro pode ocasionar a queda de todo o sistema. - Permitem extender funcionalidades do kernel sem necessidade de reiniciar o sistema.

16 * Módulos do kernel Linux - Considerações básicas Não executa como um programa qualquer, mas possui suas chamadas orientadas a eventos. Funções convencionais da glibc não são utilizadas, uma vez que o código do kernel deve ser independente. Funções como printf, malloc, etc, são substituídas por versões específicas para o kernel: printk kmalloc, etc. Necessita de pelo menos duas funções para existir: inicialização e finalização.

17 * Módulos do kernel Linux - Módulo Hello World-1 #include <linux/module.h> #include <linux/kernel.h> /* Funcao de inicializacao */ int init_module(void) { printk(kern_info "Hello world 1.\n"); return 0; } /* Funcao de finalizacao */ void cleanup_module(void) { printk(kern_info "Goodbye world 1.\n"); }

18 * Módulos do kernel Linux - Considerações básicas init_module() contém código a ser executado quando da inicialização do módulo. cleanup_module() contém código a ser executado quando da remoção do módulo do sistema. printk() perfaz mesma função do printf(). Entretanto, não tem o objetivo de informar algo ao usuário, mas sim para log do kernel.

19 * Módulos do kernel Linux - Compilação Módulos do kernel são compilados de forma diferente de aplicações de usuário. Compilações normalmente são feitas através de Makefiles. Para o kernel existe um modo de manutenção dos Makefiles chamado de kbuild. Mais informações sobre compilação de módulos podem ser encontradas no arquivo linux/documentation/kbuild/ modules.txt

20 * Módulos do kernel Linux - Compilação Makefile obj-m += hello-1.o all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

21 * Módulos do kernel Linux - Compilação Mais detalhes podem ser encontrados em linux/ Documentation/kbuild/makefiles.txt. - Instanciamento / Remoção $ insmod / rmmod / modprobe / lsmod $ modinfo

22 * Módulos do kernel Linux - Módulo Hello World-2 #include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> static int hello2_data initdata = 3; static int init hello_2_init(void) { printk(kern_info "Hello, world 2\n"); return 0; } static void exit hello_2_exit(void) { printk(kern_info "Goodbye, world 2\n"); } module_init(hello_2_init); module_exit(hello_2_exit);

23 * Módulos do kernel Linux - Macros Macro init faz com que a função seja descarregada (e sua memória liberada) assim que a mesma termina - somente para módulos built-in. initdata funciona de maneira correlata, entretanto aplicado somente a variáveis e não a funções. Macro exit causa a omissão da função quando o módulo é compilado junto ao kernel - somente para módulos built-in.

24 * Módulos do kernel Linux - Metadados Módulos podem conter internamente informações sobre si mesmo. Existem macros específicas para a declaração de tais informações. Tipo de licença, autor, descrição e dispositivos suportados podem ser algumas das informações passíveis de serem adicionadas.

25 * Módulos do kernel Linux - Metadados #include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> #define MOD_AUTHOR "Vicente Amorim <vjpamorim@gmail.com>" #define MOD_DESC "Exemplo de um modulo do kernel" static int init hello_3_init(void) { printk(kern_info "Hello, world 3\n"); return 0; } static void exit hello_3_exit(void) { printk(kern_info "Goodbye, world 3\n"); } MODULE_LICENSE("GPL"); MODULE_AUTHOR(MOD_AUTHOR); MODULE_DESCRIPTION(MOD_DESC); MODULE_SUPPORTED_DEVICE("exemplo_modulo"); module_init(hello_3_init); module_exit(hello_3_exit);

26 * Módulos do kernel Linux - Módulos vs. Programas de usuário Um programa de usuário normalmente inicia pela rotina main(), executa um conjunto de instruções e termina. Um módulo sempre inicia pela rotina marcada com init_module ou através da função especificada na chamada module_init(). Função de inicialização diz ao kernel o que o módulo efetivamente faz. Após a função de inicialização o módulo não faz mais nada até que o kernel queira executar alguma função pertencente àquele módulo.

27 * Módulos do kernel Linux - Módulos vs. Programas de usuário Ao fazer uso de funções externas (printf() da libc, por exemplo), o código das mesmas só é integrado ao programa no estágio de link-edição. Módulos são arquivos objetos nos quais os símbolos (printk(), por exemplo) são resolvidos durante seu instanciamento ($ insmod). Códigos do kernel não dependem de biblioteca externa. Todas as definições de símbolos exportados pelo kernel podem ser encontradas em: /proc/kallsyms.

28 * Módulos do kernel Linux - Espaço de usuário vs. Espaço kernel Kernel é o gerente geral: Decide quem pode acessar determinados recursos e quando isso pode acontecer. Recursos em um sistema podem ser acessados através de diversos níveis: CPU possuía 4 modos de execução. Sistemas Unix-like utilizam somente o modo mais alto e mais baixo de execução (supervisor mode vs. user mode). Paradigma Funções vs. System Calls -> Espaço de usuário vs. espaço kernel.

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Módulos do núcleo Programação de Sistemas Módulos : 1/15 Introdução (1) Desenvolvimentos do núcleo, como a criação de novos dispositivos, podem ser incorporados no Linux em duas

Leia mais

SISTEMAS DE ARQUIVOS E DIRETÓRIOS DO LINUX. Prof. Gleison Batista de Sousa

SISTEMAS DE ARQUIVOS E DIRETÓRIOS DO LINUX. Prof. Gleison Batista de Sousa SISTEMAS DE ARQUIVOS E DIRETÓRIOS DO LINUX Prof. Gleison Batista de Sousa Sistema de Arquivo É o método e a estrutura de dados que um sistema operacional utiliza para administrar arquivos em um disco ou

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

Hierarquia de Diretórios da Família Linux. Sistemas Operacionais 1

Hierarquia de Diretórios da Família Linux. Sistemas Operacionais 1 Hierarquia de Diretórios da Família Linux 1 Conteúdo Estrutura de Diretórios; Árvore de Diretórios; Diretórios mais importantes; 2 Estrutura de Diretórios A identificação dos objetos de um sistema de arquivos

Leia mais

Introdução aos Sistemas Operacionais. Subsistema de Entrada e Saída

Introdução aos Sistemas Operacionais. Subsistema de Entrada e Saída Introdução aos Sistemas Operacionais Subsistema de Entrada e Saída Eleri Cardozo FEEC/Unicamp Entrada e Saída O subsistema de entrada e saída é responsável pela interface entre o sistema operacional e

Leia mais

Administração de sistemas Linux. Estrutura de diretórios Linux

Administração de sistemas Linux. Estrutura de diretórios Linux Administração de sistemas Linux Estrutura de diretórios Linux Filesystem Hierarchy Standard (FHS): A norma FHS é um conjunto de requerimentos técnicos que visam estabelecer normas e padrões para a estrutura

Leia mais

Estrutura de Diretórios Linux. Rodrigo Gentini gentini@msn.com

Estrutura de Diretórios Linux. Rodrigo Gentini gentini@msn.com Linux Rodrigo Gentini gentini@msn.com /bin - Ficam armazenados os comandos básicos que todos os usuários podem usar, como o : ls, cat, cd entre outros. /boot - Ficam todos os arquivos que a máquina precisa

Leia mais

Instalação e Configuração de Servidores Linux Server Partições e Sist. de Arquivos. Prof. Alex Furtunato

Instalação e Configuração de Servidores Linux Server Partições e Sist. de Arquivos. Prof. Alex Furtunato Instalação e Configuração de Servidores Linux Server Partições e Sist. de Arquivos Prof. Alex Furtunato alex.furtunato@academico.ifrn.edu.br Roteiro Partições Sistemas de Arquivos Pontos de Montagem Partições

Leia mais

LINUX. Uma visão geral

LINUX. Uma visão geral LINUX Uma visão geral O QUE É? Sistema Operacional Código aberto Criado por Linus Torvalds em 1991 Estudante de computação, 20 anos Linguagem C Variação do Minix Criado por Andrew S. Tanenbaum em 1987

Leia mais

Administração Central Cetec Capacitações Capacitação Sistema Operacional Linux Semana III

Administração Central Cetec Capacitações Capacitação Sistema Operacional Linux Semana III Capacitação Sistema Operacional Linux Semana III A estrutura dos diretórios do sistema GNU/Linux Gerenciador de diretórios e arquivos Para quem está acostumado a operar o Windows, vai notar que existe

Leia mais

Instalador e Operador de Sistemas de Telefonia e Comunicação de Dados

Instalador e Operador de Sistemas de Telefonia e Comunicação de Dados Redes Gerência e a Internet de Redes Instalador e Operador de Sistemas de Telefonia e Comunicação de Dados Conceitos Básicos 01 E-mail: euberchaia@yahoo.com.br Site: www.echaia.com Sistema de Arquivos

Leia mais

16. Compilação no Linux

16. Compilação no Linux 16. Compilação no Linux 16.1 Compilador X Interpretador Um código fonte pode ser compilado ou interpretado. Compiladores e interpretadores tratam o código de maneira diferente. Interpretador: Lê o código

Leia mais

Introdução ao Desenvolvimento com LINUX: Módulos do Kernel

Introdução ao Desenvolvimento com LINUX: Módulos do Kernel Introdução ao Desenvolvimento com LINUX: Módulos do Kernel Lucas Wanner, Antônio Augusto Fröhlich guto@lisha.ufsc.br http://www.lisha.ufsc.br/~guto 16 de Jul de 2008 1 Desmotivação para Desenvolver Software

Leia mais

Introdução a Administração de Sistemas GNU/Linux

Introdução a Administração de Sistemas GNU/Linux Curso de extensão da Faculdade Ruy Barbosa Introdução a Administração de Sistemas GNU/Linux Dedicasse especial a Rogério Bastos e ao GRACO (Gestores da Rede Acadêmica de Computação) do DCC UFBA Paul Regnier

Leia mais

Integração de Sistemas Embebidos MECom :: 5º ano

Integração de Sistemas Embebidos MECom :: 5º ano Integração de Sistemas Embebidos MECom :: 5º ano Device Drivers em Linux Criação e execução de módulos António Joaquim Esteves www.di.uminho.pt/~aje Bibliografia: capítulo 2, LDD 3ed, O Reilly DEP. DE

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto

Sistemas Operacionais. Prof. André Y. Kusumoto Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Tipos de Filesystem Filesystem no Linux tudo é tratado como arquivo, por exemplo, um disco rígido é tratado como arquivo, placa

Leia mais

Ligação e Relocação. Noemi Rodriguez Ana Lúcia de Moura Raúl Renteria.

Ligação e Relocação. Noemi Rodriguez Ana Lúcia de Moura Raúl Renteria. Ligação e Relocação Noemi Rodriguez Ana Lúcia de Moura Raúl Renteria http://www.inf.puc-rio.br/~inf1018 Compilação e Ligação hello.c Preprocessador hello.i programa fonte expandido (texto) Compilador hello.s

Leia mais

Programação Aplicada a Redes de Computadores Shell Script

Programação Aplicada a Redes de Computadores Shell Script Programação Aplicada a Res Computadores Shell Script Faculdas IESGO 2º Sem 2016 Definições Software Livre (Free Software) Conceito que prevê que todo software será distribuído com seu código-fonte, pondo

Leia mais

Histórico e conceitos básicos. GSO I Gestão de Sistemas Operacionais

Histórico e conceitos básicos. GSO I Gestão de Sistemas Operacionais Histórico e conceitos básicos GSO I Gestão de Sistemas Operacionais História do Linux Em 1991, Linus Benedict Torvalds, um estudante Filandês, pela necessidade de estudar melhor sistemas operacionais desenvolve

Leia mais

Tipos de usuários do Linux Root Usuário Comum: #

Tipos de usuários do Linux Root Usuário Comum: # LINUX Linux não é totalmente um SO, na verdade ele é o que chamamos de KERNEL, ou seja, o núcleo do Sistema Operacional. O Kernel é o responsável pela integração do hardware com o software. Como o código-fonte

Leia mais

Universidade Federal de Pernambuco Centro de Informática. Aluno: Anderson L. S. Moreira alsm4@cin.ufpe.br Orientador: Paulo R. R.

Universidade Federal de Pernambuco Centro de Informática. Aluno: Anderson L. S. Moreira alsm4@cin.ufpe.br Orientador: Paulo R. R. Sistemas RTAI Universidade Federal de Pernambuco Centro de Informática Aluno: Anderson L. S. Moreira alsm4@cin.ufpe.br Orientador: Paulo R. R. Maciel Agenda Introdução O que é um SOTR Como funciona Exemplo

Leia mais

Administração de Sistemas Operacionais Prof.: Marlon Marcon

Administração de Sistemas Operacionais Prof.: Marlon Marcon Instituto Federal de Minas Gerais Campus Bambuí Administração de Sistemas Operacionais Prof.: Marlon Marcon Estrutura de diretórios Diretório Local utilizado para armazenar arquivos e outros diretórios

Leia mais

Turma: SD-R Área: Redes Informáticas Formador: Tomás Lima Mediadora: Maria Eduarda Luz Unidade: UFCD 17 - Linux - Instalação e configuração Curso:

Turma: SD-R Área: Redes Informáticas Formador: Tomás Lima Mediadora: Maria Eduarda Luz Unidade: UFCD 17 - Linux - Instalação e configuração Curso: Turma: SD-R Área: Redes Informáticas Formador: Tomás Lima Mediadora: Maria Eduarda Luz Unidade: UFCD 17 - Linux - Instalação e configuração Curso: Técnico/a de Informática - Instalação e Gestão de Redes.

Leia mais

Introdução ao Desenvolvimento do Kernel Linux

Introdução ao Desenvolvimento do Kernel Linux Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X http://www.tchelinux.org Palestrante: Douglas Schilling Landgraf Email: dougsland@gmail.com Sobre o palestrante Sobre a palestra Dicas iniciais

Leia mais

Arquitetura e Organização de Computadores. Compiladores e processamento

Arquitetura e Organização de Computadores. Compiladores e processamento Arquitetura e Organização de Computadores Compiladores e processamento Verificar a existência dos pacotes: - GCC (Gnu C Compiler); - GDB (Gnu Debuger); - Libc (blibliotecas C); - nano, vi, emacs ou outro

Leia mais

Administração de Redes em Software Livre Aula 02 Instalando o GNU/Linux (CENTOS Minimal)

Administração de Redes em Software Livre Aula 02 Instalando o GNU/Linux (CENTOS Minimal) Administração de Redes em Software Livre Aula 02 Instalando o GNU/Linux (CENTOS Minimal) Professor: O que precisamos saber antes de iniciar a instalação? 1. Entender a estrutura de diretório do GNU/LINUX;

Leia mais

>>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard. === Sistemas de arquivos e Partições

>>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard. === Sistemas de arquivos e Partições >>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard === Sistemas de arquivos e Partições >>> FHS - Filesystem Hierarchy Standard >Padrão de organização de pastas e arquivos em Sistemas Unix-Like >organizar

Leia mais

Administração de Sistemas Operacionais

Administração de Sistemas Operacionais Administração de Sistemas Operacionais Linux - Introdução Alex Furtunato CEFET/RN alex@cefetrn.br http://www.cefetrn.br/~alex Sumário Histórico Características principais Distribuições Partições Sistema

Leia mais

pedrofilho.eti.br Linux Essentials 2.3 Acessando diretórios e arquivos 2.4 Criando, movendo e excluindo arquivos Prof. Pedro Filho

pedrofilho.eti.br Linux Essentials 2.3 Acessando diretórios e arquivos 2.4 Criando, movendo e excluindo arquivos Prof. Pedro Filho Linux Essentials 2.3 Acessando diretórios e arquivos 2.4 Criando, movendo e excluindo arquivos Prof. Pedro Filho 1 Objetivo O objetivo deste curso é lhe fazer familiar com o sistema operacional Linux.

Leia mais

Técnico Subsequente em Redes de Computadores Introdução a Sistemas Abertos (ISA)

Técnico Subsequente em Redes de Computadores Introdução a Sistemas Abertos (ISA) Técnico Subsequente em Redes de Computadores Introdução a Sistemas Abertos (ISA) Aula 03 Visão Geral do Linux Objetivos Entender de forma básica o funcionamento do sistema Linux; Aprender as principais

Leia mais

CPU. Memória. Periféricos, dispositivos de entrada, saída 07/04/2017

CPU. Memória. Periféricos, dispositivos de entrada, saída 07/04/2017 SUSEPE Informática Rodrigo Schaeffer Pré Prova Fundamentos da Computação: conceitos básicos de informática, componentes hardware e software dos computadores, Periféricos, dispositivos de entrada, saída

Leia mais

Linux Básico. Prof. Gutemberg Gonçalves dos Santos Júnior. Center of Electrical Engineering and Informatics Federal University of Campina Grande

Linux Básico. Prof. Gutemberg Gonçalves dos Santos Júnior. Center of Electrical Engineering and Informatics Federal University of Campina Grande Linux Básico Prof. Gutemberg Gonçalves dos Santos Júnior Center of Electrical Engineering and Informatics Federal University of Campina Grande História do Linux A história começa em 1991 com o estudante

Leia mais

Introdução à Programação Aula 16. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 16. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 16 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação COMO UM PROGRAMA C É COMPILADO? 2 Compilação de um Programa A compilação

Leia mais

Linguagem C Princípios Básicos (parte 1)

Linguagem C Princípios Básicos (parte 1) Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos

Leia mais

A ferramenta make. A - Introdução. O C é orientado para a produção de aplicações informáticas de grande dimensão

A ferramenta make. A - Introdução. O C é orientado para a produção de aplicações informáticas de grande dimensão A - Introdução O C é orientado para a produção de aplicações informáticas de grande dimensão Na geração de aplicações informáticas há ficheiros gerados a partir de outros: logo, os segundos têm obrigatoriamente

Leia mais

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br

Leia mais

Linux. Linux é um núcleo (kernel) para sistemas operacionais baseados no conceito de software livre.

Linux. Linux é um núcleo (kernel) para sistemas operacionais baseados no conceito de software livre. Linux Linux Linux é um núcleo (kernel) para sistemas operacionais baseados no conceito de software livre. Linux Linux Distribuição Linux é um sistema operacional incluindo o kernel Linux e outros softwares

Leia mais

Linux Introdução. Walter Fetter Lages

Linux Introdução. Walter Fetter Lages Linux Introdução Walter Fetter Lages fetter@ece.ufrgs.br Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Sistemas Elétricos de Automação e Energia ENG10032 Microcontroladores

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Organização de um ambiente computacional Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC

Leia mais

Sistemas Embarcados. GNU toolchain. Introdução. Mas o compilador sozinho não adianta muito... Compilador. Aula 07

Sistemas Embarcados. GNU toolchain. Introdução. Mas o compilador sozinho não adianta muito... Compilador. Aula 07 Sistemas Embarcados Ferramentas de desenvolvimento GNU toolchain Introdução Projetistas de software empregam várias ferramentas durante o ciclo de desenvolvimento de um software E.g.: editores, compiladores,

Leia mais

IFSC - SJ CURSO DE TELECOMUNICAÇÕES DISCIPLINA: ICO

IFSC - SJ CURSO DE TELECOMUNICAÇÕES DISCIPLINA: ICO IFSC - SJ CURSO DE TELECOMUNICAÇÕES DISCIPLINA: ICO Conceitos relativos a um Sistema Operacional Sistema Operacional O Sistema Operacional é um programa que gerencia todos os recursos da máquina, tais

Leia mais

COS Sistemas Operacionais. SystemCalls() [Linux Kernel Development, 2 nd edition] Prof. Vítor Santos Costa

COS Sistemas Operacionais. SystemCalls() [Linux Kernel Development, 2 nd edition] Prof. Vítor Santos Costa COS 773 - Sistemas Operacionais SystemCalls() [Linux Kernel Development, 2 nd edition] Elias Bareinboim [eliasb@cos.ufrj.br] Prof. Vítor Santos Costa PESC - Programa de Engenharia de Sistemas e Computação

Leia mais

Sistemas Embarcados. Filesystem Hierarchy Standard (FHS) Root filesystem. Aula 06

Sistemas Embarcados. Filesystem Hierarchy Standard (FHS) Root filesystem. Aula 06 Introdução Sistemas Embarcados Root File System Linux (kernel) é apenas uma parte de um sistema embarcado Preciso executa a inicialização do sistema e de aplicações Necessário montar o sistema de arquivos

Leia mais

Implementação de Sistemas de Arquivos. Na Aula Anterior... Esquema do Sistema de Arquivos. Nesta Aula 31/10/2016. Estrutura de Baixo Nível de um Disco

Implementação de Sistemas de Arquivos. Na Aula Anterior... Esquema do Sistema de Arquivos. Nesta Aula 31/10/2016. Estrutura de Baixo Nível de um Disco GSI018 Sistemas Operacionais 31/10/2016 Implementação de Sistemas de Arquivos Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior... Memória

Leia mais

Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Sistemas Elétricos de Automação e Energia ENG10032 Microcontroladores

Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Sistemas Elétricos de Automação e Energia ENG10032 Microcontroladores Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Sistemas Elétricos de Automação e Energia ENG10032 Microcontroladores 1 Objetivo Roteiro de Laboratório 2 Ambiente de Desenvolvimento

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ESTRUTURA DE UM SISTEMA OPERACIONAL PROFESSOR CARLOS MUNIZ

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ESTRUTURA DE UM SISTEMA OPERACIONAL PROFESSOR CARLOS MUNIZ INTRODUÇÃO À TECNOLOGIA DA ESTRUTURA DE UM SISTEMA PROFESSOR CARLOS MUNIZ ESTRUTURA DE SISTEMAS OPERACIONAIS O sistema operacional tem uma estrutura bem complexa, devido não funcionar como um programa

Leia mais

IFSC - SJ CURSO TÉCNICO DE TELECOMUNICAÇÕES DISCIPLINA: MAN / SOP

IFSC - SJ CURSO TÉCNICO DE TELECOMUNICAÇÕES DISCIPLINA: MAN / SOP IFSC - SJ CURSO TÉCNICO DE TELECOMUNICAÇÕES DISCIPLINA: MAN / SOP Conceitos relativos a um Sistema Operacional Sistema Operacional O Sistema Operacional é um programa especial que gerencia todos os recursos

Leia mais

Moisés Souto docente.ifrn.edu.br/moisessouto

Moisés Souto docente.ifrn.edu.br/moisessouto Moisés Souto docente.ifrn.edu.br/moisessouto moises.souto@ifrn.edu.br Aula 02 Acesso ao sistema e comandos básicos Software O que torna o computador reutilizável para diferentes propósitos Sem software,

Leia mais

Linguagem de Programação. Thiago Leite Francisco Barretto

Linguagem de Programação. Thiago Leite Francisco Barretto Linguagem de Programação Thiago Leite Francisco Barretto SCHILDT, H. C Completo e Total. 3ª Edição. São Paulo: Makron, 1997. Bibliografia Ementa

Leia mais

PROVA 03/07 Segunda-feira (semana que vem)

PROVA 03/07 Segunda-feira (semana que vem) damkeisabela@gmail.com PROVA 03/07 Segunda-feira (semana que vem) SISTEMAS OPERACIONAIS Os sistemas operacionais mais comuns que existem para computadores e que o mercado irá oferecer para você são : Microsoft

Leia mais

Programação de Periféricos

Programação de Periféricos Programação de Periféricos Componentes Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Apresentação Raspberry pi Sistema Operacional embarcado Atividade Raspberry pi Sistema computacional

Leia mais

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues SEL0433 Aplicação de Microprocessadores I Revisão da Linguagem C Prof. Evandro L. L. Rodrigues Estrutura de um programa C Diretivas de pré processamento Declaração de variáveis globais Declaração de protótipos

Leia mais

Guia Rápido: GCC, Makefile e Valgrind.

Guia Rápido: GCC, Makefile e Valgrind. Guia Rápido: GCC, Makefile e Valgrind. Alexandro Ramos 10 de setembro de 2015 1 Sumário 1 Introdução 3 2 GCC 3 2.1 Outros parâmetros úteis no GCC....................... 4 3 Makefiles 6 3.1 Makefile 1....................................

Leia mais

Departamento de Engenharia Informática. Sistemas Operativos 1. Utilitário Make

Departamento de Engenharia Informática. Sistemas Operativos 1. Utilitário Make Departamento de Engenharia Informática Sistemas Operativos 1 Utilitário Make Março 2003 1. Modelo de Compilação da Linguagem C Compilar um programa muito simples em C requer, pelo menos, o ficheiro de

Leia mais

OpenWrt: modelagem do

OpenWrt: modelagem do Instituto Federal do Ceará Essas apresentação possui um acumulado de informações de mais de 9 meses de pesquisa e desenvolvimento em redes mesh utilizando o firmware Openwrt. OpenWrt: modelagem do 1 código

Leia mais

Comandos Diversos relacionados a Sistemas de Arquivos

Comandos Diversos relacionados a Sistemas de Arquivos Aula 04 Comandos Diversos relacionados a Sistemas de Arquivos Prof. Roitier Campos Partições São divisões existentes no disco rígido que marcam onde começa onde terminam um sistema de arquivos. Elas permitem

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Programação. Module Introduction. Cap. 1 Fundamentos de Computadores

Programação. Module Introduction. Cap. 1 Fundamentos de Computadores Engenharia Informática (5374) - 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) - 1º ano, 1º semestre Bioengenharia (9099) 2º ano, 1º semestre Ciências Biomédicas (10135) 2º ano, 1º semestre

Leia mais

PROJETO INTERDISCIPLINAR I

PROJETO INTERDISCIPLINAR I PROJETO INTERDISCIPLINAR I Linux e LPI 104 Dispositivos, Sistemas de e FHS www.lpi.org João Bosco Teixeira Junior boscojr@gmail.com 104.1 Particões e Sistemas de arquivos MBR - Setor de Boot (512b) Loader

Leia mais

Comandos. Sistema Operacional GNU/Linux. Para Manipulação de Diretórios

Comandos. Sistema Operacional GNU/Linux. Para Manipulação de Diretórios Comandos Para Manipulação de Diretórios Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Julho / 2017 1/11 Comando ls Lista os arquivos de um diretório.

Leia mais

Sistemas Operacionais Profa. Roberta Lima Gomes ROTEIRO LAB File System

Sistemas Operacionais Profa. Roberta Lima Gomes ROTEIRO LAB File System Sistemas Operacionais Profa. Roberta Lima Gomes ROTEIRO LAB File System Estrutura de Diretórios Os principais sistemas de arquivos usados para a formatação de discos locais em Linux são o ext2, ext3, ext4,

Leia mais

Introdução à Informática

Introdução à Informática Introdução à Informática Aula 3 http://www.ic.uff.br/~bianca/introinfo/ Aula 3-12/09/2007 1 Objetivo da disciplina O objetivo dessa disciplina é dar ao aluno noções básicas de computação. Serão apresentados

Leia mais

Sistemas operacionais INTRODUÇÃO

Sistemas operacionais INTRODUÇÃO Sistemas operacionais INTRODUÇÃO Sistemas Operacionais É um software situado entre o hardware e as aplicações para gerenciar todo os recursos do sistema (memória, processador, disco ) de forma organizada

Leia mais

Blog: om.br/ Facebook: https://www.facebook.

Blog:  om.br/ Facebook: https://www.facebook. Contatos: E-mail: profanadeinformatica@yahoo.com.br Blog: http://profanadeinformatica.blogspot.c om.br/ Facebook: https://www.facebook.com/anapinf Livro Informática para Concursos Teoria e Questões - 3a

Leia mais

Algoritmos e Lógica de Programação Sistemas Operacionais

Algoritmos e Lógica de Programação Sistemas Operacionais Algoritmos e Lógica de Programação Sistemas Operacionais Agostinho Brito Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte 25 de agosto de 2005 Introdução

Leia mais

Disciplina: Sistemas Operacionais

Disciplina: Sistemas Operacionais Curso: Análise e Desenvolvimento de Sistemas Disciplina: Sistemas Operacionais Parte 4: Gerenciamento de Armazenamento (Estrutura do Sistema de Arquivos, Diretórios, Método de segurança de Arquivos) Prof.

Leia mais

03/11/2011. Apresentação. SA do Linux. Sistemas de Arquivos. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux

03/11/2011. Apresentação. SA do Linux. Sistemas de Arquivos. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux Apresentação Administração de Sistemas Curso Tecnologia em Telemática Disciplina Administração de Sistemas Linux Professor: Anderson Costa anderson@ifpb.edu.br Assunto da aula Aspectos do Sistema de Arquivos

Leia mais

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias 1 IDES E PROGRAMAÇÃO Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias {claudio,macdias}@icmc.usp.br 2 Agenda Conceitos Instalação e Configuração Compilação e Execução de Código IDEs Exemplo

Leia mais

no Xenomai 2.5.x 1 Introdução ao desenvolvimento de aplicações de tempo real Aplicações Hardware Xenomai

no Xenomai 2.5.x 1 Introdução ao desenvolvimento de aplicações de tempo real Aplicações Hardware Xenomai 1 Introdução ao desenvolvimento de aplicações de tempo real no Xenomai 2.5.x O Xenomai foi desenvolvido a partir da versão fusion do RTAI (Real Time Application Interface) e adiciona uma camada de abstracção

Leia mais

ESTRUTURA DE DADOS (TCC )

ESTRUTURA DE DADOS (TCC ) ESTRUTURA DE DADOS (TCC-00.319) Ponteiros e funções Cristina Boeres 2 Ponteiros Variável do tipo ponteiro:! Linguagens como C permite o armazenamento e a manipulação de valores de endereços de memória!

Leia mais

Sistemas Operacionais Estrutura do Sistema Operacional. Arquiteturas do Kernel

Sistemas Operacionais Estrutura do Sistema Operacional. Arquiteturas do Kernel Sistemas Operacionais Estrutura do Sistema Operacional Principais tipos de estruturas: Monolíticos; Em camadas; Máquinas Virtuais; Arquitetura Micro-kernel; Cliente-Servidor; 2 Arquitetura Monolítica Aplicação

Leia mais

Ficha de Revisão do Módulo 4 - Sistema Operativo Open Source

Ficha de Revisão do Módulo 4 - Sistema Operativo Open Source UNIÃO EUROPEIA FUNDO SOCIAL EUROPEU Ficha de Revisão do Módulo 4 - Sistema Operativo Open Source História do Linux Refira dois antecessores do Linux. Como se chama a fundação que tem o objetivo de proteger

Leia mais

Tipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas

Tipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Estruturas de Dados Aula 2: Estruturas Estáticas 03/03/2010 Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa

Leia mais

Segurança em Sistemas Operativos

Segurança em Sistemas Operativos Segurança em Sistemas Operativos André Zúquete Segurança Informática e nas Organizações 1 Sistema Operativo Servidor Aplicação modo utilizador: Execução no modo normal do CPU, sem acesso a instruções privilegiadas

Leia mais

Real Time Application Interface

Real Time Application Interface Real Time Application Interface RTAI-3.x Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica ENG04008 Sistemas de Tempo

Leia mais

Função. Unidade autônoma do programa desenvolvida para executar alguma atividade. A estrutura de uma função C é semelhante à da função main( )

Função. Unidade autônoma do programa desenvolvida para executar alguma atividade. A estrutura de uma função C é semelhante à da função main( ) Função Unidade autônoma do programa desenvolvida para executar alguma atividade Evita que se escreva o mesmo código inúmeras vezes em um mesmo programa A estrutura de uma função C é semelhante à da função

Leia mais

Programação Shell Script: como dominar seu terminal

Programação Shell Script: como dominar seu terminal Programação Shell Script: como dominar seu terminal 14 de Outubro de 2008 1 2 Sistemas Operacionais Shell 3 4 5 O que é Shell? Programa interpretador de instruções Por que utilizar o Shell? Facilidade

Leia mais

Estruturas de Dados Aula 2: Estruturas Estáticas. Tipos Básicos. Quantos valores distintos podemos representar com o tipo char?

Estruturas de Dados Aula 2: Estruturas Estáticas. Tipos Básicos. Quantos valores distintos podemos representar com o tipo char? Estruturas de Dados Aula 2: Estruturas Estáticas Tipos Básicos Quantos valores distintos podemos representar com o tipo char? 1 Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa o

Leia mais

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa

Leia mais

Estrutura de um Sistema Linux Moderno Padrões de um Sistema Linux. Prof. Claudio Silva

Estrutura de um Sistema Linux Moderno Padrões de um Sistema Linux. Prof. Claudio Silva Estrutura de um Sistema Linux Moderno Padrões de um Sistema Linux Estrutura de um Sistema Linux Por ter sua origem universitária, a forma como o Linux foi concebido é de perfeito agrado para o seu estudo.

Leia mais

Estruturas de Dados. Módulo 4 Funções. 9/8/2005 (c) Dept. Informática - PUC-Rio 1

Estruturas de Dados. Módulo 4 Funções. 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 4 Funções 9/8/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)

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 7: Implementação de Processos e Threads Diego Passos Revisão Programação Concorrente e Multiprogramação SOs modernos permitem diversos processos em memória. Cada

Leia mais

Administração de sistemas operacionais. Comandos de manipulação de arquivos/diretórios.

Administração de sistemas operacionais. Comandos de manipulação de arquivos/diretórios. Administração de sistemas operacionais Comandos de manipulação de arquivos/diretórios. ls Lista os arquivos de um diretório. ls [opções] [caminho/arquivo] [caminho1/arquivo1]... onde: caminho/arquivo Diretório/arquivo

Leia mais

Sistema Operacional. Disciplina: Softwares, Aplicativos e Sistema Operacional. Professor: Thiago Silva Prates

Sistema Operacional. Disciplina: Softwares, Aplicativos e Sistema Operacional. Professor: Thiago Silva Prates Sistema Operacional Disciplina: Softwares, Aplicativos e Sistema Operacional Professor: Thiago Silva Prates Software e aplicativos Software é uma sequência de instruções à serem seguidas e executadas.

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

MANUAL DE INSTALAÇÃO SISTEMA DE GERÊNCIA CONSCIUS

MANUAL DE INSTALAÇÃO SISTEMA DE GERÊNCIA CONSCIUS MANUAL DE INSTALAÇÃO SISTEMA DE GERÊNCIA CONSCIUS 1 ÍNDICE ÍNDICE... 2 1. INTRODUÇÃO... 3 2. REQUISITOS... 3 2.1 Requisitos mínimos para utilização do instalador... 3 2.2 Requisitos mínimos para instalação

Leia mais

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes Introdução à Programação Introdução a Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Introdução Variáveis Tipos de dados Operadores e Expressões: Operadores

Leia mais

Estrutura dos Sistemas Operacionais. Adão de Melo Neto

Estrutura dos Sistemas Operacionais. Adão de Melo Neto Estrutura dos Sistemas Operacionais Adão de Melo Neto 1 Sistema Operacional -São partes do SO -São ferramentas de apoio ao usuário -São formas de acessar as rotinas do kernel O Sistema Operacional é formado

Leia mais

Informática I. Aula 2. Ementa

Informática I. Aula 2.  Ementa Informática I Aula 2 http://www.ic.uff.br/~bianca/informatica1/ Aula 2-29/08/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Slides adaptados de Prof. Dr. Marcos José Santana e Prof. Dra. Regina Helena Carlucci Santana baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum Tipos e Estrutura System

Leia mais

LISTA DE EXERCÍCIOS 07 - GABARITO

LISTA DE EXERCÍCIOS 07 - GABARITO Nome do aluno(a): Data: / / 0 LISTA DE EXERCÍCIOS 0 - GABARITO. Identifique cada elemento da Área de Trabalho do Ubuntu e escreva sua função, conforme a imagem abaixo: Ubuntu Desktop A tela inicial do

Leia mais

1º Ano - Técnico em Informática Integrado. Sistemas Operacionais

1º Ano - Técnico em Informática Integrado. Sistemas Operacionais 1º Ano - Técnico em Informática Integrado Sistemas Operacionais Navegação entre diretórios Antes de começar a trabalhar diretamente com os comandos do Linux, é necessário navegarmos entre os diretórios

Leia mais

SHELL. Alberto Felipe Friderichs Barros

SHELL. Alberto Felipe Friderichs Barros SHELL Alberto Felipe Friderichs Barros Introdução Os três componentes principais de um sistema operacional são o kernel, o shell e o sistema de arquivos. Shell A tradução de Shell para português neste

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

Bibliotecas são arquivos que contêm módulos reutilizáveis pré-compilados que serão usados por desenvolvedores de aplicações.

Bibliotecas são arquivos que contêm módulos reutilizáveis pré-compilados que serão usados por desenvolvedores de aplicações. 19. - Biblioteca de funções Os arquivos.c estão associados aos headers correspondentes, logo tem-se que: arquivo.h + arquivo.c = arquivo.o Bibliotecas são arquivos que contêm módulos reutilizáveis pré-compilados

Leia mais

facilita o trabalho em equipe, com diferentes grupos trabalhando em cada módulo independente.

facilita o trabalho em equipe, com diferentes grupos trabalhando em cada módulo independente. Estruturação do Programa Queremos organizar um programa de forma a: dividi-lo em partes que realizem tarefas específicas, resumindo um problema complexo a vários problemas mais simples simplifica a elaboração

Leia mais