entre a 3a. e 4a. edições do livro texto em inglês INE 5411

Propaganda
INE 5411 - Mapeamento entre páginas de conteúdo equivalente
entre a 3a. e 4a. edições do livro texto em inglês
Assunto
Páginas
(3a. Edição)
Páginas
(4a. Edição)
A3-A10
B3-B10
Introdução à programação de sistemas: Representações de 106-109, 112 139-141
código. Cadeias de ferramentas (compilador, montador,
ligador, carregador, simulador, depurador). A noção de
programmer's view (PV) e a noção de assembly como formato
intermediário para geração de código.
Visão geral de organização de um computador: Abstrações. 2-8;12-14
Tecnologias para fabricação de memórias e processadores
27-32
Conjunto de instruções: Registradores de uso geral,
memória, instruções aritméticas inteiras (add, sub, addi)
instruções load e store (lw, sw)
48-68
A40-A43
Ferramentas para programação de sistemas: Familiarização
com o simulador MARS
Conjunto de instruções: Instruções lógicas (srl, sll, and, andi,
or, ori, nor), comparações sinalizadas e não-sinalizadas (slt,
slti, sltu, sltui) , desvios condicionais (beq, bne) incondicionais
(j)
68-78
Conjunto de instruções: Instruções para suporte a
subprogramas (jal, jr).
79-85
Conjunto de instruções: Exercícios sobre código
condicional: if-then-else e switch-case (jump address table)
Avaliação de desempenho: Métricas e cálculo de
desempenho.
Avaliação de desempenho: Benchmarks SPEC CPU and
SPEC Power. Exemplos reais de desempenho e eficiência
energética de computadores contemporâneos. Métrica
alternativa de desempenho: MIPS
3 a 26
76-87,
94-101
B40-B43
102-112
112-118
76
111
240-254
26-43
266-271
48-55
Conjunto de instruções: Instruções de suporte para texto (lb,
sb, lh, sh), suporte a variáveis sinalizadas e não-sinalizadas
(lbu, lhu), suporte a constantes grandes (lui), modos de
endereçamento
Conjunto de instruções: Overflow aritmético e suporte para
sua desabilitação (addu, addiu, subu). Instruções de
multiplicação e divisão inteira sinalizadas (mult, div) ou não
(multu, divu) . Instruções para sincronização (ll, sc) de
programas concorrentes*.
Subprogramação: Exercício sobre arranjos e ponteiros.
Ferramentas de programação do sistema: montadores
(labels, diretivas, macros, pseudo-instruções)
Modelo de programação do sistema (PV do MIPS): Uso de
memória: segmentos de dados, de código e pilha.
Ferramentas de programação do sistema: Ligadores e
carregadores.
Subprogramação: Exercício sobre arranjos e ponteiros.
Conjunto de instruções: Exemplo real de instruções ARM e
x86.
Processador: Estrutura de um datapath
Processador: Comportamento de um datapath e de sua
unidade de controle
Subprogramação: Exercício sobre swapping e ordenação de
arranjos.
Aceleração: Pipeline (funcionamento, hazards estruturais e de
dados)
Aceleração: Pipeline (hazards de controle); datapath com
pipeline (execução e controle de instruções).
Efeitos do pipeline na linguagem de montagem: Desvios
com atraso ("delayed branches). Otimizações para preencher o
"delay slot".
Aceleração: Pipeline avançado: previsão de desvios
90-105
122-136
87-93,
160-175, 190 109-110, 224* tópico não 227, 243;
coberto
137-139
130-134
157-161
A10-A17
118-121,
106-108
139-142,
A20-A22
B10-B17,
85-90
B20-B22
142-147, B18B19
130-134
134-143
284-300
157-161
161-164, 165173
300-318
300-318
121-129
318-330
370-379
379-384
384-402
330-339
339-363
382, 423-424 381-382
421-423
Aceleração: Pipeline avançado: ILP, speculation, multipleissue, IA-64
432-440
440-442
Programação de sistemas: Noções básicas de compiladores- 116-121
otimizadores.
Aceleração: Pipeline avançado (dynamic-multiple issue);
442-447
exemplo real (o pipeline do Pentium 4).
448-450
468-479
Memória: Cache (localidade, mapeamento direto)
Memória: Cache (mapeamento direto com blocos multipalavra)
479-491
492-504
Memória: Cache (desempenho, associatividade)
Memória: Cache (Controlador baseado em máquina de
estados finitos)
não coberto
não coberto
Memória: Cache (coerência )
Exceções e interrupções: registradores de controle.
Noções básicas sobre tratamento de exceções.
A33-A37
Memória: impacto da cache no desempenho
Memória: Cache (múltiplos níveis)
Exceções e interrupções: Implementação de um tratador de
exceções
Memória: Noções de memória virtual e TLB
505-508
A33-A37
511-523
566-568
581-585
Entrada e saída: Dispositivos; barramentos e handshaking
Entrada e saída: Comando de dispositivos; comunicação com 589-590
processador (polling, acionada por interrupção)
590-593
391-398
392-393,
398-406
450-463
463-474
475-487
529-534
534-538
B33-B37
456-470,
475-486
488-490
492-503
570-572
582-586
586-591
Download