Nível da Arquitetura do Conjunto das Instruções
|
|
- Irene Brunelli Canedo
- 8 Há anos
- Visualizações:
Transcrição
1 Nível da Arquitetura do Conjunto das Instruções (Aula 13) Fluxo de Controle
2 Fluxo Seqüencial de Controle e Desvios (1) Fluxo de Controle: É a seqüência na qual instruções são dinamicamente executadas Isto é, a ordem na qual instruções são executadas no decorrer da execução de um programa. A execução da maioria das instruções não altera o fluxo de controle. Em um fluxo de controle normal as instruções são buscadas em palavras consecutivas da memória Após a execução de uma instrução, a próxima instrução é buscada na memória, incrementando o PC O registrador PC é acrescido de n n = tamanho da instrução que acabou de ser executada O valor do PC é praticamente uma função linear do tempo 2
3 Fluxo Seqüencial de Controle e Desvios (2) Desvios Quando existem desvios, o valor do PC não é mais uma função monótona do tempo! Tempo Tempo Variação do PC em função do tempo (a) sem desvios e (b) com desvios 3
4 Fluxo Seqüencial de Controle e Desvios (3) Situações em que há que alteração do fluxo de controle de um programa Uso de instruções de desvios (jumps) Chamadas a procedimentos (ex.: CALL) Interrupções e traps Por exemplo, procedimento corrente pára de ser executado e se inicia a execução de um novo procedimento Quando ocorre um desvio em um programa a próxima instrução a ser buscada não é mais a instrução na posição consecutiva da memória E sim a instrução armazenada no endereço de destino do desvio. 4
5 Procedimentos (1) Procedimento é uma seqüência de instruções que pode ser executada várias vezes a partir de diferentes partes de um programa Procedimento X Desvio O procedimento, quando termina sua tarefa, retorna o controle para o comando ou instrução seguinte à instrução de chamada. 5
6 Procedimentos (2) CALL: Recebe como parâmetro o endereço da primeira instrução do procedimento. A execução da chamada desvia o fluxo de controle para a primeira instrução do procedimento. RET: última instrução do procedimento Sua execução desvia o fluxo para a instrução seguinte à chamada corrente do procedimento correspondente. 6 Prof a
7 Procedimentos (3) Para poder retornar, é preciso armazenar o endereço de retorno do procedimento em algum lugar. A pilha é o lugar mais indicado para armazenar o endereço de retorno Permite implementar procedimentos que chamam outros procedimentos. 7
8 Procedimentos (4) Pilha Variáveis Locais: São variáveis que podem ser acessadas de dentro de procedimentos, mas deixam de ser visíveis (acessíveis) quando houver o retorno do procedimento. Não é viável armazenar variáveis locais em endereços absolutos. Há problemas em chamadas recursivas! Pilha: Uma área na memória reservada para o armazenamento de variáveis locais endereço de retorno parâmetros de um procedimento (pode armazenar outras informações). 8
9 Procedimentos (5) Pilha Para cada novo procedimento chamado, é criado um Quadro no topo da pilha. Para a manipulação da pilha, em geral, existem dois ponteiros: SP Stack Pointer (Aponta para o topo da pilha) Na arquitetura Intel: ESP (Stack Pointer) FP Frame Pointer (Apontador de Quadro Aponta para a base do Quadro corrente). Na arquitetura Intel: EBP (Base Pointer) Quadro 9
10 Procedimentos (6) void main (){ printf ( COMEÇO ); func (3,1,3); printf ( FIM ); } void func (int n, int i, int j){ int k = n 1 ; if ( k > 1 ) { func (k, i, j); } else printf ( Ultimo FUNC ); } 10
11 Procedimento Recursivo (1) Procedimento Recursivo Procedimento que pode chamar a si próprio (de maneira direta ou indireta). Destacável, pois ajuda no entendimento da mecânica de implementação de chamadas a procedimentos e ilustra o papel das variáveis locais. Torres de Hanói Problema simples, mas ajuda a ilustrar o conceito de recursão. 11
12 Procedimento Recursivo (2) Torres de Hanói Em um certo mosteiro na cidade de Hanói, foram encontradas três hastes de ouro. Em torno da primeira haste havia um conjunto de 64 discos de ouro, cada um deles com deles com um buraco no centro, que permitia que eles fossem inseridos em qualquer das hastes. Cada um desses discos tinha um diâmetro ligeiramente menor do que aquele que estava encaixado na posição imediatamente abaixo da ocupada por ele. A segunda e a terceira hastes estavam inicialmente vazias. Os monges do mosteiro gastavam grande parte do seu tempo transferindo todos os discos da primeira para a terceira haste, um disco de cada vez, mas de maneira que nunca um disco maior ficasse em cima de um menor. A segunda haste é usada como um caminho intermediário dos discos que saem da primeira para a terceira haste Os monges afirmavam que, quando terminassem a transferência, o mundo iria acabar! 12
13 Procedimento Recursivo (3) Torres de Hanói (cont.) Haste 1 Haste 2 Haste 3 Para n = 5 discos 13
14 Procedimento Recursivo (4) A solução para 3 discos (da haste 1 p/ a 3) Haste 1 Haste 2 Haste 3 14
15 Procedimento Recursivo (7) Torres de Hanói (cont.) A solução para o problema de mover n discos da haste número 1 para a haste número 3 consiste em primeiro mover n 1 discos da haste 1 para a haste 2, depois, mover 1 disco da haste 1 para a haste 3, então, mover n 1 discos da haste 2 para a haste 3 15
16 Procedimento Recursivo (8) Torres de Hanói (cont.) 16
17 Procedimento Recursivo (9) Torres de Hanói (cont.) 17
18 Procedimento Recursivo (10) Torres de Hanói (cont.) Para resolver o problema, define-se um procedimento para mover n discos da haste i para a haste j : towers(n, i, j) Se o valor de n for 1, a solução é trivial movendo um disco da haste i para a haste j. Se n for diferente de 1, a solução é dividida em três partes, cada uma com uma chamada recursiva. towers (n-1, i, k) towers (1, i, j) towers (n-1, k, j) 18
19 Procedimento Recursivo (11) Torres de Hanói (cont.) towers(3, 1, 3) towers(2, 1, 2) towers(1, 1, 3) towers(2, 2, 3) Prof a Roberta L.G. - LPRM/DI/UFES
20 Procedimento Recursivo (12) Torres de Hanói (cont.) towers(3, 1, 3) towers(2, 1, 2) towers(1, 1, 3) towers(1, 1, 3) towers(1, 1, 2) towers(1, 3, 2) towers(2, 2, 3) towers(1, 2, 1) towers(1, 2, 3) towers(1, 1, 3) 20
21 Procedimento Recursivo (13) Torres de Hanói (n inicial sendo 3) Suponha a chamada torres(3, 1, 3). Outras 3 chamadas são geradas: torres(2, 1, 2); torres(1, 1, 3); torres(2, 2, 3) 21
22 Procedimento Recursivo (14) Torres de Hanói Qual será o impacto das chamadas towers(...) na pilha? Assuma uma palavra de 32 bits e uma célula de 1 byte. Cada chamada a towers(...) implica na criação de um quadro na pilha Cada quadro contém (neste ordem) Os parâmetros passados à chamada O endereço de retorno da chamada O valor do FP antigo As variáveis locais O quadro mais recente é o quadro corrente A pilha cresce para cima (dos endereços de memória baixos para os endereços altos) 22
23 Procedimento Recursivo (15) Torres de Hanói towers(1,1,3) towers(1,1,2) towers(2,1,2) towers (3,1,3) 23
24 Procedimento Recursivo (16) Torres de Hanói Cada chamada a procedimento adiciona um novo quadro à pilha e cada retorno de procedimento remove um quadro da pilha. A primeira chamada a torres coloca na pilha os valores de n, i e j, e depois executa a instrução CALL, que: coloca o endereço de retorno na pilha armazena o valor antigo de FP na pilha, copia o conteúdo de SP em FP (incrementado de 4) avança o ponteiro de topo de pilha (SP) de maneira a alocar a memória para as variáveis locais SP = SP + [tamanho do quadro] O tamanho do quadro depende da quantidade de parâmetros e de variáveis locais do procedimento 24
25 Exemplo Detalhado: Torres de Hanói Para casa: página 241 do livro texto. (Fig. 5.36) Prof a Roberta L.G. - LPRM/DI/UFES
26 Traps (1) Uma Trap é uma chamada automática de procedimento Causada pela ocorrência de alguma condição especial (exceção) na execução de um programa Detectada pelo hardware ou pelo microprograma Também pode ser chamada de Exceção (Exception) Durante a execução de um programa, uma trap pode ser gerada, por exemplo, quando ocorre um: Overflow em operações aritméticas inteiras e de ponto flutuante Violação de proteção de memória Estouro de capacidade da pilha Divisão por zero etc. 26
27 Traps (2) Quando há a ocorrência de uma trap, o fluxo de controle é alterado para uma posição fixa da memória Nesse endereço fixo, há uma instrução de desvio para um Procedimento de Tratamento do Trap Este procedimento (ou rotina) executa as ações convenientes Ex: a impressão de uma mensagem de erro 27
28 Traps (3) TRAP MUL FFFF Programa de usuário PC CALL 00B2 Sistema Operacional OUT R1, B2 Rotina de tratamento de trap Prof a Roberta L.G. - LPRM/DI/UFES
29 Traps (4) Os traps são causados pelo próprio programa Um trap é iniciado por algum evento ou condição excepcional, causado pelo própria execução do programa Diferença essencial entre um trap e uma interrupção Traps são síncronos Os traps acontecem sincronamente porque resultam da execução do próprio programa enquanto Se um programa for processado milhões de vezes, com as mesmas entradas, os traps vão ocorrer nos mesmos pontos da execução Interrupções são assíncronas As interrupções podem ser causadas por agentes externos (Ex.: o apertar de uma tecla do teclado). 29
30 Interrupções Interrupções são modificações no fluxo de controle de um programa causadas por um evento externo ao processamento do programa Geralmente eventos relacionados a operações de E/S. As interrupções (como as traps) também transferem o controle para uma Rotina de Serviço/Tratamento de Interrupção, que executa ações apropriadas O endereço da primeira instrução da RSI está armazenado numa estrutura denominada Vetor de Interrupção. Vetor de Interrupção RSI RSI
31 Processamento de Interrupções (1) 1 O controlador de um dispositivo ativa uma linha de interrupção no barramento do sistema para iniciar a seqüência de interrupção. 2 O processador ativa no barramento um sinal de reconhecimento da interrupção. 3 O dispositivo envia então um valor inteiro indicando a entrada do Vetor de Interrupções (i.e. o índice). 4- Os conteúdos do PC e do PSW são salvos na pilha. Os valores dos registradores da CPU são temporariamente armazenados (em uma tabela ou na própria pilha) 5 É feita uma chamada à rotina de tratamento de interrupção 6 O tratamento da interrupção, indicado pelo índice no vetor de interrupções, é realizado. 7 Todos os valores originais dos registradores são restaurados. 8 O processador continua o processamento do programa como se nada tivesse acontecido. Palavra-Chave: Transparência Quando ocorre uma interrupção, algumas ações são tomadas e há execução de código; porém, quando tudo termina, o processador deve voltar exatamente ao mesmo estado que ele tinha antes da interrupção. 31
32 Processamento de Interrupções (2) 32
33 Processamento de Interrupções (3) Exemplo no slide anterior : computador com três dispositivos de E/S, A, B e C, cada um com prioridade 2, 4 e 5 respectivamente. O programa do usuário, inicialmente em execução, possui prioridade zero. O programa do usuário é interrompido pelo dispositivo A. O estado atual da máquina é empilhado e a RSI de A é executada. RSI de A é interrompida pelo dispositivo C (prioridade maior). O estado atual da máquina é empilhado e a RSI de C é executada. Dispositivo B gera interrupção. Como a prioridade do dispositivo B é menor que a prioridade do dispositivo C, o seu pedido de interrupção fica pendente e a RSI de C continua. Quando a RSI de C termina, o estado da RSI de A é desempilhado e nesse mesmo instante a interrupção de B recebe acknowledge. O estado atual da máquina (correspondente à RSI de A) é empilhado novamente. E a RSI de B é executada. Ao fim da RSI de B, o estado da RSI de A é desempilhado e esta rotina continua até o fim. Ao fim da RSI de A, o estado do programa do usuário é desempilhado e o programa continua a sua execução a partir do ponto interrompido, como se nada tivesse ocorrido. 33
34 Referências Andrew S. Tanenbaum, Organização Estruturada de Computadores, 5ª edição, Prentice-Hall do Brasil,
Nível da Arquitetura do Conjunto das Instruções
Fluxo Seqüencial de Controle e Desvios (1) Nível da Arquitetura do Conjunto das Instruções (Aula 13) Fluxo de Controle Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Fluxo
Leia maisBACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia
O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos
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 maisCapítulo 4 Gerenciamento de Memória
Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição
Leia maisARQUITETURA DE COMPUTADORES
1 ARQUITETURA DE COMPUTADORES U C P Prof. Leandro Coelho Plano de Aula 2 Aula Passada Definição Evolução dos Computadores Histórico Modelo de Von-Neumann Básico CPU Mémoria E/S Barramentos Plano de Aula
Leia maisA Pilha. Aula 02. DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria
Engenharia de CONTROLE e AUTOMAÇÃO A Pilha Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br 1/5
Leia maisEntradas/Saídas. Programação por espera activa Programação por interrupções
Entradas/Saídas Programação por espera activa Programação por interrupções Programação por espera activa 1. O programa lê o estado do periférico: CPU pede ao controlador (IN) o valor no registo ESTADO
Leia maisMecanismo de Interrupção
Mecanismo de Interrupção Paralelismo de Operação Num sistema multiprogramado a CPU está sempre apta a compartilhar o seu tempo entre os vários programas e os diferentes dispositivos periféricos que necessitam
Leia maisDispositivos de Entrada e Saída
SEL-0415 Introdução à Organização de Computadores Dispositivos de Entrada e Saída Aula 9 Prof. Dr. Marcelo Andrade da Costa Vieira ENTRADA e SAÍDA (E/S) (I/O - Input/Output) n Inserção dos dados (programa)
Leia maisRecursividade. Aula 9
Recursividade Aula 9 Em matemática vários objetos são definidos apresentando-se um processo que os produz. Ex PI (circunferência/diâmetro) Outra definição de um objeto por um processo é o fatorial de um
Leia maisIntrodução à Sistemas Operacionais. Glauber Magalhães Pires
Introdução à Sistemas Operacionais Glauber Magalhães Pires Agenda O que são sistemas operacionais? Histórico Primeira geração (1945-1955) Segunda geração (1955-1965) Terceira geração (1965-1980) Quarta
Leia maisSistemas Operacionais
Sistemas Prof. Ms. Márcio Andrey Teixeira A Caracterização dos Sistemas Funções do S.O Administração de Processos Administração da Memória Principal Administração do Armazenamento Secundário Administração
Leia mais2. A influência do tamanho da palavra
1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante a execução de
Leia maisarmazenamento (escrita ou gravação (write)) recuperação (leitura (read))
Memória Em um sistema de computação temos a UCP se comunicando com a memória e os dispositivos de E/S. Podemos fazer um paralelo do acesso à memória com um carteiro entregando cartas ou um acesso à biblioteca.
Leia maisGABARITO COMENTADO SISTEMAS OPERACIONAIS. PROF. Cláudio de C. Monteiro, Evanderson S. de Almeida, Vinícius de M. Rios
CURSO - TADS TURMA 2008.1 2 PERÍODO 3 MÓDULO AVALIAÇÃO MP2 DATA 02/10/2008 SISTEMAS OPERACIONAIS 2008/2 GABARITO COMENTADO SISTEMAS OPERACIONAIS PROF. Cláudio de C. Monteiro, Evanderson S. de Almeida,
Leia maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: O Computador como uma Máquina Multinível (cont.) José Gonçalves - LPRM/DI/UFES Introdução à Engenharia de Computação Máquina Multinível Moderna Figura 1 Máquina
Leia maisRedes de Computadores II
Redes de Computadores II UDP Prof: Ricardo Luís R. Peres Tem como objetivo prover uma comunicação entre dois processos de uma mesma sessão que estejam rodando em computadores dentro da mesma rede ou não.
Leia maisSistemas Operacionais
Sistemas Operacionais GERÊNCIA DO PROCESSADOR MACHADO/MAIA: CAPÍTULO 08 Prof. Pedro Luís Antonelli Anhanguera Educacional Gerenciamento do Processador A gerência do processador pode ser considerada a atividade
Leia maisFilas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário
Filas Fila é um tipo de lista linear onde as inserções são realizadas num extremo (final da Fila) e as remoções restritas ao outro (começo da Fila). O primeiro a entrar é o primeiro a sair e último a entrar
Leia maisSistemas Operacionais I
Sistemas Operacionais I Material Baseado no Livro Sistemas Operacionais Modernos 2ª. Ed. da Pearson Education 1 Agenda Deadlocks Gerenciamento de Memória 2 1 DEADLOCKS 3 Recursos Exemplos de recursos de
Leia maisSistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas de Computação O sistema operacional precisa garantir a operação correta do sistema de computação. Operação
Leia maisCAPÍTULO 3 NÍVEL ISA. 3.1 Introdução ao Nível de Arquitetura do Conjunto de Instruções
CAPÍTULO 3 NÍVEL ISA 3.1 Introdução ao Nível de Arquitetura do Conjunto de Instruções O Nível de Arquitetura do Conjunto de Instruções (ISA - Instruction Set Architecture) é a interface entre software
Leia maisCapítulo 4 Gerenciamento de Memória
Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição
Leia maisGerência de Memória. Paginação
Gerência de Memória Paginação Endereçamento Virtual (1) O programa usa endereços virtuais É necessário HW para traduzir cada endereço virtual em endereço físico MMU: Memory Management Unit Normalmente
Leia maisMétodos Computacionais. Fila
Métodos Computacionais Fila Definição de Fila Fila é uma estrutura de dados dinâmica onde: Inserção de elementos se dá no final e a remoção no início O primeiro elemento que entra é o primeiro que sai
Leia maisO processador é um dos elementos componentes do computador moderno, sendo responsável pelo gerenciamento de todo o computador.
Resumo 01 O que é um processador? O processador é um dos elementos componentes do computador moderno, sendo responsável pelo gerenciamento de todo o computador. Os processadores atualmente são encapsulados
Leia maisOrganização de Computadores 1
Organização de Computadores 1 5 CONJUNTO DE INSTRUÇÕES Prof. Luiz Gustavo A. Martins Introdução O que é um conjunto de instruções? Coleção completa das instruções que a CPU é capaz de executar (entende).
Leia maisUnidade 5: Sistemas de Representação
Arquitetura e Organização de Computadores Atualização: 9/8/ Unidade 5: Sistemas de Representação Números de Ponto Flutuante IEEE 754/8 e Caracteres ASCII Prof. Daniel Caetano Objetivo: Compreender a representação
Leia maisENTRADA E SAÍDA DE DADOS
ENTRADA E SAÍDA DE DADOS Os dispositivos de um computador compartilham uma única via de comunicação BARRAMENTO. BARRAMENTO Elétrica/Mecânica + Protocolo. GERENCIAMENTO DE E/S O controle da troca de dados
Leia maisAlgoritmos e Estrutura de Dados. Prof. Tiago A. E. Ferreira
Algoritmos e Estrutura de Dados Aula 7 Estrutura de Dados: Listas Prof. Tiago A. E. Ferreira Introdução Um das formas mais usadas para se manter dados agrupados é a lista Lista de compras, itens de estoque,
Leia maisUnidade: Unidade Lógica e Aritmética e Registradores. Unidade I:
Unidade: Unidade Lógica e Aritmética e Registradores Unidade I: 0 Unidade: Unidade Lógica e Aritmética e Registradores UNIDADE LÓGICA E ARITMÉTICA E REGISTRADORES O Processador é um chip com milhares de
Leia maisMontagem e Manutenção. Luís Guilherme A. Pontes
Montagem e Manutenção Luís Guilherme A. Pontes Introdução Qual é a importância da Montagem e Manutenção de Computadores? Sistema Binário Sistema Binário Existem duas maneiras de se trabalhar e armazenar
Leia maisEntradas/Saídas. Programação por interrupções Conceitos gerais Programação da porta série Transmissão
Entradas/Saídas Programação por interrupções Conceitos gerais Programação da porta série Transmissão Problemas a resolver Como identificar a interrupção? Motivo da interrupção Que rotina executar? Como
Leia maisTrabalho 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 maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: Organização Básica de um Computador Digital Introdução à Engenharia de Computação 2 Componentes de um Computador Computador Eletrônico Digital É um sistema
Leia maisDescrição e análise da implementação em Assembly MIPS da função itoa
Descrição e análise da implementação em Assembly MIPS da função itoa Alana Rocha 1, Guilherme Alves 2, Guilherme Nunes 3 e Luiz Guilherme 4 Objetivo e visão geral do documento Este documento tem o objetivo
Leia maisSistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas Operacionais Um sistema operacional fornece o ambiente no qual os programas são executados. Internamente,
Leia maisBusca em Memória. Secundária
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Busca em Memória Secundária e Gomes da Costa yandre@din.uem.br 1 Busca de um item em uma massa de dados que não cabe na memória principal; Procura-se
Leia maisSistemas Operativos I
Arquitectura de um Computador Maria João Viamonte / Luis Lino Ferreira Fevereiro de 2006 Sumário Arquitectura de um Computador Estrutura de I/O Estrutura de Armazenamento Hierarquia de Armazenamento Protecção
Leia maisProcessos. Estruturas de Controle
Processos Estruturas de Controle Processos e Recursos (1) LPRM/DI/UFES 2 Processos e Recursos (2) O S.O. gerencia recursos computacionais em benefício dos diversos processos que executam no sistema. A
Leia maisSistema de Memórias de Computadores
Sistema de Memórias de Computadores Uma memória é um dispositivo que permite um computador armazenar dados temporariamente ou permanentemente. Sabemos que todos os computadores possuem memória. Mas quando
Leia mais2. NÍVEL DE SISTEMA OPERACIONAL
2. NÍVEL DE SISTEMA OPERACIONAL Nos períodos anteriores foram mostrados os níveis iniciais da organização de um computador, quando vimos em Circuitos Digitais os detalhes do Nível 0 (zero) de Lógica Digital.
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Suporte do Sistema Operacional Material adaptado, atualizado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Objetivos
Leia maisConceitos Básicos sobre Sistemas Operacionais
Conceitos Básicos sobre Sistemas Operacionais Ivanovitch Medeiros Dantas da Silva Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação DCA0800 - Algoritmos e
Leia maisEstruturas de Dados Aula 15: Árvores 17/05/2011
Estruturas de Dados Aula 15: Árvores 17/05/2011 Fontes Bibliográficas Livros: Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo 13; Projeto de Algoritmos (Nivio Ziviani): Capítulo
Leia maisGerenciamento de memória
Na memória principal ficam todos os programas e os dados que serão executados pelo processador. Possui menor capacidade e custo maior. S.O buscam minimizar a ocupação da memória e otimizar sua utilização.
Leia maisProcessos. Estados principais de um Processo: Contexto de um Processo. Nível de um Processo. http://www.dei.isep.ipp.pt/~orlando/so2/processos.
Página 1 de 5 Processos Consiste num método de descrição das actividades de um sistema operativo; Todo o software incluído no sistema operativo é organizado num grupo de programas executáveis. Cada um
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 maisSistemas Operacionais
BCC264 Sistemas Operacionais Estruturas de Sistemas Computacionais Prof. Charles Garrocho Arquitetura geral de Sistemas de Computação atuais Operação de sistemas de computação CPU e dispositivos de E/S
Leia maisCES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra
CES-11 Algoritmos e Estruturas de Dados Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CES-11 Pilhas Filas Deques Pilhas,,f filas e deques Vimos que as listas lineares admitem inserção e eliminação
Leia maisIntrodução à Arquitetura e Linguagem Assembly de Processadores IA-32
Introdução à Arquitetura e Linguagem Assembly de Processadores IA-32 Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007 CHIP Ano MHz Transistors Mem 8086 1978 5
Leia maisO Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais.
MICROSOFT WINDOWS O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais. Apresentaremos a seguir o Windows 7 (uma das versões do Windows)
Leia maisLinguagem de Programação
Linguagem de Programação Introdução a Linguagem C Princípios de Programação em C Gil Eduardo de Andrade Conceitos Iniciais: Linguagem C Introdução É uma linguagem estruturada; Foi desenvolvida na década
Leia maisSOP - 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 maisMemória - Gerenciamento. Sistemas Operacionais - Professor Machado
Memória - Gerenciamento Sistemas Operacionais - Professor Machado 1 Partes físicas associadas à memória Memória RAM Memória ROM Cache MMU (Memory Management Unit) Processador Tabela de Páginas TLB 2 Conceitos
Leia maisGerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger
Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger O controle da entrada e saída (E/S ou I/O, input/output) de dados dos dispositivos é uma das funções principais de um sistema operacional.
Leia maisVisão Geral de Sistemas Operacionais
Visão Geral de Sistemas Operacionais Sumário Um sistema operacional é um intermediário entre usuários e o hardware do computador. Desta forma, o usuário pode executar programas de forma conveniente e eficiente.
Leia maisOrganização de Computadores 1. Prof. Luiz Gustavo A. Martins
Organização de Computadores 1 1 - INTRODUÇÃO Prof. Luiz Gustavo A. Martins Arquitetura Define os elementos que impactuam diretamente na execução lógica do programa. Corresponde aos atributos visíveis veis
Leia maisComputadores de Programação (MAB353)
Computadores de Programação (MAB353) Aula 7: 29 de abril de 2010 1 2 Subrotinas Um procedimento ou função é uma subrotina armazenada que executa uma tarefa específica baseada nos parâmetros de entrada
Leia maisGerenciamento Básico B de Memória Aula 07
BC1518-Sistemas Operacionais Gerenciamento Básico B de Memória Aula 07 Prof. Marcelo Z. do Nascimento marcelo.nascimento@ufabc.edu.br Roteiro Introdução Espaço de Endereçamento Lógico vs. Físico Estratégias
Leia maisINF 1010 Estruturas de Dados Avançadas
INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 1 Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um
Leia maisSistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 04 - Concorrência. Cursos de Computação
Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 04 - Concorrência Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC, 2007. Mono x Multiprogramação
Leia maisCapítulo 7 Nível da Linguagem Assembly
Capítulo 7 Nível da Linguagem Assembly Presente em quase todos os computadores modernos. Implementado por tradução. Linguagem fonte => Linguagem alvo. O programa no arquivo fonte não é executado diretamente
Leia maisEstruturas de Dados. Parte dos slides a seguir são adaptações, extensões e traduções para C dos originais:
Estruturas de Dados Pilhas Prof. Ricardo J. G. B. Campello Créditos Parte dos slides a seguir são adaptações, extensões e traduções para C dos originais: disponíveis em http://ww3.datastructures.net/ cedidos
Leia maisSistemas Operacionais Arquivos. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)
Sistemas Operacionais Arquivos Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Copyright Carlos Ferraz Cin/UFPE Implementação do Sistema de Arquivos Sistemas de arquivos são
Leia maisImplementando uma Classe e Criando Objetos a partir dela
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe
Leia maisInterrupções. As interrupções são casos especiais de chamadas de procedimentos.
Interrupções Uma interrupção é equivalente a uma chamada de procedimento. A chamada é equivalente a um CALL gerado pela execução de uma instrução. As interrupções são casos especiais de chamadas de procedimentos.
Leia maisMétodos de Sincronização do Kernel
Métodos de Sincronização do Kernel Linux Kernel Development Second Edition By Robert Love Tiago Souza Azevedo Operações Atômicas Operações atômicas são instruções que executam atomicamente sem interrupção.
Leia maisAlgoritmos e Programação
Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti
Leia mais3.4 Representação física: alocação encadeada (dinâmica) Ptlista - variável ponteiro externa que indica o início da lista.
3.4 Representação física: alocação encadeada (dinâmica) As posições de memória são alocadas (ou desalocadas) na medida em que são necessárias (ou dispensadas). Os nós de uma lista encontram-se aleatoriamente
Leia maisNotas da Aula 6 - Fundamentos de Sistemas Operacionais
1. Monitores Notas da Aula 6 - Fundamentos de Sistemas Operacionais Embora os semáforos sejam uma boa solução para o problema da exclusão mútua, sua utilização não é trivial. O programador é obrigado a
Leia mais2 Formalidades referentes ao trabalho
Bacharelado em Ciência da Computação DINF / UFPR Projetos Digitais e Microprocessadores 1 o Semestre de 2006 MICO-v12.r0 07/03/2006 Profs. Luis Allan Künzle e Armando Luiz Nicolini Delgado Atenção: Este
Leia maisProgramação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada
Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 3 - O NÍVEL DA ARQUITETURA DO CONJUNTO DAS INSTRUÇÕES (ISA) (Nível Convencional de Máquina) 1. INTRODUÇÃO Este é o nível responsável por fazer a ligação entra a parte de hardware e a parte de software
Leia maisSoftware Básico. Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly. Prof. MSc. Hugo Vieira L. Souza
Software Básico Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly Prof. MSc. Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão reservados para o todo
Leia maisSISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS. 2º TRIMESTRE Patrícia Lucas
SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS 2º TRIMESTRE Patrícia Lucas O QUE SÃO SISTEMAS OPERACIONAIS? Um sistema operacional é um conjunto de rotinas executado pelo processador, de forma semelhante
Leia maisTecnologia da Informação. Prof Odilon Zappe Jr
Tecnologia da Informação Prof Odilon Zappe Jr Compatibilidade O termo compatibilidade refere-se aos diferentes componentes do computador (hardware e software) que são convenientes para o emprego das funções
Leia maisdiscos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco
AULA 04 - Estruturas Sistemas Computacionais Nosso objetivo é apenas revisar conceitos relacionados a estrutura geral um sistema computacional para pois explicarmos os talhes operação do sistema e como
Leia maisComplexidade de Algoritmos
Complexidade de Algoritmos Complexidade de Algoritmos Envolvendo Estruturas de Dados Elementares Prof. Osvaldo Luiz de Oliveira Estas anotações devem ser complementadas por apontamentos em aula. Vetor
Leia maisParalelismo a Nível de Instrução
Paralelismo a Nível de Instrução É possível obter maior desempenho computacional com: tecnologias mais avançadas, tais como circuitos mais rápidos; melhor organização da CPU, tais como o uso de múltiplos
Leia maisÁrvores B. Hashing. Estrutura de Dados II Jairo Francisco de Souza
Árvores B Hashing Estrutura de Dados II Jairo Francisco de Souza Hashing para arquivos extensíveis Todos os métodos anteriores previam tamanho fixo para alocação das chaves. Existem várias técnicas propostas
Leia maisConjunto de instruções e modos de. aula 4. Profa. Débora Matos
Conjunto de instruções e modos de endereçamento aula 4 Profa. Débora Matos Conjunto de Instruções A = ((B + C) x D + E F)/(G x H) A H denotam posições da memória endereços As arquiteturas possuem as seguintes
Leia maisArquitetura de Sistemas Digitais (FTL066) Instruções: Linguagem do Computador Segunda Lista de Exercícios
Arquitetura de Sistemas Digitais (FTL066) Instruções: Linguagem do Computador Segunda Lista de Exercícios 1) Explore conversões de números a partir de números binárias com sinal e sem sinal para decimal:
Leia maisConcurso Público para provimento de cargo efetivo de Docentes. Edital 20/2015 CIÊNCIA DA COMPUTAÇÃO I Campus Rio Pomba
Questão 01 Assumindo um registrador de 10 bits e utilizando-se de representação binária, com valores negativos representados em código de 2, os valores em representação decimal 235, -189 possuem, respectivamente,
Leia maisDesenvolvimento OO com Java Orientação a objetos básica
Desenvolvimento OO com Java Orientação a objetos básica Vítor E. Silva Souza (vitor.souza@ufes.br) http://www.inf.ufes.br/~vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal
Leia maisInformática básica Telecentro/Infocentro Acessa-SP
Informática básica Telecentro/Infocentro Acessa-SP Aula de hoje: Verificando data e hora, desligando o computador, janelas, copiar colar, excluindo um arquivo. Prof: Lucas Aureo Guidastre Verificando data
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 maisMáquina de estados UNIX O
Estruturas Processos de Controle (Aula 5) Aula Interrupções Profa. Patricia Gerência fluxo, execução D. O Abstração passada Criação podendo de gerar hw e transição sw (mudança de CostaLPRM/DI/UFES que
Leia maisMáquina de estados UNIX O. Sistemas Operacionais 2008/1Profa. Patricia S.O. computação: recursos D. S.O S.O. controla eventos no sistema de
Estruturas Processos de Controle (Aula 5) Aula Interrupções Profa. Patricia Gerência fluxo, execução D. O Abstração passada Criação podendo de gerar hw e transição sw (mudança de CostaLPRM/DI/UFES que
Leia maisMANUAL DA SECRETARIA
MANUAL DA SECRETARIA Conteúdo Tela de acesso... 2 Liberação de acesso ao sistema... 3 Funcionários... 3 Secretaria... 5 Tutores... 7 Autores... 8 Configuração dos cursos da Instituição de Ensino... 9 Novo
Leia maisSistemas Operacionais
Sistemas Operacionais Sistemas de Entrada/Saída Princípios de Hardware Sistema de Entrada/Saída Visão Geral Princípios de Hardware Dispositivos de E/S Estrutura Típica do Barramento de um PC Interrupções
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 maisFilas: conceitos e implementações
Estrutura de Dados I Filas: conceitos e implementações Cesar Rocha cesar@pontoweb.com.br 1 Objetivos Explorar os conceitos fundamentais acerca do uso de filas utilizando a linguagem C Organização e implementação,
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AOS SISTEMAS OPERACIONAIS. Prof. Dr. Daniel Caetano 2011-2
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AOS SISTEMAS OPERACIONAIS Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 Introdução 2 O que é Sistema Operacional 3 Tarefas de Gerenciamento Material
Leia maisSistemas de Arquivos. André Luiz da Costa Carvalho
Sistemas de Arquivos André Luiz da Costa Carvalho Sistemas de arquivos Sistema de arquivos é o nome que se dá a implementação da organização de dados em discos. Vai desde o acesso a baixo nível até a interface
Leia maisManual do Teclado de Satisfação Online WebOpinião
Manual do Teclado de Satisfação Online WebOpinião Versão 1.2.3 27 de novembro de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação
Leia maisAula 3 Alocação Dinâmica
Aula 3 Alocação Dinâmica Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas de Internet Prof. Bruno B. Boniati www.cafw.ufsm.br/~bruno
Leia mais