Guilherme Quentel Melo Modelagem do processador Nios2 para uma plataforma de SoCs
|
|
- José Sousa Bergmann
- 8 Há anos
- Visualizações:
Transcrição
1 Guilherme Quentel Melo Modelagem do processador Nios2 para uma plataforma de SoCs Florianópolis SC 2006/2
2 Guilherme Quentel Melo Modelagem do processador Nios2 para uma plataforma de SoCs Trabalho de conclusão de curso apresentado como parte dos requisitos para obtenção do grau de Bacharel em Ciências da Computação. Orientador: Prof. Dr. Luiz Cláudio Villar dos Santos UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE CIÊNCIAS DA COMPUTAÇÃO Florianópolis SC 2006/2
3 Sumário Lista de Figuras Lista de Tabelas 1 Introdução p. 6 2 O Processador Nios 2 p Visão Geral p Registradores p Controlador de exceções p Memória p Memória Cache p Modos de Endereçamento p Conjunto de Instruções p Categorias p Instruções não implementadas p Instruções personalizadas p Formatos de instruções p Diferentes Implementações p Modelagem p A ADL ArchC p Modelo puramente funcional p. 13
4 3.3 Modelo com precisão de ciclos p Resultados Experimentais p Conclusão e Trabalhos Futuros p Atividades Faltantes p. 19 Referências Bibliográficas p. 20
5 Lista de Figuras
6 Lista de Tabelas 2.1 Registradores de uso geral p Implementações do Nios II p Conjunto de programas Mibench p. 18
7 6 1 Introdução A miniaturização está permitindo que cada vez mais dispositivos possuam processadores embutidos. Isso chega a levar a termos em inglês como Disapearing Computer(1), significando que os computadores estão desaparecendo, pois estão cada vez menores. Em razão disso, vê-se um aumento na necessidade de desenvolvimento de softwares para esses dispositivos embarcados. Com a criação de modelos de processadores, pode-se realizar simulações de um mesmo software para vários processadores diferentes e obter uma análise de qual deles possui um melhor desempenho, sem a necessidade de adquirir cada processador. Isso proporciona uma grande economia de tempo e dinheiro. Esse trabalho consiste na utilização de uma Linguagem de Descrição de Arquiteturas (ADL), para a descrição de um processador específico. A ADL escolhida foi a ArchC (2), com a qual alguns processadores e microcontroladores já foram modelados e estão disponíveis em (2). O processador Nios II foi escolhido para a realização desse trabalho por não haver ainda um modelo descrito em ArchC e por ser um processador importante para sistemas embarcados. A descrição desse processador consiste basicamente em duas etapas: Descrição puramente funcional - Implementação das instruções do processador sem levar em consideração a temporização. Descrição com precisão de ciclos - Implementação das instruções do processador com um nível de detalhamento maior, como, por exemplo, a inclusão de informações sobre o pipeline. O processo das duas descrições são semelhantes, ambas consistindo em implementação e testes parciais das instruções, execução de conjuntos de testes para a validação parcial do modelo e certificação do modelo junto à equipe ArchC (2) para a disponibilização em repositório público.
8 1 Introdução 7 O modelo funcional foi obtido a partir de um protótipo implementado por Richard Maciel e o modelo com precisão de ciclos foi criado a partir do primeiro já implementado.
9 8 2 O Processador Nios 2 Esse capítulo apresenta alguns dados obtidos a partir de (3) e (4). 2.1 Visão Geral O Nios R II é um processador desenvolvido pela Altera R (3). para propósitos gerais com uma arquitetura RISC.É um processador voltado para sistemas embarcados, sendo desenvolvido para a implementação em FPGA s, e por isso é o que se chama de softcore. Isso permite uma maior flexibilidade no desenvolvimento de sistemas, pois pode-se testar um sistema diretamente na placa e refiná-lo, adicionando ou retirando componentes, até que se atinja os requisitos necessários, sem precisar gastar com um novo hardware. 2.2 Registradores Existem 32 registradores de 32 bits de uso geral e 6, também de 32 bits, de controle. Há a possibilidade, também, dos registradores de controle serem protegidos contra programas de usuário, utilizando-se os modos supervisor e usuário. A tabela 2.1 lista os registradores de uso geral, com o uso padrão de cada um. 2.3 Controlador de exceções Qualquer exceção no Nios II causa um desvio na execução para um único endereço. O tratador de exceções verifica, então, a causa da exceção e executa a rotina apropriada.
10 2.4 Memória 9 Tabela 2.1: Registradores de uso geral. Registrador Nome Uso Padrão r0 zero Constante 0 r1 at Temporário p/ Montador r2 Valor de Retorno (32 bits menos significativos) r3 Valor de Retorno (32 bits mais significativos) r4 Argumento (Primeiros 32 bits) r5 Argumento (Próximos 32 bits) r6 Argumento (Próximos 32 bits) r7 Argumento (Próximos 32 bits) r8.. r15 Registradores temporários r16.. r23 Registradores salvos pela função chamada r24 et Temporário p/ exceção r25 bt Temporário p/ break r26 gp Global Pointer r27 sp Stack Pointer r28 fp Frame Pointer r29 ea Endereço de Retorno de Exceção r30 ba Endereço de Retorno de Break r31 ra Endereço de Retorno 2.4 Memória Memória Cache A arquitetura Nios II suporta memórias caches separadas para instruções e dados, possibilitando uma melhora no tempo médio de acesso à memória. As caches estão sempre ativas, no entanto há formas de desativá-la, de forma que periféricos possam acessar a memória principal ou memórias de outros dispositivos diretamente Modos de Endereçamento Registrador: Todos os registradores são operandos e o resultado é salvo também em um registrador. Displacement: O endereço é calculado pela soma de um registrador e um valor imediato com sinal. Imediato: Nesse modo, o operando é o próprio valor imediato. Register Indirect: É como o modo Displacement, mas o valor da constante é 0.
11 2.5 Conjunto de Instruções 10 Absoluto: Endereçamento absoluto é obtido a partir do uso do modo Displacement com o registrador r Conjunto de Instruções Categorias As instruções do Nios II podem ser divididas nas seguintes categorias. Instruções de transferência de dados Aritméticas e lógicas Move Comparação Deslocamento e rotação Instruções de controle do programa Outras Custom nop Instruções não implementadas O processador Nios II pode ter diferentes implementações, e em conseqüência disso pode haver instruções não implementadas em algumas versões. Essas instruções, quando encontradas pelo processador, causam uma exceção, que fazem com que o tratador de exceções desvie o fluxo de execução para a rotina que emula a respectiva operação em software Instruções personalizadas A arquitetura Nios II permite ao usuário a criação de suas próprias instruções, sendo usadas da mesma forma que as instruções nativas.
12 2.5 Conjunto de Instruções 11 Núcleo Item Nios II/e Nios II/s Nios II/f Freqüência máx. 200 MHz 165 MHz 185 MHz Pipeline 1 estágio 5 estágios 6 estágios Espaço de Endereçamento 2GB 2GB 2GB Multiplicação em Hardware - 3 ciclos 1 ciclo Divisão em Hardware - Opcional Opcional Shifter 1 ciclo/bit 3 ciclos 1 ciclo Tabela 2.2: Implementações do Nios II Formatos de instruções Tipo I Tipo R Tipo J Diferentes Implementações Como foi dito, o Nios II pode se apresentar em diferentes implementações. Três tipos são oferecidos pela Altera. A tabela 2.2 mostra alguns dados dessas 3 implementações. A versão escolhida para a realização desse trabalho foi a NiosII/f, por ser mais abrangente que as demais.
13 12 3 Modelagem 3.1 A ADL ArchC As Linguagens de Descrição de Arquitetura (ADL) foram criadas com o objetivo de facilitar o desenvolvimento de sistemas, considerando que a complexidade dos mesmos vêm aumentando cada vez mais, tornando o desenvolvimento mais difícil. Através de ADL s há a possibilidade de geração automática de ferramentas, como, por exemplo, montadores, ligadores, simuladores e compiladores. Uma ADL pode ajudar na escolha dos recursos a serem usados, tais como processador, frequência do relógio, tamanho de memórias cache e principal, etc. A ADL escolhida foi ArchC, que foi desenvolvida pelo Laboratório de Sistemas Computacionais (LSC) do Instituto de Computação (IC) da Universidade de Campinas (UNICAMP). Ela é baseada em SystemC, que é uma extensão de C/C++ voltada para o desenvolvimento de sistemas embarcados. Uma descrição de arquitetura em ArchC é composta de duas partes: AC ISA e AC ARCH. AC ISA corresponde à descrição do conjunto de instruções da arquitetura. Nela, o projetista informa detalhes sobre o formato, nome e tamanho das instruções e informações necessárias para a decodificação de cada instrução. Por sua vez, a descrição AC ARCH contém informações sobre, por exemplo, armazenamento e estrutura do pipeline. A linguagem possui algumas palavras reservadas em cada tipo de descrição, as quais estão listadas abaixo. Em uma AC ARCH: ac wordsize: informa o tamanho da palavra da arquitetura. ac format: declara um formato, o qual pode ser usado, por exemplo, para a declaração de registradores. ac cache, ac icache, ac dcache: declara um objeto do tipo ac cache para armazenamento. ac mem: declara um objeto do tipo ac mem, correspondendo a memória principal.
14 3.2 Modelo puramente funcional 13 ac regbank: declara um banco de registradores. ac reg: declara um registrador. ac pipe: cria um pipeline, com os estágios declarados juntamente. ARCH CTOR: início do construtor de AC ARCH. ac isa: informa o nome do arquivo que contém a descrição AC ISA. set endian: define o endianness da arquitetura. Em uma AC ISA: ac format: declara um formato e seus campos. ac instr: declara uma instrução com o formato fornecido. ISA CTOR: início do construtor de AC ISA. ac asm map: mapeia símbolos usados em código assembly para seus valores reais. set asm: associa uma sintaxe em assembly a uma instrução. set decoder: Especifica os valores dos campos para a codificação de uma instrução. ac pipe: cria um pipeline, com os estágios declarados juntamente. pseudo instr: cria uma pseudoinstrução com base nas instruções já criadas. A atual versão de ArchC (1.6.0) possibilita a geração de simuladores interpretados e compilados, e montadores a partir de um modelo descrito com a linguagem. Porém uma versão 2.0 Beta já está publicamente disponível (2) e oferece também a geração de desmontadores e debuggers (GDB). 3.2 Modelo puramente funcional A modelagem do processador Nios II partiu da implementação do modelo puramente funcional. O modelo é composto de 5 arquivos. O arquivo niosiif.ac contém a descrição AC ARCH. O conteúdo desse arquivo é mostrado na figura (A FAZER)3.2. Nela pode-se verificar a o tamanho da palavra (32 bits), um banco contendo 32 registradores, alguns outros registradores separados, uma memória de 5 MB, a indicação do arquivo com a descrição AC ISA e o
15 3.3 Modelo com precisão de ciclos 14 endianess da arquitetura, nesse caso little. É importante ressaltar que, apesar de o processador possuir uma memória cache, para o modelo puramente funcional isso não é importante. A razão disso é que a memória cache serve para diminuir o número de ciclos perdidos em um acesso à memória e um modelo puramente funcional não faz qualquer menção de como as instruções são executadas, e sim o resultado que cada uma produz. O arquivo niosiif-isa.ac contém a descrição AC ISA. A figura (A FAZER)3.2 mostra um fragmento desse arquivo. Primeiramente, pode-se observar a declaração dos formatos do Nios II. Por exemplo, o tipo J é declarado contendo os campos op e imm26, de 6 e 26 bits respectivamente. Mais adiante, são declaradas as instruções com seus devidos tipos. Em ac asm map é feito um mapeamento entre nomes de registradores e seus valores. Em ISA CTOR, as instruções são associadas às strings em assembly e seus códigos para decodificação. E por último são declaradas as pseudoinstruções. O arquivo niosiif-isa.cpp contém a implementação das instruções declaradas anteriormente. Já os arquivos niosiif gdb funcs.cpp e niosiif syscall.cpp não são obrigatórios para uma descrição de um processador. Eles contém informações que possibilitam o debug de programas e chamadas de sistema. No arquivo niosiif syscall.cpp é informado, por exemplo, como se retorna de uma chamada de sistema e onde se localizam os argumentos de um programa. 3.3 Modelo com precisão de ciclos Tópico a ser executado em Projetos 2.
16 15 4 Resultados Experimentais O modelo obtido foi submetido a diversos experimentos. Primeiramente, foi usado um conjunto de pequenos programas chamado acstone. A aplicação desse benchmark é um prérequisito para a validação de um modelo. Esses programas têm como objetivo apontar eventuais falhas básicas na implementação do modelo. São, portanto, programas sem uma aplicação prática. Após a execução correta do acstone foram usados mais dois benchmarks: Mediabench e Mibench. Esses dois benchmarks possuem aplicações e algoritmos muito usados em diversas áreas, incluindo telecomunicações, redes, automóveis, etc. Todos esses programas produziram arquivos como resultado da execução. Esses arquivos, foram, então, comparados com arquivos exemplos, produzidos, muitas vezes, pelo modelo do processador MIPS. A tabela 4.1 listam os programas testados e algumas informações sobre os mesmos.
17 4 Resultados Experimentais 16 Tabela 4.1: Conjunto de programas Mibench. Nome Número de instruções Instruções executadas Tempo de execução (s) basicmath-small basicmath-large bitcount-small ,6 bitcount-large qsort-small ,6 qsort-large susan-small corners ,7 susan-small edges ,3 susan-small smoothing ,9 susan-large corners ,2 susan-large edges ,5 susan-large smoothing dijkstra-small ,1 dijkstra-large ,4 patricia-small patricia-large adpcm-small encoder ,3 adpcm-small decoder ,1 adpcm-large encoder ,2 adpcm-large decoder ,6 crc32-small ,8 crc32-large ,3 fft-small fft-small inv gsm-small encode ,3 gsm-small decode ,3 gsm-large encode gsm-large decode
18 17 5 Conclusão e Trabalhos Futuros Devido ao grande número de aplicações que foram executadas, pôde-se verificar que o modelo apresenta um comportamento correto. Também foi importante verificar que é possível executar aplicações reais com o modelo obtido, o que o torna útil para o seu uso no desenvolvimento de sistemas. 5.1 Atividades Faltantes Geração de desmontador e depurador a partir do modelo funcional, para verificar a robustez do modelo. Certificação do modelo funcional. Implementação do modelo com precisão de ciclos. Aplicação dos benchmarks no modelo com precisão de ciclos. Certificação do modelo com precisão de ciclos.
19 18 Referências Bibliográficas 1 MARWEDEL, P. Embedded System Design. [S.l.]: Kluwer Academic Publishers, ARCHC. The ArchC Description Language ALTERA. 4 NIOS II Processor Reference Handbook,
UNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC
UNIVERSIDADE FEDERAL DE SANTA CATARINA DANIEL CARLOS CASAROTTO JOSE OTÁVIO CARLOMAGNO FILHO MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC Florianópolis, 2004 DANIEL CARLOS
Leia mais3. O NIVEL DA LINGUAGEM DE MONTAGEM
3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também
Leia maisImplementação de um soft-core em VHDL baseado no conjunto de instruções MIPS-I
UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE CIÊNCIAS DA COMPUTAÇÃO Rafael Vargas Implementação de um soft-core em VHDL baseado no conjunto de instruções MIPS-I
Leia maisCAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM
CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas
Leia maisSistemas Computacionais II Professor Frederico Sauer
Sistemas Computacionais II Professor Frederico Sauer Livro-texto: Introdução à Organização de Computadores 4ª edição Mário A. Monteiro Livros Técnicos e Científicos Editora. Atenção: Este material não
Leia maisCapítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho
20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam
Leia mais[RÓTULO:] MNEMÔNICO [OPERANDOS] [;COMENTÁRIO]
Instruções de uso do montador DAEDALUS (baseadas em texto extraído da monografia apresentada como trabalho de diplomação no curso de Bacharelado em Ciência da Computação por Luís Ricardo Schwengber, sob
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 5 - O NÍVEL DA LINGUAGEM DE MONTAGEM 1. INTRODUÇÃO É relativamente fácil compreender os fundamentos da programação de computadores, sob o ponto de vista da inteligibilidade dos comandos de alto
Leia maisULA Sinais de Controle enviados pela UC
Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento
Leia maisInformática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1
Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisAMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS
UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário
Leia mais5. EXPERIÊNCIAS E ANÁLISE DOS RESULTADOS. 5.1 - Os Programas de Avaliação
36 5. EXPERIÊNCIAS E ANÁLISE DOS RESULTADOS 5.1 - Os Programas de Avaliação Programas de avaliação convencionais foram utilizados para análise de diversas configurações da arquitetura. Estes programas
Leia maisTais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.
Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:
Leia mais3. Arquitetura Básica do Computador
3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,
Leia maisO que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador.
O que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador. Linguagem de Programação Uma linguagem de programação é um método padronizado para expressar
Leia maisFACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES
FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Conceito de Computador Um computador digital é
Leia maisComponentes do Computador e. aula 3. Profa. Débora Matos
Componentes do Computador e modelo de Von Neumann aula 3 Profa. Débora Matos O que difere nos componentes que constituem um computador? Princípios básicos Cada computador tem um conjunto de operações e
Leia maisHardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)
Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,
Leia mais1.1. Organização de um Sistema Computacional
1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes
Leia maisOrganização e Arquitetura de Computadores I. de Computadores
Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização Básica B de Computadores
Leia mais4 Estrutura do Sistema Operacional. 4.1 - Kernel
1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,
Leia maisIFPE. 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 maisALP Algoritmos e Programação. . Linguagens para Computadores
ALP Algoritmos e Programação Iniciação aos computadores. Linguagens para Computadores. Compiladores, Interpretadores. Ambientes de Programação 1 Linguagens para Computadores. Linguagem binária: Dispositivos
Leia maisSuporte em software para o conjunto de instruções SPARC16
1 Suporte em software para o conjunto de instruções Bruno Cardoso Lopes bruno.cardoso@gmail.com Laboratório de Sistemas de Computação Instituto de Computação UNICAMP 1 2 Agenda Introdução Trabalhos Relacionados
Leia maisEdeyson Andrade Gomes
Sistemas Operacionais Conceitos de Arquitetura Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Máquinas de Níveis Revisão de Conceitos de Arquitetura 2 Máquina de Níveis Máquina de níveis Computador
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 3 Software Prof.: Edilberto M. Silva http://www.edilms.eti.br SO - Prof. Edilberto Silva Barramento Sistemas Operacionais Interliga os dispositivos de E/S (I/O), memória principal
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisDadas a base e a altura de um triangulo, determinar sua área.
Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares
Leia maisArquitetura de Computadores RISC x CISC. Gustavo Pinto Vilar
Arquitetura de Computadores RISC x CISC Gustavo Pinto Vilar PPF / DPF Papiloscopista Policial Federal Pós-Graduado em Docência do Ensino Superior UFRJ Graduado em Ciência da Computação e Processamento
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Pipeline Slide 1 Pipeline Pipeline Hazards: Hazards Estruturais Hazards de Dados Hazards de Controle Organização e Arquitetura de Computadores I Caminho de Dados
Leia maisIntrodução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01
Introdução à Arquitetura de Computadores Renan Manola Introdução ao Computador 2010/01 Introdução Conceitos (1) Computador Digital É uma máquina que pode resolver problemas executando uma série de instruções
Leia maisSistemas Operacionais
Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura
Leia maisARQUITETURA DE COMPUTADORES - 1866
7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um
Leia maisNOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann
Universidade Federal de Santa Maria NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann O modelo (ou arquitetura) de von
Leia maisO hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware
1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador
Leia maisOrientação a Objetos
Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.
Leia mais3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:
Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de
Leia maisDisciplina: Introdução à Informática Profª Érica Barcelos
Disciplina: Introdução à Informática Profª Érica Barcelos CAPÍTULO 4 1. ARQUITETURA DO COMPUTADOR- HARDWARE Todos os componentes físicos constituídos de circuitos eletrônicos interligados são chamados
Leia maisArchC. Wesley Nunes Gonçalves
Implementação do Processador ARM7 em ArchC Wesley Nunes Gonçalves 23 de novembro de 2007 ARM7 Instruções Implementadas O ARM possui 37 registradores, sendo 31 registradores de propósito geral e 6 registradores
Leia mais28/9/2010. Unidade de Controle Funcionamento e Implementação
Arquitetura de Computadores Unidade de Controle Funcionamento e Implementação Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Operação da Unidade de Controle Unidade de controle: parte do
Leia maisProf. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO
Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.
Leia maisResolução de problemas e desenvolvimento de algoritmos
SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso
Leia maisMemória Cache. Prof. Leonardo Barreto Campos 1
Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.
Leia maisArquitetura de Computadores - Arquitetura RISC. por Helcio Wagner da Silva
Arquitetura de Computadores - Arquitetura RISC por Helcio Wagner da Silva Introdução RISC = Reduced Instruction Set Computer Elementos básicos: Grande número de registradores de propósito geral ou uso
Leia maisEsta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi
5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem
Leia maisArquiteturas RISC. (Reduced Instructions Set Computers)
Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina
Leia maisUnidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01
Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal
Leia maisSistema de Computação
Sistema de Computação Máquinas multinível Nível 0 verdadeiro hardware da máquina, executando os programas em linguagem de máquina de nível 1 (portas lógicas); Nível 1 Composto por registrados e pela ALU
Leia maisIntrodução aos Computadores
Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas
Leia maisLP 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 maisFigura 1 - O computador
Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...
Leia mais1. CAPÍTULO COMPUTADORES
1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes
Leia maisBRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:
BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma
Leia maisTabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008
Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,
Leia maisSistema Operacional Correção - Exercício de Revisão
Prof. Kleber Rovai 1º TSI 22/03/2012 Sistema Operacional Correção - Exercício de Revisão 1. Como seria utilizar um computador sem um sistema operacional? Quais são suas duas principais funções? Não funcionaria.
Leia maisPipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir.
O throughput de um pipeline é determinado pela freqüência com que uma instrução sai do pipeline Todos os estágios devem estar prontos ao mesmo tempo para prosseguir O tempo requerido para mover uma instrução
Leia maisAULA4: PROCESSADORES. Figura 1 Processadores Intel e AMD.
AULA4: PROCESSADORES 1. OBJETIVO Figura 1 Processadores Intel e AMD. Conhecer as funcionalidades dos processadores nos computadores trabalhando suas principais características e aplicações. 2. INTRODUÇÃO
Leia maisTecnologia da Informação. Prof Odilon Zappe Jr
Tecnologia da Informação Prof Odilon Zappe Jr Conceitos básicos de informática O que é informática? Informática pode ser considerada como significando informação automática, ou seja, a utilização de métodos
Leia maisA Linguagem Algorítmica Estrutura de Repetição. Ex. 2
Estrutura de Repetição. Ex. 2 A ESTRUTURA Enquanto faça{} É MELHOR UTILIZADA PARA SITUAÇÕES ONDE O TESTE DE CONDIÇÃO (V OU F) PRECISA SER VERIFICADO NO INÍCIO DA ESTRUTURA DE REPETIÇÃO.
Leia maisMáquina Multinível. Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa.
Máquina Multinível Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Uma instrução pode ser definida como um comando para o processador.
Leia maisBARRAMENTO DO SISTEMA
BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade
Leia maisO processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.
O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. Unidade aritmética e lógica - Executa operações aritméticas (cálculos);
Leia maisCapítulo 3 Processadores de Propósito Geral: Software
Capítulo 3 Processadores de Propósito Geral: Software Prof. Romis Attux EA075 2015 Obs: Os slides são parcialmente baseados nos dos autores do livro texto Processadores de Propósito Geral Um processador
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal
Leia maisIntrodução a Informática. Prof.: Roberto Franciscatto
Introdução a Informática Prof.: Roberto Franciscatto 3.1 EXECUÇÃO DAS INSTRUÇÕES A UCP tem duas seções: Unidade de Controle Unidade Lógica e Aritmética Um programa se caracteriza por: uma série de instruções
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário
Leia mais1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos
1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos Já estudamos anteriormente que os processadores funcionam (ou melhor, o seu hardware funciona) através de ordens simples e básicas,
Leia maisGerência de Entrada/Saída
Gerência de Entrada/Saída Prof Clodoaldo Ap Moraes Lima 1 Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar sua interação com o mundo externo
Leia maisArquitetura de Computadores - Princípio de Funcionamento da CPU. Por Helcio Wagner da Silva
Arquitetura Computadores - Princípio Funcionamento da CPU Por Helcio Wagner da Silva Arquitetura Von Neumann Memória Principal CPU ULA UC Dispositivo E/S ULA : Unida Lógica Aritmética UC : Unida Controle
Leia maisIntrodução a Java. Hélder Nunes
Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais
Leia maisFundamentosemInformática
FundamentosemInformática 04 Software Conteúdo Conceito de Software Classificação de Softwares Conceito de Sistema Operacional(S.O.) FunçõesBásicasdeumS.O. um Arquivos Atributos Diretórios 1 -Conceitos
Leia maisULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h
ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Sumário Unidade Lógica Aritmetrica Registradores Unidade Lógica Operações da ULA Unidade de Ponto Flutuante Representação
Leia maisAula 14: Instruções e Seus Tipos
Aula 14: Instruções e Seus Tipos Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Instruções e Seus Tipos FAC 1 / 35 Conceitos Básicos Diego Passos
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal
Leia mais5 Mecanismo de seleção de componentes
Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações
Leia maisArquitetura 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 maisNotas da Aula 15 - Fundamentos de Sistemas Operacionais
Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos
Leia maisIntrodução à Arquitetura de Computadores
1 Introdução à Arquitetura de Computadores Hardware e software Organização de um computador: Processador: registradores, ALU, unidade de controle Memórias Dispositivos de E/S Barramentos Linguagens de
Leia maisFeature-Driven Development
FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por
Leia maisMANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC GOVERNO FEDERAL SOFTWARE PÚBLICO
MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC Configurador Automático e Coletor de Informações Computacionais GOVERNO FEDERAL SOFTWARE PÚBLICO software livre desenvolvido pela Dataprev Sistema de Administração
Leia maisINDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM...
1 de 30 INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 3.1. ONDE SE DEVE INSTALAR O SERVIDOR BAM?... 4 3.2. ONDE SE DEVE INSTALAR O PROGRAMADOR REMOTO BAM?... 4 3.3. COMO FAZER
Leia maisIntrodução. Introdução. Introdução. Organização Estruturada de Computadores. Introdução. Máquinas Multiníveis
Ciência da Computação Arq. e Org. de Computadores Máquinas Multiníveis Prof. Sergio Ribeiro Computador digital máquina que resolve problemas executando uma série de instruções. Programa conjunto de instruções
Leia maisSistemas Numéricos bit / Byte BIT BYTE. Prof. Celso Candido ADS / REDES / ENGENHARIA
BIT BYTE 1 BIT / BYTE Toda informação introduzida em um computador precisa ser entendida pela máquina para que possa ser corretamente interpretada e processada. O computador armazena e movimenta as informações
Leia maisO cursor se torna vermelho e uma Paleta de Edição contendo as instruções mais utilizadas é apresentada.
Editor de Ladder para VS7 Versão Teste O editor de ladder é um software de programação que permite que o VS7 e o µsmart sejam programados em linguagem de contatos. Esse editor está contido na pasta Público
Leia maisTecnologia da Informação. Visão Geral sobre Informática
9/18/2014 1 Tecnologia da Informação Visão Geral sobre Informática Trabalho compilado da internet Prof. Claudio Passos 9/18/2014 2 PROBLEMAS ADMINISTRATIVOS Volume de Informação Tempo de Resposta Aumento
Leia maisSistemas Operacionais Processos e Threads
Sistemas Operacionais Processos e Threads Prof. Marcos Monteiro, MBA http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br 1 Estrutura de um Sistema Operacional 2 GERÊNCIA DE PROCESSOS Um processo
Leia maisORGANIZAÇÃO DE COMPUTADORES MÓDULO 8
ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 Índice 1. A Organização do Computador - Continuação...3 1.1. Processadores - II... 3 1.1.1. Princípios de projeto para computadores modernos... 3 1.1.2. Paralelismo...
Leia maisConceitos Importantes:
Conceitos Importantes: Variáveis: Por Flávia Pereira de Carvalho, 2007 i O bom entendimento do conceito de variável é fundamental para elaboração de algoritmos, consequentemente de programas. Uma variável
Leia maisINTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E 33 2015-2 AULA TEÓRICA 2 PROF. MARCELO LUIZ SILVA (R E D)
Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM INTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E 33 2015-2 1 AULA TEÓRICA 2
Leia maisSoftware automatizado para controle de consultas da clínica de fisioterapia
Software automatizado para controle de consultas da clínica de fisioterapia Jeverson Siqueira 1, Wallace Caldeira 1, Jorge Aikes Junior 1 1 Ciência da Computacão Faculdades Anglo Americano de Foz do Iguaçu
Leia maisSistemas de Informação e o Computador
Índice Noção de Sistema de Informação O Sistema de Informação no Escritório A palavra Informática é derivada de duas outras palavras associadas de escritório a ela, a primeira é informação e a segunda
Leia maiswww.leitejunior.com.br 29/06/2012 14:30 Leite Júnior QUESTÕES CESPE BACKUP
QUESTÕES CESPE BACKUP QUESTÃO 01 - Analise as seguintes afirmações relativas a cópias de segurança. I. No Windows é possível fazer automaticamente um backup, em um servidor de rede, dos arquivos que estão
Leia maisSistema Banco de Preços Manual do Usuário OBSERVATÓRIO
Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO da Despesa Pública 1 Sumário O Banco de Preços... 3 Acessando o Banco de Preços... 4 Funções do Banco de Preços... 5 Gerar Preço de Referência...
Leia maisGeração de código. Ivan Ricarte INTRODUÇÃO À COMPILAÇÃO
Geração de código Ivan Ricarte 2008 Sumário Geração de código intermediário Código de três endereços Notação pós-fixa Otimização de código Heurísticas de otimização Geração de código em linguagem simbólica
Leia maisOrganização e Arquitetura de Computadores I. de Computadores
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização Básica B de (Parte V, Complementar)
Leia mais