Escolar Documentos
Profissional Documentos
Cultura Documentos
19.1.- Capacidad de autocomprobacin ................................................................ ..... 2 19.1.1.- Comprobacin de la TLB .................................................................................... 2 19.2.- Soporte a la depuracin ........................................................................... ......... 2 19.3.- El reset o la inicializacin ......................................................................... ........ 3 19.4.- Modo real ...................................................................................... .................... 4 19.5.- Modo protegido ............................................................................. ................... 5 19. .- Modo !irtual " ........................................................................................ ......... 19.#.- Modo mane$o del sistema %SSM& ...................................................................... #
Captulo 19 - 1
3 1 #E$E#%&'(
1 5
1 4 T)*(
1 2
1 1 F&+),)&
"
+('E,( *&$(
19.1.1 Comprobacin de la T B
La TLB es una memoria tipo C5& ,acceso por contenido. que est; realizada con una memoria cach7 ultrarr;pida# dnde ha' etiquetas ' datos. En la etiqueta pone una direccin lineal ' en los datos la direccin -(sica. La TLB )uarda las 2<= 4ltimas traducciones de las 4ltimas p;)inas utilizadas. La arquitectura interna del Pentium dispone de 2 re)istros T$= ' T$ mediante los cuales se puede leer ' escribir cualquier posicin de la TLB. Para realizar el auto chequeo se precisa un pro)rama en len)ua/e Ensamblador# que controla un mapa de pruebas. Tambi7n es recomendable desacti2ar la pa)inacin para impedir que los resultados de las pruebas eliminen a los datos obtenidos del mane/o de la memoria con la pa)inacin. T$= act4a como re)istro de comandos para el control de las pruebas# mientras que T$ es el que se car)a con los resultados de las pruebas# una 2ez e-ectuadas.
Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad La depuracin es la operacin que se realiza para comprobar ' a/ustar el -uncionamiento# tanto del equipo -(sico como del sistema l)ico. El Pentium dispone de tres recursos e-icaces para el soporte de la depuracin0
Captulo 19 - 3
'unto de 'arada por So(t)are0 +e consi)ue detener el procesamiento de un pro)rama en un punto determinado del mismo# introduciendo all( una instruccin de interrupcin. +e trata de *>T?# que est; codi-icada en un slo b'te ' su e/ecucin ori)ina interrupcin# que es atendida por la entrada ? de la *9T. 5ll(# el pro)ramador del sistema puede situar la re-erencia a un pro)rama que 2isualice los elementos deseados de la arquitectura del procesador ' del estado del sistema. E*cepcin paso a paso+ Cuando se habilita el se1alizador T: del re)istro de E:L5@+ , T:A1.# cada 2ez que se e/ecuta una instruccin se produce una e8cepcin que es atendida por la entrada 1 de la *9T. La e8cepcin pasa a paso almacena el re)istro de se1alizadores en la pila# con el bit T:A1. 9espu7s# se desacti2a T: para poder procesar con normalidad la rutina de ser2icio a dicha e8cepcin# que al concluir con la instruccin *$ET# se 2uel2e a colocar ,desapilar. el re)istro de se1alizadores como estaba# con T:A1# trans-iri7ndose el control a la si)uiente instruccin del pro)rama principal. ,egistros de -epuracin %-,.--,#&+ &ediante estos re)istros se pueden pro)ramar cuatro puntos de parada independientes. Los re)istros 9$!-9$? contienen la direccin lineal de los cuatro posibles puntos de parada. 9$ sir2e para especi-icar la condicin que se desea detectar par ori)inar la parada del procesamiento. Tambi7n se puede determinar la )ranularidad# as( como enmascarar cada condicin por separado ' de-inir la entrada correspondiente0 local para una tarea# o bien# )lobal para todas las que ha' en el sistema. 9$= )uarda la in-ormacin necesaria para conocer la causa que ha pro2ocado una parada# al detectarse una condicin de punto de parada.
Captulo 19 - 4
Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad acti2acin del *>*T3 permite cambiar de modo prote)ido a modo real manteniendo el contenido de las cah7s internas. El estado de los re)istros es el si)uiente0 E:L5@+ E*P C+ E56AEB6AEC6AE96AE9*AE+*AEBPA E+P C$! !!!! !!!2 he8 !!!! :::! he8 Base L(mite ! =!!! !!1! he8
Captulo 19 - 5
1/ Conclusin+ +i el $e)istro C$! tiene un ! en el bit de menos peso # el bit PE se encontrar(a a ! por lo que el Pentium siempre comenzar(a traba/ando en modo real . Por otro lado tambi7n es ! el bit de mas peso # que se trata del bit P@ de manera que al comenzar a traba/ar el Pentium lo hace con la pa)inacin desacti2ada. ,9ibu/o del re)istro cr!. 2/ Conclusin+ En modo $eal la &emoria Principal slo utiliza el primer &b'te de la memoria -(sica. Por lo que en &odo $eal las 12 l(neas de menos peso no son utilizadas# sin embar)o la primera direccin que 2a'a despu7s del $eset entra por las ?2 l(neas.
La 1D direccin no est; dentro del mapa de memoria que le corresponde al modo $eal por lo que en esa posicin ha' una instruccin de salto a la !!!: :::! que se trata de la 1D direccin real de nuestro pro)rama. 3/ Conclusin+ >ada mas empezar a traba/ar se puede )enerar una interrupcin una e8cepcin# por lo tanto antes de empezar a traba/ar la *9T tiene que estar residente en memoria principal. Por de-ecto# la direccin -(sica de la *9T es !!!! !!!! he8adecimal.
Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad 2-El bus de direcciones slo usa las 2! l(neas de menos peso. ?-Es monotarea . F-Los E re)istros de propsito )eneral, 56# B6# C6 # 96# +*# 9*# +P ' BP. son de 1= bits. <-El puntero de instrucciones ,*P. del E!E= est; mane/ado en los 1= bits de menos peso del re)istro E*P.
Captulo 19 - 7
=-El re)istro de 1= bits :L5@+ contiene los -la)s de control ' estado. , Este re)istro est; mapeado en los 1= bits menos si)ni-icantes del re)istro de ?2 bits E:L5@+.. -La tabla *9T es de 2<= entradas# con entradas de E b'tes ' en cada una ha' un 2ector de interrupciones que apunta a la tabal de interrupciones que tiene entradas de F b'tes.
Ia' que inicializar el se)mento de pila# direccionando una zona de $5&. +implemente# ser; preciso car)ar los 2alores ++ ' E+P con los correspondientes a la zona deseada# lo cual se hace a base de instrucciones &%J. Entonces ha' una serie de pasos que ha' que dar antes de pasar a &odo Prote)ido0 1K 9eshabilitar las interrupciones . Cna instruccin CL* , *:A!. deshabilita las interrupciones mascarables.
Captulo 19 - 8
Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad 2K *nstalar en memoria la @9T ' apuntarla mediante L@9T$ , instruccin que nos apunta a la @9T. ?K E/ecutar la instruccin &%J C$! que pone el -la) Pe a1 , &eter un 1 en C$!# por lo que car)o en E56 !!!! !!!1 he8 ' de ah( mo2emos a C$!. FK Iacer una instruccin Lump. Cuando estamos en &odo $eal ha' un elemento que se denomina Cola de Preb4squeda que tiene car)ados cdi)os de *nstrucciones de &odo $eal# por lo que antes de pasar a &odo Prote)ido ha' que limpiar la pila. Esto se hace con la Lump que elimina las instrucciones que quedan por detr;s de la posicin a la que salto.
Captulo 19 - 9
<K E/ecutar la instruccin LL9T ,Load L9T.. Car)a en L9T$ la direccin de la L9T de la tarea que ha' en curso. =K E/ecutar la instruccin LT$. Car)a el re)istro de tareas con un selector de se)mentos a la tarea inicial del modo prote)ido o a un ;rea escribible de memoria que pueda ser usada para car)ar la in-ormacin del T++ en un cambio de tarea. K 5ctualizar los re)istros de se)mentos para que apunten a los se)mentos de &odo Prote)ido. EK E/ecutar la instruccin L*9T para car)ar el re)istro *9T$ con la direccin ' el l(mite del *9T del modo Prote)ido. 9K E/ecutar la instruccin +T* , Permitimos las interrupciones mascarables. Iasta ahora no hemos permitido las interrupciones de los peri-7ricos..
El procesador slo podr; abandonar el &odo JirtualME= mediante una interrupcin o una e8cepcin. Captulo 19 - 10
Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad El procesador slo testear; el -la) J& en los si)uientes casos0 Cuando se car)an los re)istros del se)mento# para determinar si ha' que usar la traduccin de direccin en estilo E!E=. Cuando decodi-ica las instrucciones para determinar qu7 instrucciones son las no 2;lidas en &odo JirtualME=.
Captulo 19 - 11
5l comprobar instrucciones pri2ile)iadas# en accesos a p;)inas# o cuando se realiza cualquier otra comprobacin de permiso.
Cuando se pasa a &odo +&&# el procesador a(sla completamente un espacio de memoria reser2ado para 7l donde se conmuta mientras )uarda todo el conte8to de la tarea que 2a a e/ecutar. Es entonces cuando e/ecuta el cdi)o espec(-ico del +&&. Cuando se retorna del modo +&&# el procesador 2uel2e a su estado anterior a la interrupcin del mane/o del sistema. Para pasar de cualquiera de los modos a modo +&&# habr; que acti2ar por hardBare una patita del Pentium. Esa patita es la +&*# que se acti2a por ni2el ba/o ,+&*3.. La interrupcin que pro2oca esta patita tiene ma'or prioridad que las interrupciones e8ternas o las e8cepciones de depuracin. Lo primero que realizara el procesador ser; sal2ar el estado en el que se encuentra el procesador ' cambiar a un entorno operati2o reser2ado por 7l ' contenido en l a $5& de mane/o de sistema. &ientras el procesador est7 en este modo# e/ecutar; el cdi)o del manipulador del +&* para realizar ciertas operaciones como desacti2ar unidades de disco o monitores# poniendo todo el sistema en un modo de reposo. Cuando el manipulador +&* a completado sus operaciones# e/ecuta una instruccin de salida ,$+&. que hace que el procesador car)ue de nue2o el conte8to de la tarea que estaba e/ecutando antes de iniciar este modo ' por 4ltimo 2uel2e al &odo $eal o al &odo Prote)ido de/ando de e/ecutar la aplicacin de interrupcin o el pro)rama del sistema operati2o. Para pasar a +&& a los otros tres modos e8istentes# e8isten tres -ormas0 $+& N PE A ! &odo $eal. $+& N PE A ! &odo Prote)ido. $+& N PE A 1 N J& A 1 &odo Jirtual E=.
El modo +&& es similar al &odo $eal en que no ha' ni2eles de pri2ile)io ni mapas de direcciones. Cn pro)rama en modo +&& puede tener hasta F@b'tes de memoria ' puede e/ecutar todas las instrucciones del sistema as( como todas las instrucciones de EO+. Captulo 19 - 12