RESUMO DA AULA, CRIBS
Информатика и информационные технологии. Программы на Ассемблере (конспект лекций) Diretório / Notas de aula, folhas de dicas Índice (expandir) PALESTRA Nº 15. Registros 1. Registros do sistema microprocessado O próprio nome desses registradores sugere que eles desempenham funções específicas no sistema. O uso de registros do sistema é estritamente regulamentado. São eles que fornecem o modo protegido. Eles também podem ser considerados como parte da arquitetura do microprocessador, que é deliberadamente deixado visível para que um programador de sistema qualificado possa executar as operações de nível mais baixo. Os registradores do sistema podem ser divididos em três grupos: 1) quatro registros de controle; 2) quatro registros de endereços do sistema; 3) oito registradores de depuração. 2. Registros de controle O grupo de registros de controle inclui quatro registros: cr0, cr1, cr2, cr3. Esses registradores são para controle geral do sistema. Os registros de controle estão disponíveis apenas para programas com nível de privilégio 0. Embora o microprocessador tenha quatro registros de controle, apenas três deles estão disponíveis - cr1 é excluído, cujas funções ainda não estão definidas (está reservada para uso futuro). O registrador cr0 contém sinalizadores do sistema que controlam os modos de operação do microprocessador e refletem seu estado globalmente, independentemente das tarefas específicas que estão sendo executadas. Objetivo dos sinalizadores do sistema: 1) pe (Protect Enable), bit 0 - habilita o modo de operação protegido. O estado desse sinalizador mostra em qual dos dois modos - real (pe = 0) ou protegido (pe = 1) - o microprocessador está operando em um determinado momento; 2) mp (Math Present), bit 1 - a presença de um coprocessador. Sempre 1; 3) ts (Task Switched), bit 3 - alternância de tarefas. O processador define esse bit automaticamente quando alterna para outra tarefa; 4) am (Máscara de Alinhamento), bit 18 - máscara de alinhamento. Este bit habilita (am = 1) ou desabilita (am = 0) o controle de alinhamento; 5) cd (Cache Disable), bit 30 - desabilita a memória cache. Usando este bit, você pode desabilitar (cd =1) ou habilitar (cd = 0) o uso do cache interno (o cache de primeiro nível); 6) pg (PaGing), bit 31 - habilitar (pg =1) ou desabilitar (pg = 0) paginação. O sinalizador é usado no modelo de paginação de organização de memória. O registrador cr2 é usado na paginação da RAM para registrar a situação em que a instrução atual acessou o endereço contido em uma página de memória que atualmente não está na memória. Em tal situação, uma exceção número 14 ocorre no microprocessador e o endereço linear de 32 bits da instrução que causou essa exceção é escrito no registrador cr2. Com esta informação, o manipulador de exceção 14 determina a página desejada, troca-a na memória e retoma a operação normal do programa; O registrador cr3 também é usado para paginar a memória. Este é o chamado registro de diretório de páginas de primeiro nível. Ele contém o endereço base físico de 20 bits do diretório de páginas da tarefa atual. Este diretório contém 1024 descritores de 32 bits, cada um dos quais contém o endereço da tabela de páginas de segundo nível. Por sua vez, cada uma das tabelas de página de segundo nível contém 1024 descritores de 32 bits que endereçam quadros de página na memória. O tamanho do quadro de página é de 4 KB. 3. Registros de endereços do sistema Esses registradores também são chamados de registradores de gerenciamento de memória. Eles são projetados para proteger programas e dados no modo multitarefa do microprocessador. Ao operar no modo protegido por microprocessador, o espaço de endereço é dividido em: 1) global - comum a todas as tarefas; 2) local - separado para cada tarefa. Essa separação explica a presença dos seguintes registros de sistema na arquitetura do microprocessador: 1) o registrador da tabela global de descritores gdtr (Global Descriptor Table Register), com tamanho de 48 bits e contendo um endereço base de 32 bits (bits 16-47) da tabela global de descritores GDT e um endereço base de 16 bits (bits 0-15) XNUMX-XNUMX) valor limite, que é o tamanho em bytes da tabela GDT; 2) o registrador de tabela de descritores locais ldtr (Local Descriptor Table Register), com tamanho de 16 bits e contendo o chamado seletor do descritor da tabela de descritores locais LDT Este seletor é um ponteiro na tabela GDT, que descreve o segmento contendo a tabela de descritores locais LDT; 3) o registro da tabela de descritores de interrupção idtr (Interrupt Descriptor Table Register), tendo um tamanho de 48 bits e contendo um endereço base de 32 bits (bits 16-47) da tabela de descritores de interrupção IDT e um endereço de 16 bits (bits 0-15) valor limite, que é o tamanho em bytes da tabela IDT; 4) registrador de tarefa de 16 bits tr (Task Register), que, como o registrador ldtr, contém um seletor, ou seja, um ponteiro para um descritor na tabela GDT. Este descritor descreve o atual Task Segment Status (TSS). Este segmento é criado para cada tarefa no sistema, possui uma estrutura estritamente regulada e contém o contexto (estado atual) da tarefa. O principal objetivo dos segmentos TSS é salvar o estado atual de uma tarefa no momento de alternar para outra tarefa. 4. Registros de depuração Este é um grupo muito interessante de registradores destinados à depuração de hardware. As ferramentas de depuração de hardware apareceram pela primeira vez no microprocessador i486. Em hardware, o microprocessador contém oito registradores de depuração, mas apenas seis deles são realmente usados. Os registros dr0, dr1, dr2, dr3 têm largura de 32 bits e são projetados para definir endereços lineares de quatro pontos de interrupção. O mecanismo utilizado neste caso é o seguinte: qualquer endereço gerado pelo programa atual é comparado com os endereços dos registradores dr0... dr3, e se houver correspondência, é gerada uma exceção de depuração com número 1. O registro dr6 é chamado de registro de status de depuração. Os bits neste registro são definidos de acordo com os motivos que causaram a ocorrência da última exceção número 1. Listamos esses bits e sua finalidade: 1) b0 - se este bit estiver em 1, então a última exceção (interrupção) ocorreu como resultado de atingir o checkpoint definido no registro dr0; 2) b1 - semelhante a b0, mas para um checkpoint no registro dr1; 3) b2 - semelhante a b0, mas para um checkpoint no registro dr2; 4) bЗ - semelhante a b0, mas para um checkpoint no registro dr3; 5) bd (bit 13) - serve para proteger os registradores de depuração; 6) bs (bit 14) - definido como 1 se a exceção 1 foi causada pelo estado da flag tf = 1 no registrador eflags; 7) bt (bit 15) é definido como 1 se a exceção 1 foi causada por uma mudança para uma tarefa com o bit trap definido em TSS t = 1. Todos os outros bits neste registrador são preenchidos com zeros. O manipulador de exceção 1, com base no conteúdo de dr6, deve determinar o motivo da exceção e executar as ações necessárias. O registro dr7 é chamado de registro de controle de depuração. Ele contém campos para cada um dos quatro registradores de ponto de interrupção de depuração que permitem especificar as seguintes condições sob as quais uma interrupção deve ser gerada: 1) local de registro do checkpoint - apenas na tarefa atual ou em qualquer tarefa. Esses bits ocupam os 8 bits inferiores do registro dr7 (2 bits para cada ponto de interrupção (na verdade, um ponto de interrupção) definido pelos registros dr0, dr1, dr2, dr3, respectivamente). O primeiro bit de cada par é a chamada resolução local; configurá-lo informa ao ponto de interrupção para entrar em vigor se estiver dentro do espaço de endereço da tarefa atual. O segundo bit em cada par define a permissão global, que indica que o ponto de interrupção fornecido é válido dentro dos espaços de endereço de todas as tarefas que residem no sistema; 2) o tipo de acesso pelo qual a interrupção é iniciada: somente ao buscar um comando, ao escrever ou ao escrever/ler dados. Os bits que determinam essa natureza da ocorrência de uma interrupção estão localizados na parte superior desse registro. A maioria dos registros do sistema é acessível por meio de programação. Autor: Tsvetkova A.V. << Voltar: Registros (Registros do sistema microprocessador. Registros de controle. Registros de endereço do sistema. Registros de depuração) >> Encaminhar: Estruturas de instruções de montagem (Estrutura de uma instrução de máquina. Métodos para especificar operandos de instrução. Métodos de endereçamento) Recomendamos artigos interessantes seção Notas de aula, folhas de dicas: ▪ Psicologia do desenvolvimento e psicologia do desenvolvimento. Notas de aula Veja outros artigos seção Notas de aula, folhas de dicas. Leia e escreva útil comentários sobre este artigo. Últimas notícias de ciência e tecnologia, nova eletrônica: A existência de uma regra de entropia para o emaranhamento quântico foi comprovada
09.05.2024 Mini ar condicionado Sony Reon Pocket 5
09.05.2024 Energia do espaço para Starship
08.05.2024
Outras notícias interessantes: ▪ Microcontroladores RISC de 32 bits ▪ Microplásticos afetam a vida no solo ▪ Novos testadores de isolamento FLUKE Feed de notícias de ciência e tecnologia, nova eletrônica
Materiais interessantes da Biblioteca Técnica Gratuita: ▪ seção do site Controles de tom e volume. Seleção de artigos ▪ artigo Jardim florido sobre rodas. Dicas para o dono da casa ▪ artigo Quem e por que dividiu a Commonwealth no século XVIII? Resposta detalhada ▪ artigo Chefe do Departamento de Arrecadação de Receitas. Descrição do trabalho ▪ artigo Regulador de potência Triac. Enciclopédia de rádio eletrônica e engenharia elétrica
Deixe seu comentário neste artigo: Todos os idiomas desta página Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site www.diagrama.com.ua |