FATORES QUE INFLUENCIAM O DESEMPENHO DA E/S
•	VELOCIDADE DA CPU (  s - 10-9 s)
TECNOLOGIA

CLOCK	CICLO	
33 MHz	30 S	
66 MHz	15 S	
200 MHz	5 S	
1 GHz	1 S	
3 GHz	0,3 S	
•	VELOCIDADE DA MEMÓRIA E DISPONIBILIDADE 
( 50 s - 10-5s  a   1 s - 10-9s)
TECNOLOGIA
TIPO DE ARQUITETURA E ESTADO CORRENTE
•	“THROUGHPUT” DO DISPOSITIVO para transferência de 1 Kbytes
INTERNO ( 20 a 700 Mbits/s - 381 s a 11 s -10-4s a 10-7s)
EXTERNO ( 5 a 100 Mbytes/s - 97 s a 4,2 s -10-6s a 10-7s)
TECNOLOGIA
NÚMERO DE DISPOSITIVOS
•	SEEK MÉDIO (8,5 ms)
•	LATÊNCIA MÉDIA (0,4 ms)
•	“THROUGHPUT” DO BARRAMENTO  
(  40 Mbytes/s a 150 Mbytes/s)
TECNOLOGIA
ARQUITETURA (NÚMERO DE BARRAMENTOS)
•	EXISTÊNCIA DE FRAGMENTAÇÃO NO QUE SE QUER ACESSAR
•	APLICAÇÃO
Obs.: UM MODEM É CERCA DE MIL VEZES MAIS LENTO QUE UM DISCO RÍGIDO

I/O BUFFERING

•	A REALIZAÇÃO DE UMA OPERAÇÃO DE E/S DIRETAMENTE NA ÁREA DE MEMÓRIA DO PROCESSO ATRAPALHA A GERÊNCIA DE MEMÓRIA VIRTUAL
•	É CONVENIENTE, ALGUMAS VEZES, ANTECIPAR TRANSFERÊNCIAS DE ENTRADA E RETARDAR TRANSFERÊNCIAS DE SAÍDA
•	BUFFERING
•	LEITURAS ANTECIPADAS SÃO TAMBÉM CONHECIDAS COMO DESBLOCAGEM
•	BUFFERS SÃO CONTROLADOS PELO S.O. E ASSOCIADOS A CADA ARQUIVO ABERTO
•	O AUMENTO DE BUFFERS PARA O MESMO ARQUIVO É CONHECIDO COMO BUFFER SWAPPING

SO				processo

CTRL

					SO				processo

CTRL

•	SEJA T O TEMPO DE TRANSFERÊNCIA ENTRE A CONTROLADORA E O S.O., M O TEMPO DE TRANSFERÊNCIA ENTRE O S.O. E O PROCESSO, E C O TEMPO DE COMPUTAÇÃO EXISTENTE ENTRE DOIS PEDIDOS DE E/S:
•	SE C > T, O PROCESSO NÃO TEM QUE AGUARDAR PELO TÉRMINO DA OPERAÇÃO DE E/S
•	SE C < T, A CONTROLADORA ESTARÁ OPERANDO A TODA A VELOCIDADE
•	GANHA-SE min (C,T)
•	SE UM PROCESSO REQUER GRANDE QUANTIDADE DE DADOS, COMO NO CASO DE APLICAÇÕES MULTIMÍDIA, PODE-SE AUMENTAR O NÚMERO DE BUFFERS
•	NADA MAIS É QUE UMA INSTÂNCIA DO PROBLEMA DE PRODUTORES E CONSUMIDORES

CACHE DE DISCO

É UMA PORÇÃO DE MEMÓRIA RAM QUE PERMITE O AUMENTO DE VELOCIDADE DE ACESSO A DISCO PELA CPU.

•	UMA CÓPIA DOS DADOS LIDOS (ESCRITOS) DO (NO) DISCO É COLOCADA NA CACHE

•	NA PRÓXIMA OPERAÇÃO DE LEITURA, É FEITA UMA BUSCA NA CACHE, SE OS DADOS PROCURADOS:

•	EXISTIREM, OS MESMOS SÃO RECUPERADOS SEM A NECESSIDADE DE I/O

•	SE NÃO EXISTEM, É FEITA A OPERAÇÃO DE LEITURA OU ESCRITA E, SE NECESSÁRIO, OS DADOS DA CACHE SÃO SUBSTITUÍDOS

•	ESTRATÉGIAS DE SUBSTITUIÇÃO SÃO UTILIZADAS

•	PODE SER ADOTADA UMA POLÍTICA DE “PREFETCH”, NA QUAL ÁREAS ADJACENTES (TODA UMA TRILHA) SÃO CARREGADAS NA CACHE, ANTES DE SEREM (SE FOREM) REFERENCIADAS

•	PODE-SE USAR CACHE TANTO NA CONTROLADORA COMO A NÍVEL DO S.O.

•	O CACHE PODE SER NADA MAIS DO QUE A POLÍTICA DE BLOCAGEM E DESBLOCAGEM DE REGISTROS LÓGICOS, COM GANHOS DE ATÉ 700% NO TEMPO DE ACESSO; PORÉM COM POSSÍVEIS RISCOS

DEFRAGMENTAÇÃO

OS DADOS LÓGICOS QUANDO ARMAZENADOS EM DISCO SÃO DIVIDOS EM BLOCOS (DE TAMANHO CORRESPONDENTE À UNIDADE DE DIVISÃO DO DISCO - FORMATAÇÃO)

OS BLOCOS FÍSICOS, ONDE SE ENCONTRAM OS DADOS LÓGICOS, CASO NÃO ESTEJAM CONTÍGUOS (FRAGMENTADOS), EXIGIRÃO PARA SUA LEITURA SEQÜENCIAL:

•	MOVIMENTAÇÃO DO BRAÇO

•	MOVIMENTAÇÃO ROTACIONAL

•	POLÍTICA DE ADIANTAMENTO DE LEITURAS

CARACTERÍSTICAS DE UM FLOPPY DISK, PADRÃO COM DUPLA DENSIDADE NOS DOIS LADOS

N DE CILINDROS	40	TEMPO DE SEEK		
TRILHAS POR CILINDRO	2	(ADJACENTES)	6 ms	
SETORES POR TRILHA	9	(MÉDIO)	77 ms	
SETORES POR DISQUETE	?	TEMPO DE ROTAÇÃO	200 ms	
BYTES POR SETOR	512	TEMPO DE INÍCIO/		
BYTES POR DISQUETE	368.640	PARADA DE MOTOR	250 ms	
		TEMPO DE TRANSFERÊNCIA DISCO ATÉ MEMÓRIA	22 ms	

CARACTERÍSTICAS DE UM HD CONECTADO AO UM PC 486 DX2/66, COM CONTROLADORA EIDE

N DE CILINDROS	3.653	TEMPO DE SEEK		
TRILHAS POR CILINDRO	2	(ADJACENTES)	5 ms	
SETORES POR TRILHA	76	(MÉDIO)	14 ms	
BYTES POR SETOR	512	VELOCIDADE DE ROTAÇÃO	4500 rpm	
TOTAL DE BYTES	?	TEMPO DE LATÊNCIA	6,67 ms	
		TEMPO DE TRANSFERÊNCIA DISCO ATÉ MEMÓRIA	53,7 ms	

 	

Considere as seguintes características de um HD conectado a uma controladora SCSI.

N DE CILINDROS	79408	TEMPO DE SEEK		
N REAL DE CILINDROS	16383	(ADJACENTES)	5 ms	
TRILHAS POR CILINDRO	16	(MÉDIO)	11,5 ms	
SETORES POR TRILHA	63	VELOCIDADE DE ROTAÇÃO	5400 rpm	
BYTES POR SETOR	512	TEMPO DE LATÊNCIA	?	
TOTAL DE BYTES	?	TEMPO DE UMA OPERAÇÃO DE E/S	?	

Considere as seguintes características de um HD ATA de 160 Gbytes

N DE CILINDROS	?	TEMPO DE SEEK		
N REAL DE CILINDROS	16383	(ADJACENTES)	4 ms	
TRILHAS POR CILINDRO	16	(MÉDIO)	8,5 ms	
SETORES POR TRILHA	63	VELOCIDADE DE ROTAÇÃO	?	
BYTES POR SETOR	512	TEMPO DE LATÊNCIA	4,16 ms	
TOTAL DE BYTES	160 GBytes	TAXA DE TRANSFERÊNCIA DISCO ATÉ MEMÓRIA	32 Mbytes/ sec	

A CONFIGURAÇÃO BÁSICA DOS PCs (BIOS/DOS) EM RELAÇÃO AOS PARÂMETROS DE UM DISCO ERAM:

•	10 BITS PARA O ENDEREÇAMENTO DE CILINDROS

•	4 BITS PARA O ENDEREÇAMENTO DE CABEÇAS

•	6 BITS PARA O ENDEREÇAMENTO DE SETORES POR TRILHA (MENOS UM SETOR)

•	ENDEREÇAMENTO CHS (CYLINDER/HEAD/SECTOR)

DX - 8 BITS PARA NÚMERO DA CABEÇA (*) E 8 PARA NÚMERO DO DISPOSITIVO (+)

CX - 10 BITS PARA NÚMERO DO CILINDRO E 6 PARA O NÚMERO DO SETOR NA TRILHA

(*) POSSÍVEL DE SER USADO, DESDE QUE HAJA ALGUM ESQUEMA DE TRADUÇÃO PARA O BIOS

(+) EMBORA SEJA POSSÍVEL MANIPULAR MAIS DO QUE 2 DRIVES, ESTE É O LIMITE IMPOSTO PELO VETOR DE INTERRUPÇÕES DO BIOS

SERVIDORES DE ARQUIVOS NO NetWare E EM OUTROS S.O.s, UTILIZAVAM O BIOS ATÉ O MOMENTO DE BOOT E DEPOIS SUBSTITUTEM OS DRIVERS

OUTRA MANEIRA  DE CONTORNAR OS LIMITANTES IMPOSTOS PELAS ESTRUTURAS DE DADOS DO S.O. É ATRAVÉS DA CRIAÇÃO DE PARTIÇÕES (CADA UMA É VISTA COMO SENDO UM DISPOSITIVO LÓGICO)

Um disco apresenta 12000 cilindros, quatro cabeças e trilhas com 63 setores de 512 bytes. O disco gira a 4800 rpm e apresenta um tempo de seek médio de 10 ms. O pico da sua taxa de esvaziamento do buffer da controladora é de 16 Mbps. Calcular o melhor e o pior tempo necessários para transferir 20 setores consecutivos ou aleatórios. Indicar quais os fatores predominantes para determinar o tempo de duração. Especificar as considerações feitas para definir o melhor e o pior caso.
Indicar o número de bits necessários para o endereçamento CHS desse disco. Calcular o tamanho máximo desse disco. Calcular o tempo de latência.

Exercícios

1.	Porque o desempenho interno de um dispositivo é diferente do externo em valor e unidade?
2.	Calcule o tempo que leva a transferência de um byte em um barramento, considerando que o "throughput" encontra-se entre 80 e 120 Mbytes/segundo.
3.	Considere a seguinte arquitetura:

CPU

					Barramento A

			     Barramento B
Projete uma nova arquitetura que apresente uma boa relação entre desempenho e prioridade nos barramentos, para os seguintes casos:
-	se existe um componente crítico em A
-	se existe um componente crítico em B

4.	Se o desempenho do barramento A é melhor que o de B, o que se pode dizer de um componente importante conectado a B que é acessado constantemente pela CPU/SO? Considerando A, qual deveria ser a prioridade do "slot" onde está B?
5.	Buffering e cache são a mesma coisa? Justifique sua resposta.
6.	O que é memória flash? Compare este tipo de memória à memória cache.
7.	Considerando um sistema mono usuário, a defragmentação é importante? Justifique.
8.	Um disco apresenta 305 cilindros, quatro cabeças e trilhas com 17 setores de 512 bytes. O disco gira a 3000 rpm e apresenta um tempo de seek médio de 30 ms. O pico da sua taxa de transferência (esvaziamento do buffer) é de 5 Mbytes/seg. Calcular o melhor e o pior tempo necessários para transferir 20 setores consecutivos. Indicar quais os fatores predominantes para determinar o tempo de duração. Especificar as considerações feitas para definir o melhor e o pior caso. Repita o exercício para 20 setores aleatórios.
9.	Repita o exercício anterior para um disco apresenta 3000 cilindros, quatro cabeças e trilhas com 17 setores de 512 bytes. O disco gira a 4800 rpm e apresenta um tempo de seek médio de 30 ms. O pico da sua taxa de esvaziamento do buffer da controladora é de 8 Mbytes/seg. 
10.	Indicar o número de bits necessários para o endereçamento CHS desse último disco. Calcular o tamanho máximo desse disco. Calcular o tempo de latência.
11.	Considerando o número de setores por trilha e a resposta à questão anterior, apresente graficamente como ficaria a formatação dos setores de um cilindro, considerando que sejam clusters de 1 Kbyte.
12.	Considerando setores de 256 bytes, qual seria o tamanho máximo de um dispositivo de disco visível pelo BIOS/DOS?