Você está na página 1de 12

FUNCIONES ESPECIALES, ENTORNOS DE TRABAJO Y COMPATIBILIDAD

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

Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad

19.1 CAPACIDAD DE AUTOCOMPROBACIN.


El Pentium es capaz de auto chequearse hasta el !" del silicio que posee# comprendiendo toda la memoria $%& de control ' la ma'or(a de la l)ica no aleatoria. Este auto chequeo se produce mediante la operacin B*+T , Built-*n +el--Test. del Pentium. Para que esta operacin pueda e/ecutarse se debe conectar0 La alimentacin. La se1al de entrada $eset debe subir a ni2el alto. La patita Bus' 3 debe de conectarse a Tierra. El auto chequeo es un pro)rama de autocomprobacin cu'o tiempo de e/ecucin 2ar(a se)4n el tipo de procesador. Tras e/ecutarse dicho pro)rama de/a en E56 un cdi)o binario que se trata del resultado del auto chequeo. +i todos los bits son ! entonces la operacin ha sido e/ecutada con 78ito# si por el contrario se encuentra un 2alor distinto de cero en el re)istro si)ni-ica que se ha dado un -allo en el procesador ' ha' que acudir a las caracter(sticas t7cnicas del -abricante para saber que anomal(a se ha producido. En E96 queda depositada una in-ormacin sobre las caracter(sticas t7cnicas del Pentium que se ha chequeado# as( como su n4mero de 2ersin.

3 1 #E$E#%&'(

1 5

1 4 T)*(

1 2

1 1 F&+),)&

"

+('E,( *&$(

:i)ura 19.1-:ormato del re)istro E96

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.

19.! "OPORTE A A DEPURACIN


Captulo 19 - 2

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

Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad

'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.

19.# E RE"ET A INICIA I$ACIN


&anteniendo acti2a la patilla $+ET durante un cierto tiempo que 2iene determinado ' que no es el mismo para cada Pentium# el procesador del sistema comienza un hardBare de inicializacin del procesador , conocido como $E+ET del hardBare . ' una autocomprobacin opcional llamada B*+T. Cuando se acti2a la patita $eset se de/a a los re)istros en un estado conocido ' coloca al procesador en modo $eal. Borra ' limpia la cach7 interna# la TLB ' tambi7n la BTB, otra cach7 especial en la que se )uarda el resultado de los 4ltimos 2<= saltos condicionales# ' que se utiliza para pre2er el resultado de un salto condicional. En un 9 " de los casos acierta# si ha' -allo ha' que retirar las instrucciones que hemos metido en el cauce ' limpiar los re)istros.. La acti2acin de la patilla *>*T3 en el procesador tiene un e-ecto similar al $E+ET del hardBare. La di-erencia est; en que durante un *>*T3 los estados de las cach7s internas ' e :PC permanecen inalterados. La

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

Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad

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.

-'ibujo de la +emoria *rincipal.


La primera instruccin que se e/ecuta despu7s de un $eset se hallar; sumando la base m;s el E*P de modo que queda la direccin -(sica 0 :::: :::! en he8adecimal. Base0 E*P 0 9ireccin -(sica0 :::: !!!! :::! :::: :::!

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.

19.% MODO REA


Este modo de operacin implementa el entorno de pro)ramacin del procesador *ntel E!E= # imprimi7ndole mas 2elocidad a la hora de e/ecutar pro)ramas. En &odo $eal se empieza a traba/ar siempre que ha' un $eset cuando se conecta por 1D 2ez la alimentacin. Caracter(sticas del entorno de e/ecucin del &odo $eal0 1-La &emoria Principal slo es de 1&b'te. Este espacio est; di2idido en se)mentos # cada uno de los cuales puede tener una lon)itud de =F Gb'tes . Captulo 19 - 6

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

Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad

=-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.

- 'ibujo de la )'T en +odo #eal.

19.& MODO PROTE'IDO


Es el modo natural que tiene de traba/ar el Pentium# los re)istros tienen 'a una e8tensin de ?2 bits# se traba/a con multitarea# se puede poner en marcha la pa)inacin ' -unciona el modo de proteccin. Estando en &odo $eal para pasar a &odo Prote)ido se pone el -la) PE del C$! a 1# que habilita el mecanismo de proteccin de se)mentos# pasando autom;ticamente a &odo Prote)ido. 5l pasar a &odo Prote)ido ha' unas cu;ntas cosas que ha' que tener en cuenta0 *:A1 , *nterrupciones mascarables prohibidas.. La *9T en &odo Prote)ido es completamente distinta de la *9T en &odo $eal. La *9T del &odo Prote)ido no contiene 2ector de interrupciones # contiene descriptor de *nterrupciones. La *9T en &odo Prote)ido es completamente distinta en tama1o ' contenido de la *9T en &odo $eal. La *9T cuando entramos en &odo Prote)ido tiene que estar 'a car)ada# de manera que /usto antes de entrar en &odo Prote)ido tenemos que crear la *9T en memoria Principal. La *9T debe estar situada en el primer Hilob'te de la memoria -(sica. Estando a4n en &odo $eal# ha' que construir una ima)en b;sica de la @9T e inicializar el re)istro @9T$.

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

Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad

<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..

19.( MODO )IRTUA *(


+e trata de un modo que es mezcla del &odo $eal ' del &odo Prote)ido. En el &odo Prote)ido# el procesador puede traba/ar en un ambiente conocido como &odo JirtualME= o modo de tarea especial. Este modo permite al procesador e/ecutar so-tBare del E!E= en un entorno prote)ido ' multitarea. Cuando el sistema operati2o cambia a una tarea en &odo JirtualME=# el procesador simula un procesador E!E= donde el entorno de e/ecucin es i)ual al &odo $eal con la di-erencia de que este modo puede utilizar ser2icios del &odo Prote)ido. Cn aspecto a tener en cuenta es que el &odo JirtualME= puede e/ecutar al)unas tareas que son del &odo $eal ' como sabemos este modo traba/a con direcciones de 1= bits# mientras que el &odo JirtualME= traba/a con direcciones de ?2 bits. Por esto el &odo JirtualME= tendr; que con2ertir las direcciones de 1= bits a ?2 bits. Para entrar en este modo# el procesador tiene que estar dentro de cualquiera de estas situaciones0 Cuando el -la) J& del re)istro EM:L5@+ es puesto a 1 en la T++ de la tarea. Cuando se retorna de una interrupcin o e8cepcin en modo prote)ido# cuando el -la) J& es puesto a 1 en el re)istro E:L5@+

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

Captulo 19: Funciones Especiales, Entornos de Trabajo y Compatibilidad

5l comprobar instrucciones pri2ile)iadas# en accesos a p;)inas# o cuando se realiza cualquier otra comprobacin de permiso.

19.+ MODO MANE,O DE "I"TEMA -""M.


En este modo# el procesador proporciona un sistema operati2o que es transparente para el pro)ramador ' que implementa dos -unciones mu' importantes0 &e/ora de la se)uridad de todo el sistema. Cn sistema de control de la alimentacin. &ediante este sistema controla el consumo de ener)(a ' realiza un consumo lo m;s ptimo posible.

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

Você também pode gostar