You are on page 1of 58

12/11/2009

Tema 3
Sistema de Entrada/
Entrada/Salida

SISTEMADEENTRADA/SALIDA
Elcorazn
Elcorazn deuna
deuna computadora loconstituye
loconstituye laUCP,
laUCP,p
pero
eron
noservira
oservira de
nadasin
nada
sin lamemoria
lamemoria principalylos
principalylosdispositivos
dispositivos deE/S:
Dispositivos perifricos
perifricos,,quelepermitaninteractuarconelusuario.
quelepermitaninteractuarconelusuario.
Generalmente estn fuera dela
delacomputadora
computadora yseconectan
yseconectan aella
aella
mediante cables
cables..
Sonlosteclados
onlosteclados,,ratones
ratones,,micrfonos
micrfonos,,cmaras
cmaras y
ycualquier
cualquier otro
dispositivo deE/Sque
deE/Sque seleocurra
seleocurra conectar a
auna
una computadora
computadora..
Dispositivos de
de almacenamiento secundario (discos)y
dealmacenamiento
(discos) y terciario
(discos)yterciario
(cintas y
ysistemas
sistemas dearchivo
dearchivo).
).
Dispositivosde
Dispositivosdecomunicaciones.
comunicaciones.

12/11/2009

SISTEMADEENTRADA/SALIDA
Elaccesoalosdispositivoses:
Incmodo
I d
Detallesfsicosdelosdispositivos
Dependientedelasdireccionesfsicas
Noseguro
Sielusuarioaccedeanivelfsiconotienerestricciones
Obje
Objetivos:
os
Suministrarunavisinlgicadelosdispositivos
Ofrecerprimitivasdeaccesocmodase
independientesdelosdetallesfsicos
Mecanismosdeproteccin

Niveles delsoftwaredeE/S

Niveles delsoftwareeunsistema
delsoftwareeunsistema deE/S

12/11/2009

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

Clasificacin dedispositivos
dedispositivos E/S
Perifricos.Sellamaasalosdispositivosquepermitenla
comunicacinentrelosusuariosylacomputadora.Dentrodeeste
gruposeincluyentodoslosdispositivosquesirvenparaproporcionar
i t f
interfazconelusuario,tantoparaentrada(ratn,teclado,etc.)como
l
i t t
t d ( t t l d t )
parasalida(impresoras,pantalla,etc.).
Dispositivosdealmacenamiento.Seusanparaproporcionar
almacenamientonovoltildedatosymemoria.Sufuncinprimordial
esabastecerdedatosyalmacenamientoalosprogramasquese
ejecutanenlaUCP.Segnsucapacidadeinmediatezsepuedendividir
enalmacenamientosecundario(discosydisquetes)yterciario(cintasy
sistemasdearchivo).
Dispositivosdecomunicaciones.Permitenconectaralacomputadora
conotrascomputadorasatravsdeunared.Losdostiposde
dispositivosmsimportantesdeestaclasesonlosMODEMylas
tarjetasdeinterfazalared.

12/11/2009

Velocidades dedispositivos
dedispositivos tpicos

DispositivosdeBloqueydeCarcter
Dispositivosdebloque:
Accesoaniveldebloque,secuencialoaleatorio
Mandatos:leer,escribir,buscar,
E/Sdirectaoatravsdelservidordeficheros
Accesoposibleatravsdeficherosproyectadosenmemoria
Ejemplo:discosycintas
Dispositivosdecarcter:
Accesoaniveldeacarcter,secuencialoaleatorio
Mandatos:
Mandatos: get,
Mandatos:get
get,put
put,.
put,.
Bibliotecasparaoptimizarydarformaaestetipodeaccesos:edicin
delneas,ventanasvirtuales,.
Ejemplo:terminaleseimpresoras

12/11/2009

Conexindedispositivos
ConexindedispositivosdeE/S
deE/S

CPU

Memoria
Controlador
grfic o

Bus del sistema


Controlador
de disco
estado c ontrol datos

Bus de expansin

Controladores dedispositivos
dedispositivos I
Eldispositivo
Eldispositivo deE/Stiene
deE/Stiene doscomponeentes
doscomponeentes::
componente mecnico
componente electrnico

Elcomponentemecnicoseconectana
Elcomponentemecnicose
conectanalaCPU
laCPUatravs
atravsdelcontrolador
delcontrolador

Elcomponente
Elcomponente electrnico es el
elcontrolador
controlador deldispositivo
deldispositivo
Puede controlar varios dispositivos deE/S
Tareas del
delcontrolador
controlador
convertir biten
bitenserie
serie (bitstream)abloques
(bitstream)abloques debytes
debytes
Realizar correcin de
deerrores
errores si es necesario
Dejar la
lainformacin
informacin enMP
10

12/11/2009

Controladores dedispositivos
dedispositivos II
Loscontroladoressonmuyvariados,
Loscontroladoressonmuyvariados,casi
casicomolosdispositivosdeE/S.
comolosdispositivosdeE/S.
Muchosde
Muchosdeellos
ellospuedencontrolarmltiplesdispositivos.
puedencontrolarmltiplesdispositivos.
incluyensupropiaUCPybusparacontrolarlaE/Sporprograma
Otros
Otros,,incluyensupropiaUCPybusparacontrolarlaE/Sporprograma
yevitarinterrupcionesenlaUCPdelacomputadora.
it i t
i
l UCP d l
t d
Enlosltimosaoshaexistidounesfuerzoimportantedeestandarizacin
delosdispositivos,loquepermiteusarunmismocontroladorpara
dispositivosdedistintos
dispositivosdedistintosfabricantes
fabricantes (ejemplo:SCSI,SmallComputer System
Interface, oIDE,Integrated DriveElectronics)..
Elcontroladoresla
Elcontroladores
El
controlador es lainterfazdeldispositivoconelbusdelacomputadoray
la interfazdeldispositivoconelbusdelacomputadoray
interfaz del dispositivo con el bus de la computadora y
eselcomponentequesevedesdelaUCP.
Suprogramacinsellevaacabomedianteunainterfazdemuybajo
nivelqueproporcionaaccesoaunaseriederegistrosdelcontrolador.
Lascaractersticasdelcontroladorsonmuyimportantes,yaque
definenelaspectodelperifricoparaelsistemaoperativo.
Fundamental:DireccindeE/S,UnidaddetransferenciaeInteraccin
computadoracontrolador.
computadora

Conexinporpuertoomemoria
PararealizarunaoperacindeE/S,laUCPtienequeescribirenlosregistros
del controlador.
Cada
d registrodel
i t d l controlador.unadireccindeE/Sodememoriaasignada.
controlador.unadireccindeE/Sodememoria
t l d
di
i d E/S d
i asignada.
i d
Elmodelode
Elmodelodedispositivosporpuertos
dispositivosporpuertos esclsicoenlasarquitecturasde
Intel.
Cuandoseinstalaundispositivo,asucontroladorseleasignaunpuerto
deE/S,unainterrupcinhardwareyunvectordeinterrupcin.
UnaoperacindeE/SlaUCPejecutaoperaciones
UnaoperacindeE/SlaUCPejecutaoperacionesportin
portin o
oportout
portout
Elmodelo
Elmodeloproyectadoenmemoria
proyectadoenmemoria asignaacadaregistrodeE/Suna
direccn deMP.
NohayinstruccionesespecficasdeE/S,se usanlasinstruccionesde
usanlasinstruccionesde
accesoamemoria.
Mapanicodedireccionesdememoria.

12/11/2009

Ubicacin depuertos
depuertos deE/Se
deE/SenPCs(
nPCs(parcial
parcial)I
)I

Ubicacin depuertos
depuertos deE/SenPCs(parcial
deE/SenPCs(parcial)II
)II

12/11/2009

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

Driversdedispositivos
Driversde
dispositivos

Posiciones lgicas delosdriversdedispositivo


delosdriversdedispositivo
Lacommunicationsentre
Lacommunicationsentredrivers
driversy
ycontroladores
controladores es mediente elbus

12/11/2009

Tipos deE/S
Programada
Espera actiava
Por interrupciones
Asociada alamultiprogramacin
alamultiprogramacin
Por DMA
Para
Paradispositivos
dispositivos debloques
debloques

E/SProgramada
E/S
Programada I
Sedetermina
Sedetermina elestado
elestado dedispositivo
dedispositivo::
ready
busy
Error
Si
Siest
est busy se
seespera
espera a
aque
que est ready
ready((espera activa
activa))
Se
Serealiza
realiza laoperacin
laoperacin deE/S

12/11/2009

E/SProgramada
E/S
Programada II

Pasos para imprimrir unstring

19

E/SProgramada
E/S
Programada III

Escribiendo unstringenlaimpresora
unstringenlaimpresora mediante E/S
E/Sprogramada
programada

20

10

12/11/2009

E/Spor
E/S
por interrupciones I
LaCPUtiene
LaCPUtiene una/s
una/slnea
lnea/sde
/sdepeticin
peticin deinterrupcin
deinterrupcin conectada alos
dispositivos deE/S
El
Elmanejador
manejador deinterrupcin
deinterrupcin recive lainterrupcin
lainterrupcin
Enmascarable para ignorar or
orpostponer
postponer algunas interrupciones
Elvectorde
ElvectordeInterrucipones
Interrucipones elige elmanejador
elmanejador de
deinterrupcin
interrupcin
correspondiente
Basado enlaprioridad
nlaprioridad dela
delainterrucin
interrucin
Algunas son
sonno
noenmascarables
El
Elmecanismo
mecanismo de
deinterruciones
interruciones tambin se
seusa
usa para exceptiones

E/Spor
E/S
por interrupciones II

Escribiendo unstringenlaimpresora
unstringenlaimpresora mediante E/S
E/Spor
por interrupciones
El
Elcdigo
cdigo seejecuta
seejecuta cuando seinvoca
seinvoca lallamada
lallamada alsistema
alsistema dela
impresora
Rutina deservicio
deservicio deinterrupcin
deinterrupcin
22

11

12/11/2009

Manejadores deinterrupciones
deinterrupciones

Eldriverinicia
Eldriver
inicia una operancin deE/Sy se
sebloquea
bloquea hasta que una
interrupcin
p
notifica su finalizacin

Lafuncin
La
funcin deinterrupcin
deinterrupcin hace la
latarea
tarea
Cuando termina desbloquea eldriverque
eldriverque la
lainici
inici

Las rutinas de interrupcin suelen tener dos partes


partes::
una genrica y
otra particular para el dispositivo

23

Rutinadeinterrupcin
la parte genrica hace lo siguiente:
siguiente:
1. Capturadelainterrupcin.
2. Salvaguardadeestadodelprocesador.
3. Activacindelarutinaparticulardeserviciodelainterrupcin.
4. Planificacin como listaparaejecutar
listaparaejecutarlarutinaparticular
larutinaparticular..
5. Desactivacindelainterrupcin.
6. Restauracindelestadodelprocesador.
7. Cesindecontrol(RETI).

12

12/11/2009

Tabla deexcepciones
deexcepciones del
delprocesados
procesados Pentium

Interrupcionesqueusan
algunoscontroladores

13

12/11/2009

E/Smediante
E/S
mediante DMAI
SeusaparaevitarlaE/Sprogramadadegrandesbloquesdedatos
NecesitauncontroladorconDMA
EvitaelusodelaCPUtransfiriendolosdatosdirectamenteentrelos
dispositivosdeE/Sylamemoria
delusuario
delncleo
BsicoparaaprovecharlaCPUenunsistema
BsicoparaaprovecharlaCPUenunsistemamultiprogramado
multiprogramado,yaque
,yaque
liberatiempodelaCPUquesepuedeusarparaejecutarotrosprogramas.

E/Smediante
E/S
mediante DMAII
Memoria

Peticin DMA
(contador,
di cin,
direc
i
datos)
Ac eptacin DMA
Interrupc in
Operacin
(L/E)

Bus del sistema

Contador

Registro
de datos

Contador

Disco

Direcc in

Lgic a de
control

Controlador
UCP

14

12/11/2009

E/Smediante
E/S
mediante DMAIII

Imprime unstringusando
unstringusando DMA
Utilizado para programar E/Spara
E/Spara grandes movimientos dedatos
dedatos
Requiere uncontrolador DMA
Transfiere losdatos
losdatos directamente entrelos
entrelosdispositivos
dispositivos deE/SaMP

29

Operaciones en un
unmanejador
manejador (driver)
Peticiones de
E/S del dispositivo

Extraer peticin
E/S de
d lla li
lista

Traducir a formato
del controlador

Contestacin a
la peticin

Preparar
respuesta
de error
Si

Enviar mandatos
al controlador

Operaciones
sobre datos
No
Error

Programacin del
controlador
Bloqueo

Leer registros
estado del
controlador

No

Si

Esperar
interrupcin

Interrupcin

15

12/11/2009

Flujo delsoftwaredeE/S

Niveles delsistema
delsistema deE/Syprincipales
deE/Syprincipales funciones decada
decada nivel

31

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

16

12/11/2009

SW deE/S independientededispositivo

Funciones delsw
delsw deE/S
independiente deldispositivo
deldispositivo I
Interfaz uniforme para losdispositivo
losdispositivo
Tamaodeacceso:bloques,flujodecaracteres
Proporcionar un
untamao
tamao debloque
debloque independiente del
deldispositivo
dispositivo
Almacenamientointermedio(buffering
Almacenamientointermedio(buffering):almacenadatosenmemoria
):almacenadatosenmemoria
mientrassetransfierenentredosdispositivos
evitaaccesosrepetidos
ocultadiferenciasdevelocidad
l df
d
l d d
copianica(semnticadecomparticin)
Gestindedispositivo
nombrado[/
nombrado[/dev
dev//cdrom inodo (mayor,menor)]
proteccin(
proteccin(rwx
rwx))
asignacin y
yliberacin
liberacin de
dedispositivos
dispositivos
accesoenserie(sinosepuedecompartir)

17

12/11/2009

Funciones delsw
delsw deE/S
independiente deldispositivo
deldispositivo II
PlanificacindeE/S(
PlanificacindeE/S(SScheduling) encola las peticiones deE/Sencolas;
una por dispositivo
dispositivo;genrica(ej.,FIFO)ydemanejador(ej.,SCAN)
Gestindeerrores
Transitorios:resueltosporeldriver(reparacin)
Permanentes:notificadosalusuarioyregistrados
Buffering Caching mantiene una copia en
enmemoria
memoria muy rpida
Performance

Spooling retiene lasalida


lasalida deun
deundispositivo
dispositivo
Siel
Si el dispositivo nicamente puede servir una peticin ala
Sieldispositivo
a la vez
alavez
ej
ej.,la
.,laimpresora
impresora
Device
Devicereservation
reservation proporciona acceso exclusivo al
alservicio
servicio
Llamadas al
alsistema
sistema para la
laasignanacin
asignanacin y
yliberacin
liberacin
Problema con
coninterbloqueos
interbloqueos

Independencia deldispositivo
deldispositivo I

(a)Sininterfaz
(a)Sin
interfaz deE/Sestandar
deE/Sestandar
(b)Con
(b)
Coninterfaz
interfaz deE/Sestandar
deE/Sestandar

18

12/11/2009

Independencia deldispositivo
deldispositivo II

(a) Sinbuffer
(b)Conbufferen
(b)
Conbufferenespacio
espacio deusuario
deusuario
(c) Conbufferenelkernely
Conbufferenelkernelycopia
copia enespacio
enespacio deusuario
deusuario
(d)Double bufferenel
bufferenelkernel
kernel
37

Independencia deldispositivo
deldispositivo

Una transferencia por red


redpuede
puede requerir varias copias
38

19

12/11/2009

CapasdelsistemadeE/S
Interfaz del Sistema Operativo
Sistemas de Arc hivos
NFTS HPFS

FAT

CD-ROM ...

Gestin de
de R
Redes
edes
Gestin
(IPX/SPX, NETBEUI,
TCP/IP, ... )

Gestor de Bloques
Gestor de Cache
Manejadores de Dispositivos
(CD-ROM, cinta, disco, puerto, ... )

Controladores de dispositivo

FlujodeunaoperacindeE/S
Proceso
de usuario

Aplic a c in
Sub sistem a
o DLL

Modo usua rio


Modo nc leo

Copia
p
en
memoria del
usuario

Servicios
SW de E/S
independiente
de dispositivo

SW de E/S
independiente
de dispositivo
SW de E/S
dependiente
de dispositivo

Software

Gestor de
archivos
Gestor de
bloques
Gestor de
cache
Manejador
de
dispositivo
Manejador de
interrupcin

Hardware

Controlador

Dispositivo
(disco)

Copia en el
sistema
operativo

Copia en el
controlador

Bloque del
dispositivo

20

12/11/2009

E/SBloqueantey
E/SBloqueanteyNo
NobloqueanteI
Bloqueante:procesossuspendidoshastaquelaE/Stermina
Fcildeusarycomprender
Insuficienteparaalgunosrequisitos
Ejemplo:
Ejemplo:read
read,,write
write,...dePOSIX
,...dePOSIX
Nobloqueante:lallamadadeE/Svuelveinmediatamente
Interfazdeusuariomscomplejoyespacioparacopiadedatos
Vuelverpidamenteconelestadodelaoperacin
Se
Sepuedeimplementarcon
puedeimplementarconthreads
p
p
threads
Asncronas:losprocesosejecutanmientraslaE/Ssellevaacabo
Difcildeusarporoperacionespendientes
sealelfindeoperacinpendiente
ElsistemadeE/Senvaenuna
ElsistemadeE/Senvaenunasealelfindeoperacinpendiente
Interfazparacomprobarestadoyesperar(
Interfazparacomprobarestadoyesperar(aiowait
aiowait))

E/SBloqueanteyNo
E/SBloqueanteyNobloqueante
bloqueanteII
II

Snchrona

Asncrona

21

12/11/2009

E/SBloqueanteyNo
E/SBloqueanteyNobloqueante
bloqueanteIII
III
Proc eso
Op era c i n d e E/S

Bib liotec a
Lla m a d a
d e E/S

Proc eso

Reg istro d e o p. E/S

Op era c i n d e E/S

Lla m a d a
d e E/S

P
roces
obloqueado

Prog ra m a c in d e E/S

Controla d or
Disp ositivo
Controla d or

interrup c in
T
ra ta m ie nto interrup c i n
Conte sta c in d e E/S

Re torno d e
Lla m a d a E/S

Bib liotec a

Re torno d e
Lla m a d a E/S

ID. o p.
d e E/S

Proc eso

P
roces
oN
Obloqueado

Bib liotec a

Prog ra m a c in d e E/S

Controla d or
Disp ositivo
Controla d or

interrup c in
T
ra ta m ie nto interrup c i n
Conte sta c in d e E/S

Proc eso
Fin Op. d e E/S?

Bib liotec a

Bib liotec a

Lla m a d a
d e E/S

Fin Op. d e E/S

Proc eso

Reg istro d e o p. E/S

Bib liotec a

Re torno d e
Lla m a d a E/S

Proc eso

(A) E/S b loq uea nte

(B) E/S no b loq uea nte

Estructuras de
dedatos
datos delKerneldeE/S
Elkernelguarda
Elkernelguarda informacin deestado
deestado delosdispositivos
delosdispositivos deE/S,
incluyendo tablas deficheros
deficheros abiertos
abiertos,,conexiones
conexiones dered,estado
dered,estado delos
dispositivos decaracteres
decaracteres..
Muchas estructuras de
dedatos
datos complejas para buffers,ubicacin
buffers,ubicacin de
memoria,,bloques
memoria
bloques sucios
sucios.
.

22

12/11/2009

Tabla deestado
deestado dedispositivos
dedispositivos

Estructura delkerneldeE/SenUNIX

23

12/11/2009

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

Estructura
Elsistemadealmacenamientosecundarioseusaparaguardarlos
programasydatosendispositivosrpidos,deformaquesean
fcilmenteaccesiblesalasaplicacionesatravsdelsistemade
archivos Esa es la razn por la que en la jerarqua de E/S los
archivos.EsaeslaraznporlaqueenlajerarquadeE/Slos
dispositivosdealmacenamientosecundariosecolocanjustodebajo
delamemoriaRAM.
Haydoselementosprincipalesinvolucradosenestesistema:
Discos.Elalmacenamientosecundariosellevaacabocasi
exclusivamentesobrediscos,porloqueesinteresanteconocer
suestructuraycmosegestionan.
Manejadoresdedisco.Controlantodaslasoperacionesquese
hacensobrelosdiscos,entrelasquesonespecialmente
importanteslascuestionesdeplanificacindepeticionesa
disco.

24

12/11/2009

EstructuradelsistemadeE/SenLINUX
Interfaz de llamadas al sistema
Sistema de ficheros virtual
Sistema
S
s e de ficheros
c e os
Cach de
pginas de
memoria

Controlador del
dispositivo
[alto nivel]
Cach de bloques

Gestor de peticiones a los discos


Planificador de los discos
Controlador de dispositivos
[bajo nivel]

Sistem a de Almacenamiento Sec undario

Discos
Dispositivosbsicosparallevaracaboalmacenamientomasivoyno
voltildedatos.Ademsseusancomoplataformaparaelsistemade
intercambioqueusaelgestordememoriavirtual.Sondispositivos
electromecnicos(HARDDISK)uoptomecnicos
electromecnicos(HARDDISK)uoptomecnicos (CD
(CDROMyDVD),
queseaccedenaniveldebloquelgicoporelsistemadearchivosy
d
i l d bl
l i
l it
d
hi
que,actualmente,
que,actualmente,se
seagrupan
agrupanen:
en:
dostiposbsicos,atendiendoalainterfazdesucontrolador:
Dispositivos SCSI(
SCSI(SmallComputerSystemInterface
SmallComputerSystemInterface)).
Dispositivos IDE(
IDE(IntegratedDriveElectronics
IntegratedDriveElectronics)).
tres
trestiposbsicosatendiendoasutecnologadefabricacin:
tiposbsicosatendiendoasutecnologadefabricacin:
Discosduros(
Discosduros(Winchester
Winchester).
).
Discospticos.
Di
ti
Discosextrables.
Independientementedeltipoalquepertenezcan,lasestructuras
fsicaylgicadetodoslosdiscossonmuysimilares,comosemuestra
acontinuacin.

25

12/11/2009

Organizacindeldiscoduro

Pista:cadacoronacircularqueseencuentrasobreunasuperficie.
Pista:cadacoronacircularqueseencuentrasobreunasuperficie.
Sector: divisionesfsicasdetamaofijoenqueseconsideradivididauna
pista.Tpicamentecontienen512B
Cilindro:conjuntodepistas,unaporcadasuperficie,alqueseaccedecon
Cilindro:conjuntodepistas,unaporcadasuperficie,alqueseaccedecon
unaposicinfijadelpeinedecabezas
unaposicinfijadelpeinede
cabezas.Soncomo
.Soncomolosanillos
losanillos quemarcanla
edaddeunrbol.

Organizacindeldisco
OrganizacindeldiscoduroIII
duroIII

Lossectores soncomolos
Lossectores
soncomolospedazosdeunapizza.
pedazosdeunapizza.
Unapista
Una
pista es
esunodelosanillos
unodelosanillos quesoloseencuentranen unplatodelHD.
unplatodelHD.
EnlaimagenpodemosapreciarunHDviejo,con
EnlaimagenpodemosapreciarunHDviejo,con20pistas
20pistas y
y16sectores.
16sectores.

26

12/11/2009

Caractersticasdelosdiscos
CaractersticasdelosdiscosII
Undiscoduroesundispositivodegrancapacidadcompuestopor
variassuperficiesmagnetizadasycuyascabezaslectorasfuncionan
porefectoelectromagntico.
En
Enelmbitoorganizativo,lassuperficiesdeldiscoestndivididasen
el mbito organizativo las superficies del disco estn divididas en
cilindros,conunapistaparacadacabezayunciertonmerode
sectoresporpista.Eltamaodelsectores512bytes.
Capacidaddeldisco:
Capacidad=cilindros*pistas*sectores*tamaosector
*sectores*tamaosector
Capacidad=cilindros*pistas
Losparmetrosdelaestructurafsicadeldiscosonmuyimportantes
paraelmanejadordelmismo.
LasoperacionesdeE/Ssecalculanyoptimizanmediantedos
parmetros fundamentales:
parmetrosfundamentales:
tiempodebsqueda (loquesetardaairdeunapistaaotra)y
tiempodelatencia (eltiempomedioquesetardanallegarlos
datosdebajodelascabezas,unavezposicionadasenlapista)
T_acceso =n*T_bsqueda
=n*T_bsqueda +
+T_latencia
T_latencia +T_transferencia
+T_transferencia

Caractersticasdelosdiscos
CaractersticasdelosdiscosIII
III
Densidaddecadapista.Enlosdiscosmodernoslaspistastienen
distintadensidad,porloqueelnmerodesectoresvaradeunas
pistasaotras.
Intercaladodesectores.Elcontroladordebeempleartiempoen
copiarlosdatosledosamemoriaprincipal.Duranteestetiempono
puedeestartransfiriendodatosdel
puedeestartransfiriendodatosdeldisco,
disco,quesesiguemoviendoa
quesesiguemoviendoa
velocidadconstante,loquesignificaquesiquiereleerelsector
siguientedeberesperaraquelascabezaslectorasdenunavueltay
lleguendenuevoaesebloque.
Almacenamientointermedioenelcontrolador.Sepuedeoptarpor
leer la pista entera y mantenerla en memoria del controlador
leerlapistaenteraymantenerlaenmemoriadelcontrolador.
Controladoresinteligentes.Cuandocontrolanvariosdispositivos,
permitenefectuaroperacionesdebsquedadeformasolapada.

27

12/11/2009

CaractersticasdelosdiscosII
Ejemplodediscoduro
Ejemplo
dediscoduro
SEAGATE Barracuda ATA II ST330630A
Parmetro

Capac idad:
Cilindros:
Cabezas:
Sec tores:
Veloc idad:
T. Bsqueda:
Latenc ia:
Memoria:

Valor

10.2 GB
1023
256
83
7200 RPM
8,5 mseg.
4,16 mseg
2 Mbytes

Estructura de disco I
Losdiscosse
Losdiscossedireccionan
direccionan como un
ungran
gran array1
array1dimensionalde
dimensionaldebloques
bloques
lgicos,, donde el
lgicos
elbloque
bloque lgico es la
launidad
unidad detransferencia
detransferencia ms
pequea..
pequea
Losbloques
Losbloques lgicos delarray1
delarray1dimensionalse
dimensionalsecorresponden
corresponden con
sectores secuenciales eneldisco
Elsector0
Elsector0es
es elprimersectordela
elprimersectordelaprimera
primera pista delcilindro
delcilindro ms
externo..
externo
Enelsector0seguardalatabladeparticiones
Enelsector0seguardalatabladeparticiones..
Particionesactivasodesistema:permitenarrancardesdeunsistema
operativo.

Lacorrespondencia
Lacorrespondencia se
serealiza
realiza enorden
enorden alrededor delapista
delapista,el
,elresto
resto de
pistas yel
yelresto
resto de
decilindros
cilindros desde el
elms
ms externo al
alms
ms interno.
interno. El
manejadordedisconosabenadadelaorganizacindelosficheros,slode
particionesybloques.

28

12/11/2009

Estructura de disco II

Geometra fsica deundiscocon2zonas


deundiscocon2zonas (176sectores
(176sectores))
Una posible geometra virtual
virtualpara
para este disco(175sectores
disco(175sectores))

Gestin de disco
Formateo fsico odebajo
odebajo nivel Divide
Divideaaldiscoensectores
ldiscoensectores que
elcontrolador
el
controlador dediscopuede
dediscopuede leeryescribir
leeryescribir..
Formateo lgico o
oconstruir
construir elsistema
elsistema dearchivo
dearchivo,
,llevaacabo
otrastrestareasfundamentales:
1.

Creacindelbloquedecargao bloque Bootque


Bootque initializa elsistema
elsistema..incluyeelprogramade
incluyeelprogramade
arranquedelcomputador,programaqueseactivacuandoseconectalacorrienteelctricayse
produceunRESET.

2.
3.

Creacindeunalistadebloquesdefectuosos.
Creacindeunalistadebloquesderepuesto.
q
p

29

12/11/2009

Formateo dediscoI

Unsectordedisco

a)Nointercalados
a)No
intercalados

b)Intercalado
b)Intercalado sencillo

c)Intercalado
c)Intercalado doble

Formateo dediscoII

Decalaje decilindros
decilindros

30

12/11/2009

Creacindelaestructuralgica
CreacindelaestructuralgicaII

El bloque de carga incluye el programa que se carga en RAM (ncleo del sistema operativo)
cuando se enciende el ordenador.
ordenador.
El programa cragador Bootstrapse
Bootstrapsealmacena
almacena enROM,
enROM,incluyesololosaspectosms
incluyesololosaspectosms
bsicos de iniciacin del hardware del sistema y un bucle de lectura que carga el sistema
bsicosdeiniciacindelhardwaredelsistemayunbucledelecturaquecargaelsistema
operativoenunadireccindelamemoria.

Leepalabras consecutivas delaentrada ylas coloca deformaconsecutiva enMPapartir deuna direccin determinada.

Address Content
000
001
17002
002
12000

Purpose.
17001
Readawordfromtheinputintothefollowingmemorylocation.
Executewhatwasjustreadabove.
Gobackanddoitagain.

Cuando ha terminado salta a la direccin de memoria donde puso

La lista de bloques defectuosos


defectuosos,, incluye los bloques en mal estado.
estado.
Se marcan siempre
p como ocupados
p
y no se liberan nunca
nunca..
Un bloque es defectuoso porque alguno de los sectores que lo componen son
defectuosos.. Se sabe por la paridad del sector introducida durante el formato fsico
defectuosos
fsico..

Lista de bloques de repuesto para el caso en que algn bloque del dispositivo falle durante el
tiempo de vida del mismo
mismo..

Creacindelaestructuralgica
CreacindelaestructuralgicaII
II
Parafacilitarelusodeunaparticindedistintasformas,
Parafacilitarelusodeunaparticindedistintasformas,la
la
utilidadfdisk
utilidad
fdisk o
oformat
format permitecreardosimgenesasociadas
acadaparticin:
Dispositivodebloques.Todoslosaccesosalmismopasanporel
sistemadearchivosylacachedebloques.
Dispositivodecaracteres.Permiteaccederabloquesdelaparticin
Dispositivodecaracteres.Permiteaccederabloquesdelaparticin
directamente.
Laspeticionesdebenserforzosamentemltiplodeltamaode
Las peticiones deben ser forzosamente mltiplo del tamao de
bloque
Debenestaralineadasalprincipiodeunbloque.

31

12/11/2009

Tabladeparticionesdeundisco

ManejadoresdediscoII
Manejadoresdedisco
Funcionesprincipales:
1. ProcesodelapeticindeE/Sdebloques.
2 Traduccindelformatolgicoamandatosdelcontrolador.
2.
T d i d l f
l i
d
d l
l d
3. Insertarlapeticinenlacoladeldispositivo,llevandoacabo
lapolticadeplanificacindediscopertinente(FIFO
lapolticadeplanificacindediscopertinente(FIFO,,SJF
SJF,,
SCAN,,CSCAN
SCAN
CSCAN,,EDF
EDF,etc.).
,etc.).
4. Enviarlosmandatosalcontrolador,programandolaDMA.
5. BloqueoenesperadelainterrupcindeE/S.
6. Comprobacindelestadodelaoperacincuandollegala
interrupcin.
7 Gestionar
7.
Gestionarloserrores,siexisten,yresolverlossiesposible.
los errores si existen y resolverlos si es posible
8. Indicacindelestadodeterminacinalnivelsuperiordel
sistemadeE/S.

32

12/11/2009

ManejadoresdediscoII
ManejadoresdediscoII

Elpaso1sellevaacaboenunmanejadorparalaclasededispositivodisco
independientedeltipodediscoenparticular,denominadomanejador
independientedeltipodediscoenparticular,denominadomanejador
genrico..
ggenrico

Elpaso2sellevaacaboenunmanejadordependientedeldispositivo,
denominadomanejadorparticular..
denominadomanejadorparticular
Eltipodedispositivoyeldispositivoenparticularsedistinguenporque
Eltipodedispositivoyeldispositivoenparticularsedistinguenporque
enlapeticindeE/Svieneinformacinqueloindica.
EnUNIXyLINUX
En
UNIXyLINUXmajor
major number y
yminor
minor number

Elpaso3dependedeldiseodelmanejador:
Colaglobalparacadatipodedispositivo
Colaparadispositivoparticular
Ambas.

Planificacin de disco I

ElSOes responsable deluso


ElSOes
deluso eficiente delHw
delHw
enundisco,
enundisco,esto
esto es el
eltimpo
timpo deacceso
deacceso
mnimo yelmayor
yelmayorancho
ancho debanda
debanda..

Mejorar el
elttiempo de
deacceso
acceso::
Minimizarel
Minimizareltiempodep
tiempodeposicionamiento
osicionamiento o bsqueda
>
>distance
distance recorridaenelposicionamiento
Minimizar lalatencia
lalatencia de
derotacin
rotacin (tiempo de
deespera
espera hasta que elsector
elsectordeseado
deseado est
debajo dela
delacabeza
cabeza))

Objetivo:minimizareltiempodebsqueda,queesdirectamenteproporcionalala
Objetivo:minimizareltiempodebsqueda
,queesdirectamenteproporcionalala
distanciadebsqueda

El tiempodetransferenciatienequeverconlavelocidadderotacindeldisco:
Eltiempodetransferencia
El
tiempo de transferencia tienequeverconlavelocidadderotacindeldisco:
tiene que ver con la velocidad de rotacin del disco:
Anchodebanda:bytestransferidos/velocidaddetransferencia

Elancho debanda
Elancho
debanda es el
elnmero
nmero totaldebytestransferidos
totaldebytestransferidos divido entreeltiempo
entreeltiempo total
entrelaprimera
entrela
primera peticin delservicio
delservicio ylaltima
ylaltima transferencia.
transferencia.

33

12/11/2009

Planificacin de disco II
Criteriosdeplanificacin:
Optimizareltiempodebsqueda(
Optimizareltiempodebsqueda(SSOO
SSOO))
Darserviciodeterminista(
Darserviciodeterminista(multimediaySSTR
multimediaySSTR))

Existen diferentes algoritmos deplanificacin


deplanificacin depeticiones
depeticiones deE/Sa
disco.
FCFS,SSTF,SCAN,C
FCFS,SSTF,SCAN,CSCAN,C
SCAN,CLOOK
Por ejemplo
j p p
para una colade
coladepeticiones
peticiones de0a199:
p
98,183,37,122,14,124,65,67
Headpointer53

Mecanismo de movimiento de brazo de disco

34

12/11/2009

FCFS(FIFO)
Vemos que la
lacabeza
cabeza I/O
I/Oatraviesa
atraviesa untotalde640
untotalde640 cilindros

ShortestSeekFirst(SSTF)I
Seleciona lapetin
lapetin conmnima
conmnima distancia desde el
elposicionamiento
posicionamiento
actual.
SSTFes
SSTFes una variante deplanificacin
deplanificacin SJF(
SJF(Shortest
(Shortest Job
JobFirst
First);
) puede
);puede
causar inanicin (starvation
(starvation)en
)enalgunas
algunas peticiones.
peticiones.
Primerolaspeticionesqueminimizanelmovimientodecabezasdesdela
posicinactual.
Idea:maximizarelanchodebandadeldisco.

35

12/11/2009

ShortestSeekFirst(SSTF)II
Vemos que la
lacabeza
cabeza I/O
I/Oatraviesa
atraviesa untotalde236
untotalde236 cilindros

Ascensor(SCAN)I
Ascensor(
SCAN)I
Elbrazo
Elbrazo dediscosemueve
dediscosemueve hacia unextremo
unextremo sirviendo peticiones en
ensu
su
recorrido;el
recorrido
;elsentido
sentido seinvierte
seinvierte y
ycontina
contina elservicio
elservicio depeticiones
depeticiones hasta
alcanzar elotro
elotro extremo
extremo..
Idea:evitardesplazamientosatrsyadelante.
Ventaja:combateelproblemadeinaniciny
Ventaja:combateelproblemadeinanicinyhomogeiniza
homogeiniza las
desviacionestpicasdelaslatencias.
Problema:diferenteslatenciassegnlaposicin;peorenlosextremos,
mejorenelcentro.

36

12/11/2009

Ascensor(SCAN)II
Ascensor(
SCAN)II
Vemos que la
lacabeza
cabeza I/O
I/Oatraviesa
atraviesa untotalde208
untotalde208 cilindros

Ascensorcclico(SCAN)I
Ascensorcclico(
SCAN)I
Proporciona untiempo
untiempo de
deespera
espera ms uniforme que el
SCAN.
Elbrazo
Elbrazo dediscose
dediscosemueve
mueve hacia unextremo
unextremo sirviendo
peticiones ensu
ensu recorrido
recorrido.Cuando
.Cuandoalcanza
alcanza el
elextremo
extremo final,
inmediatamente semueve
semueve alprincipiodeldiscosin
alprincipiodeldiscosinservir
servir
peticiones,
peticiones
,desde
desde donde semueve
semueve haca elextremo
elextremo final
sirviendo las restantes peticiones
peticiones..
Trata loscilindros
loscilindros como una lista circulardonde
circulardonde elsiguiente
elsiguiente
alltimo
al
ltimo cilindro es el
elprimero
primero..
Se
Seusa
usa frecuentemente

37

12/11/2009

Ascensorcclico(SCAN)II
Ascensorcclico(
SCAN)II
Vemos que la
lacabeza
cabeza I/O
I/Oatraviesa
atraviesa untotalde345
untotalde345 cilindros 199
199::
Va delltimo
delltimo al
alprimero
primero enunnicomovimientoytardamuypoco

CLOOKI
Versin delC
delCSCAN
Elbrazo
Elbrazo nicamente va hasta lapeticin
lapeticin ms extrema
encada
en
cada direccin,sin
direccin,sinllegar
llegar alos
alosextremos
extremos deldisco.

38

12/11/2009

CLOOKII
Vemos que la
lacabeza
cabeza I/O
I/Oatraviesa
atraviesa untotalde?
untotalde? cilindros

Seleccin deun
deunalgorithmo
algorithmo de
planificacin dedisco
SSTFesfrecuenteypareceelmsnatural
SCAN
SCANyC
SCANyC
CSCANtienenmejorrendimientoparasistemasqueusanmuchoel
SCAN ti
j
di i t
it
h l
disco .
La
Laeficiencia
eficiencia depende delnmero
delnmero y
ytipo
tipo depeticiones
depeticiones..
Laspeticiones
Laspeticiones al
alservidor
servidor dediscoestn
dediscoestn influenciadas por elmtodo
elmtodo de
ubicacin deficheros
deficheros..
El
Elalgoritmo
algoritmo deplanificacin
deplanificacin dediscopuede
dediscopuede estar enun
enunmdulo
mdulo separado
del SO permitiendo que se
delSO,permitiendo
delSO,
se sustituya por otro algoritmo si es necesario
sesustituya
necesario..
Algoritmoestndarencasitodoslossistemas:C
Algoritmoestndarencasitodoslossistemas:CSCAN.
SSTFyLOOKson
SSTFyLOOKsonalternativas
alternativas razonables como algorithmo por defecto
defecto..

39

12/11/2009

Eficiencia en el sistema de archivos

Inodes
nodessituados
situados alinicio
alinicio del
deldel
del disco
Disco
Discodividido
dividido engrupos
engrupos cilindros
Cada uno consus
consus propios bloques ei
einodos
79

Gestindeerroresdedisco
Errorestransitorios
Errorestransitorios
Debidosalaexistenciadepartculasdepolvoenlasuperficiedel
discocuandoseefectalaoperacindeE/S,apequeasvariaciones
elctricasenlatransmisindedatos,fallosdecalibracindecabezas,
...
SedetectanporqueelECCdelosdatosnocoincideconelcalculadoy
seresuelvenrepitiendolaoperacindeE/S.
Sidespusdeunciertonmeroderepeticionesnoseresuelveel
problema,elmanejadorconcluyequelasuperficiedeldiscoest
daadaylocomunicaalnivelsuperiordeE/S.
Errores
Errorespermanentes
permanentes setratandedistintasformas.
Erroresdeaplicacin:pocoquehacer.
Erroresdelcontrolador:tratardereiniciarelcontrolador.
Erroresdesuperficiedeldispositivo:sustituirelbloqueporunode
repuesto.

40

12/11/2009

Gestinde
Gestindeerrores
errores

Una pista dediscoconunsectordefectuoso


dediscoconunsectordefectuoso
Se
Sesustituye
sustituye elsectormalo
elsectormalo por unspare
unspare
Se
Sedesplazan
desplazan los
lossectotres
sectotres para evitar elmalo
elmalo

Fiabilidadytoleranciaafallos
ElsistemadeE/Sesunodeloscomponentesdelsistemaconmayores
exigenciasdefiabilidad,debidoaqueseusaparaalmacenardatosy
programas de forma permanente.
programasdeformapermanente.
Lasprincipalestcnicasusadasparaproporcionarestafiabilidadson:
Cdigoscorrectoresdeerror,comolosexistentesenlascabecerasy
colasdelossectores.
Operacionesfiables,cuyacorreccinsepuedeverificarantesdedar
elresultadodelaoperacindeE/S.Estatcnicaseimplementa
mediantetcnicasdealmacenamientoestable.
Redundancia,tantoendatosreplicadoscomoencdigodeparidad
Redundancia, tanto en datos replicados como en cdigo de paridad
paradetectarerroresyrecuperarlos.Estatcnicaseimplementa
medianteelusodedispositivosRAID
medianteelusodedispositivosRAID((Redundant Array of
Inexpensive Disks
Disks).
).
Redundanciahardware,comoelsistemadeWindowsNTque
permiteconectarundiscoatravsdedoscontroladores.

41

12/11/2009

RAIDStructure
RAID
RAID Multiplesdiscos
Multiplesdiscosproporcionan
proporcionan fiabilidad via
viaredundancia
redundancia..
Se
Seutiliza
utiliza un
ungrupo
grupo dediscoscomo
dediscoscomo una unidad de
dealmacezamiento
almacezamiento..
Discosespejo
Discosespejo (Mirroring or
orshadowing).
shadowing).
Bloques de
deparidad
paridad intercalados (menos redundancia
redundancia).
).
Hay6
Hay6niveles
niveles RAID:

Niveles RAID

42

12/11/2009

OrganizacionesRAID

RAID0:lainformacinsegrabayseleeenparaleloentrevariosdiscos
RAID0
:lainformacinsegrabayseleeenparaleloentrevariosdiscosfsicos
fsicos

RAID1:Dosdiscosenconfiguracinespejo.Unocontienelosdatosyelotro
RAID1:Dosdiscosenconfiguracinespejo.Unocontienelosdatosyelotro
os d scos e co gu ac espejo U o co t e e os datos y e ot o
unarplicaexacta
unarplica
exacta

RAID2::Array
RAID2
Array dediscossincronizados,convariosdiscosredundantesque
contienenelcdigodecorreccinHamming
contienenelcdigodecorreccinHamming

RAID3:Array
RAID3:
Array dediscossincronizados,conundiscoredundantequecontieneel
bitdeparidad
bitde
paridad

RAID4:Array
RAID4:
Array dediscosindependientes,conundiscodecontroldeparidad
dedicado

RAID5
RAID
5::Array
Array dediscosindependientes,concontroldeparidad
dediscosindependientes,concontroldeparidaddistribuido
distribuido

RAID6::Array
RAID6
Array dediscosindependientes,concontroldeCRCdistribuido

RAID(0+1)
RAID(0+1)yy (1+0)

43

12/11/2009

RAID5
RAID
5
Controlador

bloque 0

bloque 1

paridad

bloque 3

Disco 0

Disco 1

bloque 2

Disco 2

paridad

Disco 3

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

44

12/11/2009

Dispositivos dealmacenamiento
dealmacenamiento terciario
La
Lacaracterstica
caracterstica que defineel
defineelalmacenamiento
almacenamiento terciario es Lowcost.
Generalmente,el
Generalmente,elalmacenamiento
almacenamiento terciario es mobible:
mobible:
Discosfloppy,
Discosfloppy,ms
ms rpidos que losdiscos
losdiscosduros
duros ycapacidad
ycapacidad de1MB.
de
CD
CDROMs
Cintas
Cintasmagnticos
magnticos

Discosremovibles
Discos
removibles
Undiscomagneto
Undiscomagnetoptico almacena datos enuna
enuna superficie rgida de
materialmagntico
material
magntico cubierta conuna
conuna capa deplstico
deplstico..
Una cabeza laser
laseramplifica
amplifica uncampomagntico
uncampomagntico para grabar unbit.
La
Laluz
luz laserse
laserseutiliza
utiliza tambin para leerlosdatos
leerlosdatos..
Losdiscospticos
Losdiscospticos noutilizan
noutilizan magnetismo,
magnetismo,emplean
emplean materiales
especiales que sealteran
sealteran conlaluz
conlaluz dellaser.

45

12/11/2009

DiscosWORM
WORM(WriteOnce,ReadManyTimes)se
WORM(WriteOnce,ReadManyTimes)sepueden
pueden escribir slo una
vez .
Una capa depapel
depapel aluminio entredoscapas
entredoscapas deplstico
deplstico..
Paraescribir
Paraescribir unbit,sequema
unbit,sequema conlaserun
conlaserunpequeo
pequeo agujero enel
enelpapel
papel
dealuminio
de
aluminio deldispositivo
deldispositivo;la
;lainformacin
informacin sepuede
sepuede destruir pero no
alterar..
alterar
Muy duraderos y
y fiables
yfiables
Los ReadOnly disks,
disks,como
como CD
CDROM
ROMyy DVD,vienen
DVD,vienen defabrica
defabrica conlos
datos pre
pregrabados
grabados..

Cintasmagnticas
Cintas
magnticas
Fue elprimerdispositivo
elprimerdispositivo delamacenamiento
delamacenamiento secuendario.
secuendario.
Comparada
p
conlosdisos
conlosdisos,,es
es ms barata yy
yalmacena
almacena ms datos,
datos,pero
pero el
p
acceso aleatorio es muchoms
muchoms lectos:~1000
lectos:~1000veces
veces ms lentoaque el
disco.
Tpicamente almacena 20
20200GB.
Una vez que los
losdatos
datos estn bajo lacabeza
lacabeza I/O,la
I/O,lavelocidad
velocidad de
transferencia es comparablealadeldisco.
Se
Seutiliza
utiliza para backups,opara
backups,opara guardar datos que apenas seusan
seusan..
Tecnologas comunes son4mm,8mm,19mm,LTO
son4mm,8mm,19mm,LTO2andSDLT

46

12/11/2009

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

Elreloj
El
reloj
Variasacepciones:
Relojdelprocesador
j
p
Relojdelsistema(quemantienefechayhora)
TemporizadorqueactivaperidicamentealS.O
TemporizadorqueactivaperidicamentealS.O..
S.O.vinculadoconlasdosltimas
S.O.vinculadoconlasdosltimasacepciones
acepciones
RelojesundispositivodeE/S?
S,yaqueimplicaregistrosdeE/S
S,yaqueimplicaregistrosdeE/Seinterrupciones
einterrupciones
Generalmenteel
GeneralmenteelS.O.ledatratamientoespecfico
S.O.ledatratamientoespecfico

47

12/11/2009

Reloj hardware
Reloj programable:
programable:

Circuitotemporizadorquegenerasealperidica(
Circuitotemporizadorquegenerasealperidica(tick
tick))
Conectadoalneadeinterrupcindealtaprioridad
Frecuenciaprogramable(actacomodivisordefrecuencias)
Frecuencia programable (acta como divisor de frecuencias)
Modooperacinprogramable(nicodisparo,ondacuadrada)
Generalmentecircuitoconmltiplestemporizadores
Notodosconectadosalneadeinterrupcin
Relojalimentadoporbateraquemantienehorayfecha
ConsultadoporS.O.ensuarranque
TambindenominadorelojCMOS

Elreloj
Elreloj
Reloj software

Tres maneras distintas demaintener


demaintener la
lahora
hora del
delda
da
96

48

12/11/2009

Driverde reloj
Laborprincipalde
LaborprincipaldeSO:
SO:manejo
manejodeinterrupcionesdeCK
deinterrupcionesdeCK
Tambininiciacinygestindellamadas
Tambininiciacinygestindellamadasrelacionadas
relacionadas

Compromisoalfijarfrecuenciadeinterrupcin:
Demasiadoalta:Excesivasobrecargaportratamientode
Demasiadoalta:Excesivasobrecargaportratamientodeint
int..
Demasiadobaja:Limitadaprecisinenmedidadeltiempo
Ejemplotpico:100Hz(1interrupcincada10ms)
Ejemplotpico:100Hz(1interrupcincada10ms)

Minimizareltrabajo
Minimizareltrabajorealizadopor
realizadoporlarutina
larutinadeinterrupcin
deinterrupcin
Yaquemientrasnoseatiendeint
Yaquemientrasnoseatiendeint dedisp.demenos
dedisp.demenosprioridad
prioridad

Solucintpica:Dividirtrabajoasociadoa
Solucintpica:Dividirtrabajoasociadoaint
int.dereloj
.dereloj
Operacionesmsurgentesrealizadasporrutinadeinterr
Operacionesmsurgentesrealizadasporrutinadeinterr..
Resto:tratamientoposteriorfueradelarutina(int
Resto:tratamientoposteriorfueradelarutina(int.software
.software)
)

Driverde reloj
Funcionesdelmanejadordelreloj:

Mantenimientodefechayhora
Gestindetemporizadores
Contabilidadyestadsticas
Soporteparalaplanificacindeprocesos

49

12/11/2009

Mantenimientodefechayhora
EnarranqueSO
EnarranqueSOprogramatemporizadoryleefecha
programatemporizadoryleefecha
Apartirde
Apartirdeentoncesse
entoncesseactualizalahoraencada
actualizalahoraencadaint
int CK
Almacenamientodefechay
Almacenamientodefechayhora:
hora:
Espacio
Espaciosuficiente
suficiente
Debe
Debepoderseguirusndoseenunfuturolejano
poderseguirusndoseenunfuturolejano
Diferenciasentrehorariosdepases:
conversin
Se
SealmacenaenUTCybibliotecasseencargande
almacenaenUTCybibliotecasseencargandeconversin
Unidadesdetiempodesdefechafijaenelpasado
segs.o
g .o
segs
segs.desde1
g .desde111970
UNIX:
UNIX:segs
Windows:centenasde
Windows:centenasdensegs
nsegs.desde1
.desde111601
Serviciosparaleery
Serviciosparaleerycambiarhora
cambiarhora(slo
(slosuperusuario
superusuario)
)
Peligrosoretrasarhora:
AlgunosSS.OO.permitenhacerlogradualmente

Gestindetemporizadores
Algunosprocesosnecesitanesperarunplazodetiempo
S.O.ofreceserviciosparaello

PropioS.O.tambinlorequiere
P.ej.mdulodecomunicacionesomanejadordedisquete

MltiplestemporizadoresapartirdeltemporizadorHW
Listadetemporizadoresactivos:
Elemento:plazorestante(ticks)+funcinaejecutar alcumplir

Posibleorganizacindelalista:
Ordencrecienteyconplazosrestantesrelativosaanteriores
Orden creciente y con plazos restantes relativos a anteriores
Ejemplo:temp1 5ticks,temp2 8ticks ytemp3 8ticks:
[temp1 5] [temp2 3] [temp3 0]

Silagestindeltemporizadorconsumemuchotiempo >
ejecutadafueraderutinadeinterrupcin

50

12/11/2009

Contabilidadyestadsticas

Ejecucinperidicaderutinade
Ejecucinperidicaderutinadeint
j
p
int.reloj
.relojj
Permitemuestreodediversas
Permitemuestreodediversasvariables
variables

Contabilidaddeusodeprocesadordecadaproceso
Procesoqueestabaejecutandocuando
Procesoqueestabaejecutandocuandoint
int.dereloj
.dereloj
Selecargausodeprocesadoreneseintervalo
Sedistinguesiestabaenmodousuarioosistema
Sedistinguesiestabaenmodousuarioosistema

Perfilesdeejecucin
Tiempoqueconsumen
Tiempoqueconsumenlasdistintaspartesdelprograma
lasdistintaspartesdelprograma
Rutinade
Rutinadeint
int..Muestreael
MuestreaelPC
PCdel
delprocesointerrumpido
procesointerrumpido
Seobtienehistogramadela
Seobtienehistogramadelaejecucin
ejecucindelprograma
delprograma

Soportepara
Soporte
paraplanificacindeprocesos
planificacindeprocesos
Algoritmosdeplanificacin
Algoritmosdeplanificacinbasadosen
basadoseneltiempo
eltiempo
Rutinade
Rutinadeint
int..CK
CKconllevaaccionesde
conllevaaccionesdeplanificacin
planificacin
EnRound
EnRoundRobin
Robin::
Encadainterrupcinsedescuentatiempoalarodaja
Cuandollegaacero
Cuandollegaacero Replanificacin
Algoritmosque
Algoritmosquerecalculan
recalculan peridicamentelaprioridad
P.ej.dependiendodeusodeUCP/procesoenltimointervalo
P j d
di d d
d UCP/
lti
i t
l

51

12/11/2009

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

Elterminal

Teclado+pantalla
Dependiendodeformadeconexin:
Terminalesserie
Terminalesproyectadosen
Terminalesproyectadosenmemoria
memoria

Dependiendodetipodeinformacinmanejada:
Terminalesenmodo
Terminalesenmodoalfanumrico(texto)
alfanumrico(texto)
MemoriadevdeocontienecdigosASCII
Controladordevdeogenerapatronesdepixels
Terminalesenmodo
Terminalesenmodogrfico
grfico
Memoriadevdeocontienematrizdepixels
SWdebetransformardecdigoASCIIapatrndepixels

Exposicinsecentraenterminalesenmodotexto

52

12/11/2009

Mododeoperacindelterminal
Mododeoperacindelterminal
Similarentodoslostiposdeterminales
Diferencia:QusehaceporHWyquporSW?

Tecladogenerainterrupcinalpulsartecla
S.O.leecdigodetecladeregistrodecontroladordeteclado
ConversinaASCIIymanejodeteclasmodif.porSW

SalidaparaterminalmapeadoenMemoria
Pantalla:matrizdepixels conmemoriadevdeoasociada
Memoriadevdeodirectamenteaccesiblealprocesador
Escrituraenpantallarequiereescrituraenmemoriadevdeo
Escritura en pantalla requiere escritura en memoria de vdeo
Controladordevdeoleedememoriadevideoyrefrescapantalla
CarcterASCII Patrndepixels

Secuenciasdeescape:
Permitenoperacionesespeciales(p.ej.borrarlapantalla)

HardwaredeterminalI

P ll l portt
Parallel

Terminalmapeado enMemoria
Eldriverescribe directamente enlaRAMdevideo
106

53

12/11/2009

HardwaredelterminalII

Una imagen delaRAMdevideo


Displaysencillo monocromtico
Modo carcter

Corespondenca enlapantalla
losxs sonbytesdeatributos
107

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

54

12/11/2009

Lared
Dadasucrecienteimportancia,soportedeS.O.cadavez
Dadasucrecienteimportancia,soportedeS.O.cadavezmejor
mejor
AlgunosSS.OO.ledantratamientodiferenteaotrosdispositivos
SS.OO. le dan tratamiento diferente a otros dispositivos
Algunos
EnLinuxnohayarchivosen/
EnLinuxnohayarchivosen/dev
dev parala
paralared
red
Softwarederedorganizadoentresniveles:
Niveldeinterfazalasaplicaciones
Tpicamente,
Tpicamente,sockets
sockets (Winsock enWindows)(captulo10)
PuedeconsiderarsecomoniveldesesinOSI
Niveldeprotocolos
Capa(s)queimplementa(n)transporteyredOSI(oTCP/IP)
Incluyefuncionesdeencaminamiento
Niveldedispositivodered
Manejadoresdedispositivosdered(niveldeenlaceOSI)
Manejadoresdedispositivosdered(niveldeenlaceOSI)

Nivelesdelsoftwaredered

55

12/11/2009

Nivelesdelsoftwaredered
Interfaz a las aplicaciones

Nivel de transporte

Nivel de red
Ethernet

SLIP

..........

Nivelestrabajandeformaindependiente
Usodeinterfacesestndarentre
Usodeinterfacesestndarentreniveles
niveles

Mensajedesciendecomoresultadodellamadadeaplicacin
Mensaje desciende como resultado de llamada de aplicacin
Sevaaadiendoinformacinde
Sevaaadiendoinformacindecontrol
control

Menajeasciendecomoresultadodeinterrupcinderecepcin
Sevaeliminandoinformacindecontrol
Sevaeliminandoinformacindecontrol

Paraimplementacineficiente,minimizarcopiadeinformacin

Entrada//Salida
Entrada

CaracterizacindelosdispositivosdeE/S
Drivers:softwaredeE/Sdependientedeldispositivo
/
p
p
SoftwaredeE/Sindependientedeldispositivo
Almacenamientosecundario
Almacenamientoterciario
Elreloj
Elterminal
Lared
Serviciosdeentrada/salida

56

12/11/2009

Serviciosdeentrada/salida
Serviciosrelacionadosconelreloj
Serviciosdehorayfecha
Paraleerycambiar(slo
Para leer y cambiar (slo superusuario)fechayhora
Paraleerycambiar(slosuperusuario
superusuario))fechayhora
superusuario
) fecha y hora
Temporizaciones
Tantosncronas(bloqueantes)comoasncronas
Serviciosdecontabilidad
Ejemplo:tiempodeprocesadorconsumidoporunproceso
Ejemplo:tiempodeprocesadorconsumidoporunproceso
Serviciosdeentrada/salida
Accesoadispositivosatravsdeinterfazdearchivos
Programasindependientesdelmedioqueusan
Sloespecficosparaoperacionesdependientesde
Sloespecficosparaoperacionesdependientesdedispositivo.
dispositivo.
Porejemplo,desactivarecodeterminal

ServiciosdefechayhoraenPOSIX
time_t time(time_t *t);
Devuelve nmero de segundos desde 111970 en UTC
AlgunosUNIXtienengettimeofday conprecisindesegs.
Funcionesdebibliotecaparaconvertiraao,mes,...,segundos
gmtime (UTC) ylocaltime (horariolocal)

int stime (time_t *t);


Fijahorasegnparmetro(segundosdesde111970enUTC).
Sloparasuperusuario
AlgunosUNIXtienensettimeofday conprecisindesegs.

57

12/11/2009

ServiciosdetemporizacinenPOSIX
unsigned int alarm (unsigned int segundos);
Establece temporizador del plazo especificado
El proceso solicitante no se bloquea:
Cuando se cumple plazo recibe seal SIGALRM

Slo uno activo por proceso


Si haba uno activo, lo desactiva y devuelve plazo
pendiente

Temporizadores ms avanzados (setitimer):


Mayor resolucin y diversos modos de operacin

ServiciosdecontabilidadenPOSIX
Diversasfunciones,sepresentaunafrecuentementeusada:
Obtienetiempodeprocesadorconsumidoporunproceso

clock_t times(struct tms *info);


Proporciona info. sobre tiempo de ejecucin del proceso e
hijos:
En parmetro de salida, tiempo en modo usuario y sistema
consumido p
por p
proceso e hijos
j
Devuelve valor relacionado con tiempo real en el sistema
p. ej. ticks de reloj desde arranque del sistema
Este valor no se usa de forma absoluta
Se realizan dos llamadas y se calcula la diferencia

58

You might also like