Idioma: Español
Fecha: Subida: 2020-04-29T00:00:00+02:00
Duración: 37m 24s
Lugar: Videotutoriales
Visitas: 1.355 visitas

Tema06-V04

Apartado 6.3.3

Transcripción (generada automáticamente)

Todos en este cuarto vídeo tutorial vamos a ver el apartado titulado técnicas de comunicación cp o entrada salida del apartado programación de la entrada salida. Todo esto incluido en el tema 6, gestión de la entrada, salida como hemos visto anteriormente. Lo que decíamos era que la va a ser la encargada de indicarle al dispositivo de entrada salida, que es lo que va a hacer, inscribir primero en lo que era en el puerto de entrada, salida que se encargaba del control, lo que decíamos de control y escribir un código indicado, que es lo que tiene que hacer. Va a ser también el encargado de leer el código del dispositivo, indicando su estado. Recordamos que esto estaba en el Registro de Estado y también va a ser el encargado de escribir o leer el dato según la operación que se quiere hacer con el dispositivo, y lo va a hacer en el puerto de entrada, salida que llamábamos registro de estado. Bien, pues en este apartado lo que vamos a ver es cómo conoce el sistema perdón como conocen la FP o que las que lo que ha tenido está preparado. O bien que el dispositivo tiene un dato para el que, por ejemplo, en el teclado pulsar la tecla sin que nadie nos lo pida, y lo mismo pasa con él con el ratón? Bien, pues el primer método es el que se conoce como sondeo en inglés, llamado. Lo que pasa es que es la técnica más sencilla, y lo que pasa es que la cp se encarga de estar continuo lentes preguntando lo que se llama sondeando al al al puerto de entrada de entrada salida correspondiente al dispositivo, lo que sería el puerto de Estado y registro de Estado. Si tiene o no un dato preparado para ser leído, este método también se llama encuesta o escote escrutinio, perdón por esa idea, porque se la que está continuamente preguntando al dispositivo si tiene la información que se le ha solicitado o bien que va a generar de forma automática, tener en cuenta que en el sondeo se puede hacer de dos formas de forma continua, es decir, continuamente sin sin parar la cp o le está preguntando al dispositivo si tiene el dato o bien de forma periódica, y esto significaría que, por ejemplo cada le hace el escrutinio. Le hace la pregunta. Solo Cada, por ejemplo, 200 segundos tener en cuenta que me estoy inventando el tiempo, pero sería sería un ejemplo el dispositivo. Recordamos que tenía un registro de Estado, que era lo que llamábamos un puerto de entrada, salida mediante el cual para informar de la situación; y entonces la cp, o lo que va a hacer Sleep, se registró de Estado para saber si hay nuevos datos o no y, por tanto obrar en consecuencia, y en ese proceso que está continuamente preguntando va a ser. Por tanto, por ejemplo, si lo que estamos escuchando es el teclado, pues ese mismo ese mismo función que está continuamente preguntando al registro de Estado, sí tiene si hemos puesto una tecla, pues esa misma función va a ser también la encargada, cuando el registro de estado del teclado diga que sí que hemos pulsado, una tecla que os va a ser esa misma función, la que se encarga de leer la tecla de registro de datos del de la del dispositivo de entrada, salida de la controladora del dispositivo, el gran problema que tiene este método de sondeos, que se va a preguntar, muchísimas gracias al dispositivo, y de esas muchas veces que lo hace, la mayoría no ha cambiado el Estado. No tenemos un dato preparado porque normalmente no va a ser mucho, mucho más rápida que lo que es la entrada salida. Por tanto, si se produce una gran pérdida de tiempo pensar esto es lo que sería un portátil que lo que va a conllevar es que se va a acabar la quería mucho más rápido de lo que debemos. Por ejemplo, si queremos verificar si hemos pulsado la tecla del ratón o si el usuario ha movido el ratón, pues el siete uvas tener que estar continuamente preguntando al a lo que sería la controladora del ratón, preguntando por el registro de Estado, y cuando la cp use enteré que sí se ha pulsado, que sí se ha movido el ratón o que se pulsa uno de los botones, le va a tener que informar al sistema operativo para que el sistema operativo, en este caso, el sistema operativo, le va a informar al programa que tiene asociado el ratón. En ese momento del, por ejemplo, del cambio de posición del ratón y para que actúe en consecuencia normalmente los bucles de esperar activa, o lo que sería el sondeo activo, lo que se une a una Encuesta Continua donde no deja de estar preguntando al dispositivo si tenemos un dato preparado, solo son transmisibles y lo que serían sistemas en lo que serían dispositivos dedicados y además, si nos damos cuenta en estos sistemas empotrados, que normalmente lo que hacen es una tarea muy específica, lo que queremos es que actúen de forma rápida. Por tanto, es idea, no es ideal, pero si es conveniente hacer esta espera, continuar y no periódica, lo que serían los computadores más normal en los ordenadores normales donde el sistema operativo está entiende. Este tiempo compartido donde tenemos muchos procesos en ejecución lo más habitual es que se realice una encuesta periódica; por ejemplo, para el ratón -veamos ahora el rendimiento del este, de esta técnica de purín o sondeo, y para ello vamos a resolver un pequeño ejercicio que además, como veremos después en el vídeo tutorial de ejercicios, se parece mucho a los ejercicios que vamos a resolver bien. Supongamos que tenemos una FP que va 500 megahercios y que una operación de sondeo con su, de unos 400 títulos de reloj, es decir, llamar a la rutina de sondeo para acceder al dispositivo, comprobar el estado del dispositivo y volver, y si a ir a leerlo, los bajos 1.400 títulos de el ejercicio nos pide que determine el porcentaje de tiempo que la FP o subasta realizando los sondeos para tres dispositivos distintos, además de peculiaridades totalmente distintas. El primero es un ratón, que se debe escrutar unas 30 veces por segundo. Para no perder los movimientos que realiza el usuario. Marín un discreto que transfiere datos en unidades pequeñas dos maletas y que tiene un ancho de banda de lo que serían 50 kilovatios, por segundo, por supuesto, no se pueden perder datos. Por tanto, tenemos que hacer perdón, tenemos que mantener este ancho de banda, y el último sería un disco duro donde la transferencia de datos es mayores, 16 países y el ancho de banda es ocho megabits por segundo, y de nuevo nos pasa lo mismo, no porque no podemos perder ningún tacto y, por tanto, la el ancho de banda se tiene que mantener. Veamos ahora el rendimiento. Para los casos que hemos visto anteriormente para el ratón. Los ciclos consumidos serían los siguientes, puesto que hemos dicho que se tienen que escrutar 30 veces. Para no perdernos los movimientos del usuario en total 30 por 400 serían 12.000 los ciclos consumidos por segundo. El porcentaje de uso de la cpp sería los 12.000 ciclos que tienen que consumir por segundo dividido entre los 500 megahercios, que serían 500.000.000 para obtener el uso de FP y por 100 para obtener el porcentaje. Por tanto, en la cp u se utilizaría solo un con 24 por 100 para sentía para sondear al ratón; por tanto, el impacto es despreciable respecto al disquetes, hemos dicho que su ancho de bandera, de 50 kilos, por segundo y que no podíamos perder datos, por tanto, tenemos que mantenerlo en este caso la transferencia de dos países, por tanto 50 kilovatios; por segundo, dividió entre dos países medida que tengo que hacer 25.600 encuestas por segundo para no para mantener ese ancho de banda; para no perder datos, cada encuesta cada sondeo eran 400 ciclos costaba 400 ciclos, pues serían 25.600 por 400, igualan 10.240.000. ciclos. Por segundo consumidos en Chequia, al disquetes esto sí lo pasamos al porcentaje dividiendo por él los 500 megahercios, a los que funciona la cp o sería 10.240.000, entre 500.000.000 por 100, sería un dos con 48 por 100, es decir, dos con 48 por 100, es decir, en el tiempo de la FP utilizado en consultar y leer datos, si están disponibles, sería solo un dos con 48 por 100. Ahora es tacto, es más apreciable, pero aun así es para mí es permisible si no hay muchos dispositivos trabajando; por último para el disco; los datos se dispara para no perder ese ancho de banda de ocho gigabytes por segundo transfiriendo solo 16 países por por transferencia. Tenemos que hacer un total de 524.288 encuestas. Esto supone multiplicado por los 400 ciclos que realiza con que cuesta cada encuesta perdón, 2.000.000 de perdón, 209.000 millones que dividido entre los 500.000.000 de megahercios me da multiplicado por 100 para pasarlo al porcentaje. Me da que en total, para poder leer todos los datos del disco duro, sin perder ninguno, se tendría que hacer un consumo de casi el 42 por 100. En este caso, el impacto es inaceptable y, por tanto, el disco duro no se podrá hacer mediante sondeo. Para estos casos tenemos las interrupciones a través de lo que serían los mecanismo de intervenciones. Lo que lo que está pasando es que la acepte un teatro basta bastar perdón consultando continuamente al dispositivo, sino que acepte u ordena el dispositivo, que es lo que tiene que hacer y eleva al trabajo al mismo para que posteriormente, cuando los datos estén preparados, el dispositivo de entrada salida le informe así los pasos serían los siguientes. La cp u ordena la transacción, encarnando al dispositivo la operación que tienen que realizar. Recordemos que esto lo haría mediante el registro de control, la peor continua con otra tarea, ejecutando otro proceso en lugar de estar chequear continuamente sondeando continuamente la finalización de la transferencia. Una vez que el dispositivo de entrada Sanidad ha terminado con la operación que ha solicitado la FP o este dispositivo tiene que avisar a la cpi y lo hace mediante lo que se llama una interrupción. Cuando la FP o recibe esa interrupción actúa según le corresponda, por ejemplo, tiene. Es posible que tenga que transferir los datos a leer los datos del dispositivo o escribir los datos nuevos en el dispositivo, etc. En el caso del sondeo que hemos visto anteriormente, el tratamiento de los datos, hemos dicho que lo hacía la propiedad y las propias instrucciones, que estaban en el bucle de espera activa, continuamente preguntando en el dispositivo. Si los datos estaban preparados, sin embargo, las interrupciones son, llegan de forma sincro, es decir, en un momento concreto, sin que la o lo sepa, el dispositivo de entrada salida va a terminar la operación y le va a usar la cpi que tiene que leer los datos o hacer en consecuencia lo que se le diga. Por tanto, la interrupción llega en cualquier momento y la FP o estará haciendo cualquier otra cosa, lo que se haya puesto a hacer ejecutando otro proceso, etc. Por tanto recalcó las óperas, las interrupciones son así respecto a la ejecución del programa. Por tanto, está sin esta idea de que las las instrucciones, las interrupciones perdón, lleguen en cualquier momento y son así implica que tenemos que habilitar una serie de mecanismos para que para poder controlar, por ejemplo, las tienes que dejar automáticamente lo que estaba haciendo y tiene que pasar a lo que se llama la rutina de tratamiento de la interrupción o bien directamente rb6 rutina de servicio de interrupción, también llamada de manejado. La rutina del manejado, esta rutina va a ser la encargada de saber qué tiene que hacer con los datos, si los tiene que leer o si tiene que volver a escribir etc. Para poder saltar a esa rutina, para alejar siempre dejarlo, que está haciendo y poder saltar a ejecutar esa rutina la tiene que ser capaz, de salvar la información mínima para después recuperar el estado del proceso que estaba en ejecución, y, al final, la rutina de al finalizar la rutina de tratamiento de interrupción de la rutina del servicio interrupción en la FP tiene que ser capaz de volver al estado en el que dejó en el que se es decir, se tienen que reanudar el proceso que se interrupción. Se intervención, pero, además, se tienen que volver, se tienen que recaudar sin pérdida de datos y con total normalidad, como si no hubiera pasado nada, ahora veremos cómo se hace esto. La ventaja principal de las interrupciones frente al sondeo es que ya no perdemos tanto ciclos útiles sin comprobar el estado del dispositivo, y, simplemente, cuando el dispositivo esté preparado, cuando lo tengan los datos, será el dispositivo el que nos informe para que se ejecute la rutina social al dispositivo la reseña social al dispositivo. Primero es que tenemos que ver, es cómo el aceite o se entera de cuál es el dispositivo que ha marcado su interrupción, pues cada dispositivo tiene asociado lo que se llama un número de interrupción, y, de esta manera, será capaz de distinguir entre ellos habría 2, hay dos formas de hacerla comúnmente. Una sería un pin asociado, lo que sería un pin asociado a cada de interrupción de la FP o por cada dispositivo, lo que se hacen, obvia como único pin de interrupción, que sería usado por todos los dispositivos, y después habría que informar a la cp de alguna manera como perdón, que dispositivo a ha levantado. Esa interrupción ha causado esta interrupción para después saber reconocer el dispositivo, y eso podría ser poner un código de interrupción, el código, el número de cada dispositivo, con lo que sería el número de interrupción en el bus de datos. El anterior método era el que se está utilizando el día 32, es el que, si hacen esto, también se podría llevar un un modelo mixto en el que, en vez de tener una única entrada de interrupción tuviéramos varias entradas, no tantas como dispositivos, pero, por ejemplo, si por tipos de dispositivos y que cada tipo de dispositivo compartiera ese pin de interrupción y que luego fueran capaces de informarle mediante el bus de datos o mediante lo que sea, poniendo el código del número de interrupción de cada dispositivo, informar a la cpi de cuáles de los dispositivos ha sido el que ha generado la intervención para los mecanismos que hemos indicado anteriormente el salto a la rutina de servicio interrupción, el salvar el estado de las para que el proceso que estaba en ejecución no pierda datos y pueda reanudar su proceso porque se pueda reanudar ese proceso. Posteriormente, hay que resolver ciertas ciertos problemas que estas cuestiones. El primero sería el salto a la rutina de servicio interrupción. Dónde está ese proceso? Cómo se salta? El? Lo sabemos que directamente sería una llamada a una función, pero la idea sería dónde está ese proceso. De nuevo tenemos, como en el caso anterior, dos posibles opciones sería. La primera opción, que sería la que está haciendo el mic sería sacar siempre a la misma dirección de memoria, a una dirección fija. Por tanto, sólo tenemos, se podría decir que solo tenemos a una dirección de cuando se produce la interrupción. La cp salta siempre esa misma dirección y lo primero que tiene que hacer esa rutina es comprobar qué dispositivo fue el que provocó la rutina y, a continuación, bifurca, es decir, volver a saltar al tratamiento adecuado, a la rutina de tratamiento de interrupción adecuada para el dispositivo que generó la interrupción. Otro opción sería el que hace día 32 es saltar una dirección variable. De hecho, dependiendo del número de interrupción vamos a tener lo que sea lo que se llama interrupciones, dependiendo del número introducción vamos a tener asociado lo que sería a cada uno de ellos una rutina de servicio, intervención mediante una de direcciones, indexadas por dicho número de interacción. De hecho, en algunas versiones también están siguiendo esta idea y entonces, cuando se provoca la interrupción en número de interrupciones, el que me va a indicar mediante el acceso a ese arraigo, cuál es la dirección de la rutina de servicio, interrupción a la que se tiene que saltar para hacer el tratamiento de interrupción luego hemos dicho varias veces y tenemos que darnos cuenta que es muy importante que hay que salvar el estado de la ue, es decir, las y las interrupciones son así como hemos dicho antes, lleguen en cualquier momento y lo primero que va a pasar es que el proceso de ejecución se va para. Por tanto, tenemos que conseguir guardar su estado. De forma que cuando termine el tratamiento intervención se pueda recuperar el estado del proceso que sigue ejecutándose. Como si no hubiera pasado nada y sin pérdida de datos, lo primero que hay que guardar y, por tanto el mínimo valor que hay que abordar es el programa que en este caso en el mix para eso para ello existe un registro especial que se llama La excepción, programa que nos permite guardar el plan actual. Antes de realizar el salto para aquellas máquinas que además tengan lo que se llama el registro de Estado para las condiciones sería un flash en el día 32, habría que salvarlo también, y ahora además es muy importante que se salven. Se guarden todos repito todos los registros modificados por la retina el servicio de interrupción para que parecido a lo que hacíamos en la programación de ensamblado para que después se pueda recuperar su estado. Igual que la programación ensamblados guardan los registros presentados entre llamadas en la pila, antes de hacer una, cuando entramos en una función pues la idea sería la misma sala, voz que en este caso no solo se guardan los registros reservados sino que se guardan todos, y esto es así porque la rutina del servicio interrupción puede modificar cualquier registro. En realidad tenemos si recordamos teníamos dos registros especiales que eran presentados para el núcleo, para el carné que son el cajero y el camino, pues se guardan todos menos esos dos registros porque no nos vamos a modificar como registro, como usuarios es muy importante que el programador lo modifique y solo el sistema operativo los va a modificar, por tanto, es necesario guardarlos en cuando hacemos el salto a la rse y por último, ser capaces de recuperar el estado y reanudar el proceso que estaba interrumpido. Para ello, si nos damos cuenta que lo que hemos hecho ha sido guardar el cam y guardar todos los registros, por lo que tendríamos que hacer y deshacer ese proceso, recuperar el valor de los registros que la que la máquina servicio interrupción guardó antes de modificar y, a continuación recuperar el router que lo teníamos guardado en el Registro Especial de PC, y esto una vez que te ponemos la dirección lo que haremos es que se reanuda el proceso con total normalidad. Aquí tendríamos un ejemplo de lo que sería el resumen completo, que tenemos unas instrucciones en ensamblados y que lo que estamos indicando es que cuando se está ejecutando la instrucción shock, nos llega la interrupción de entrada salida. Esto sería usuario, y esta sería la de si la rutina de servicio interrupción bien, pues nos llega a la interrupción, cuando se está ejecutando la instrucción sur lo primero que hacemos es salvar el franco, te indicamos solo como sería salvar el búnker y, como hemos dicho todos los registros, a continuación. La dirección de comienzo de la aeb, seis sería la que pasaría a ejecutarse, se ejecutaría todo este código que tenemos aquí y por último y por tanto volveríamos de instrucción Sur que empezaría a ejecutarse de nuevo en la etc. De abuso ahora mis ahora de nuevo, el ejercicio anterior, pero suponiendo el consumo por las interrupciones en este caso lo vamos a ver solo para lo que sería el disco duro, no lo vemos ni para el discute ni para lo que sería el ratón. Entonces primeros recordamos. Ahora lo que tenemos es que era un acepte, que consumía 500 que tenía 500 megahercios por segundo, y teníamos un disco duro, cuya transferencia era de 16 Valls y que, además, el ancho de banda era de 8. Bien, pues, en este caso, la rutina de servicio interrupción por cada transferencias suponemos que consume 500 ciclos, y luego, además, si pensamos un poco, lo normal es que el disco duro no lo estemos usando siempre, sino que se lo usamos sólo durante un porcentaje de tiempo. Bien, pues durante el disco duro, solo se usa durante el cinco por 100 del tiempo, bien, veamos ahora los cálculos, igual que antes, ocho de Cavalls desde 8.000 caballos, por segundo, que sería la el ancho de banda, dividido entre 16 países por transferencia, para no perder ningún dato, supone que tenemos que hacer 524.288 interrupciones por segundo. Ahora bien, los ciclos por segundo, serían 500 veintidos con 7.288 por 500, que me daría 262.144.000, ciclos. Por segundo esto hace que el total del porcentaje de iu, si el disco se estuviera usando, siempre es el 52 con cuatro por 100. Acordado acordamos que dividimos entre 500 megahercios entre 500.000.000 multiplicamos por 100, sin embargo, como nos han indicado, el disco duro solo se usa el cinco por 100 del tiempo y, por tanto, del porcentaje total de la cp sería ese número que hemos obtenido, el 52 con cuatro por 100 multiplicado por 5, esto supondría el dos con 62 por 100, como vemos ahora, si es posible utilizar las interrupciones para la transferencia de datos leídos por un disco entradas. En el ejemplo anterior sí que, experta que hacíamos un poquito de, se podría a que estábamos haciendo un poquito de trampa porque no estábamos considerando que el disco solo se utilizaba un cinco por 100. Esto para el disco duro, si es posible, a considerarlo, porque es evidente que para el disco duro somos es el sistema operativo es el que le dice si tiene que leer o si tiene que escribir datos. Por tanto, ahí podríamos considerar ese cinco por 100. Pero sin pensar en una tarjeta de una tarjeta de los datos se pueden recibir en cualquier momento. Por tanto, habría que estar sondeando continuamente ya no me valdría decir es que los datos me llegan solo un cinco por 100 del tiempo, no la tarjeta o sorteamos o se pierden los datos. Por tanto, habría que estar soñando siempre y tendríamos un porcentaje de uso parecido al anterior. Una interrupción de entrada, salida podemos decir que es como una excepción. Necesita su propia rutina en el tratamiento, necesita su capacidad de recuperación, como lo hemos dicho, pero sin embargo esa sincronía programa. Recordemos que es el dispositivo el que activa la interrupción cuando termina de hacer los datos, y no tiene nada que ver con el programa que está en ejecución. Por tanto, no se sabe en qué momento se va a producir la interrupción y no se haya, y no hay ningún tipo de instrucción, no se haya asociado a ningún tipo de instrucción concreta. Por tanto, necesitamos saber qué dispositivo provocó la interacción, la terminología. La literatura es bastante variable y normalmente nosotros lo vamos a hacer es vamos a utilizar tres términos lo que sería excepción interrupción y si visto anteriormente una excepción es una instrucción que provoca una situación anormal; o un error, o, o no permitida durante su ejecución; por ejemplo, una violación de acceso flow, un acceso, una zona de memoria no permitida, y eso sería una excepción. El problema es que muchas veces el término de excepción en un abuso del lenguaje se utiliza para todo, pero tenéis que tener en cuenta que la excepción es una instrucción que provoca una situación normal, una situación que sería un error porque no está permitida una interrupción, o, como acabamos de ver, es un dispositivo externo que me que ha terminado de hacer la operación que se les solicitó o bien que ha recibido datos, como es el caso de la tarjeta de red, y entonces le cpi o que necesita atención y que necesita el tratamiento de los datos correspondientes, y, por último, en el que ya hemos utilizado en prácticas varias veces bastantes veces es una instrucción especial en la que el programador le pide al sistema operativo que haga que haga una operación de entrada salida y que el programador puede usar para afrontar. Por tanto, una llamada al servicio, lo que es una llamada sistema operativo, por ejemplo, leer de teclado. Escribir en pantalla, que serían los ejemplos en prácticas. Pasemos a ver ahora el último método, que es interrupciones y Denia, como hemos visto, son las interrupciones, son adecuados para dispositivos que tienen poco ancho de banda, dependiendo del dispositivo, una vez será por sondeo y cuando el ancho de banda sea un poquito mayor, pues tendremos que recurrir a interrupciones las interrupciones, lo que hace, si se reduce el coste de la controladora y de la interfaz, y ya que sea la cpi, el sistema operativo, que así los que realicen todo el trabajo. Tener en cuenta que una vez, por ejemplo, en el caso del disco duro, con el que hemos visto antes en la interrupción, una vez que el disco duro ha leído los datos y los tiene preparados en su registro de datos, la transferencia de los 16 países que hemos visto anteriormente desde el dispositivo a la memoria la tiene que hacer las ett, o es una secuencia de instrucciones. Normalmente, la rutina de servicio interrupción es la que se va a encargar de Lier de ese registro de datos, los 16 Valls y traerlos a lo que sería la memoria principal para poder ser utilizados. El problema es que con dispositivos con gran ancho de banda, esta transferencia ocuparía un gran tiempo de FP y, por tanto, no serían válidos los sondeos y las interrupciones imaginaros, que el disco duro, en leer en bloques de sólo 16 ballet, estuviera leyendo en bloques de un cabo en bloques de 4. Entonces, ahí lo que nos estaría pasando es que la FP se quedaría bloqueada mucho tiempo trayendo los datos, desde el registro de datos, de la controladora del disco duro, hasta lo que sería la memoria, para evitar ese problema. Lo que se hace es una técnica que se llama The Day de memoria o acceso directo a la memoria, que es como nosotros lo conocemos en español, y es un mecanismo que va a conseguir que la transferencia de datos desde el dispositivo a la memoria, o al revés, se realice sin intervención del procesador en ningún momento la idea es que lo que vamos a hacer es decir la dispositivo, donde quiere copiar los datos y que sea la propia controladora del dispositivo, la que envíe los datos de su registro de datos a la zona de memoria que se le ha dicho y que cuando ya los datos estén copiados en esa zona de memoria, y solo en ese momento, se le avise a las que, por tanto, la cp o se le relega, se le quita esa tarea de tener que estar leyendo datos del registro de datos y pasarlos a copiar los a la memoria, o, al revés, para poder implementar el meam, se utiliza un chip especializado, que es lo que se llama una controla de media y esa controladora, pero en realidad, la que hace la transferencia de datos no es el propio dispositivo, sino que el dispositivo avisa que los datos están preparados, la controladora del dispositivo avisa que los datos están preparados y está de la que hace la transferencia de datos, de entrada, salida del dispositivo de entrada, salida, perdona, hacia lo que sería la memoria independientemente del procesador. Esto tendrá una serie de implicaciones pues habrá múltiples voces hablan habrá mucho en el bus necesitamos múltiples ambos la cp habrá un sistema de arbitraje, pero nada que no se pueda solucionar. Los pasos que se realizan para poder hacer una transferencia del día serían los siguientes: en la sepi o el procesador inicial Isa lo que es la compra, indicando la identidad del dispositivo, el, la operación a realizar, si lectura o escritura, la zona de memoria, lo que sería la dirección de memoria donde tiene que leer o escribir, los datos, el número del tamaño de la transferencia, el número, de a transferir y el sentido del desplace del desplazamiento, la controla, de dónde solicitar, solicitándole bush, y cuando lo consigue, va realizando tantas operaciones de transferencia entre el dispositivo y la memoria, como sean necesarias. Una vez que ha terminado, transferir todos los datos, la controla de género, una interrupción para informar al procesador que finaliza la finalización de la transferencia o de la condición de error, en caso de que sea un error, tenemos que darnos cuenta que ahora es la controladora, la que hace todo el proceso. Antes he dicho, yo quiera el dispositivo, pero no es verdad, es la controladora de mía la que hace el proceso, el dispositivo avisa, la controladora de enviar a la controladora de Mia, hacer la transferencia, por ejemplo, si es una lectura de datos de disco, lee los datos de la controladora del disco duro y los copia en la zona de memoria que le han asignado en la dirección de memoria que le han asignado, y cuando los datos estén leídos genera, la interrupción para avisarle de que los datos se generan, interrupción para avisarle de que los datos han sido leídos. Aquí tenemos un resumido el estadio positiva. Tenemos resumido en el ejemplo que hemos dicho el proceso que hemos dicho anteriormente, la un programa, la controladora, indicándole que sería el indicador de la del dispositivo le está indicando. La dirección está indicando. El rumbo y está indicando el Contador Contador los datos que tenía que indicar estos el dispositivo, la transferencia de memoria, el dispositivo es el sería el paso 2, está dirigido por la controladora, se expande por la controladora; se van leyendo dando datos del Registro de Estado, de la controladora del disco duro, y se van copiando memoria o al revés, y es una escritura de memoria; se copiaron a la controladora del disco, y en el momento que acaba se avisa a la cpi o mediante una interrupción. Por eso se dice que el proceso es de interrupciones y de media, porque cuando se termina todo el proceso para la transferencia, ya sea tanto de lectura como escritura, cuando todo todos los datos han sido transferidos, se le quiere que usarla y se le hace mediante una interrupción. Veamos ahora el ejemplo anterior, el ejercicio anterior, pero suponiendo que estamos trabajando con Denia, supongamos de nuevo la misma cepa, según recordamos, que era que trabajaba 500 megahercios por segundo con 500 megahercios, y además, que el disco duro tenía una tasa de transferencia de ocho megabits por segundo y recordamos que no podíamos perder datos. Bien, en este caso, el proceso inicio de la controladora de media, es decir, la programación de los puertos, indicando que, operación se tiene que hacer con qué dispositivo, el tamaño, etc, tarda 100 ciclos, mientras que la rutina tratamiento de interrupción en la rutina del servicio interrupción, una vez finalizada la transferencia, tarda 500 ciclos, darnos cuenta que ahora todo el proceso sería más costoso, porque sería un total de 1.500 títulos. Además, las transferencias de debe ser mucho más grandes que las anteriores, y, en este caso, no se supone que la transferencia de ser por cuatro kilovatios aquí destacar que, por ejemplo, las lecturas a disco duro, normalmente tienen ese tamaño, tanto las lecturas como las escrituras sería normalmente de cuatro cabarets, en un caso normal, por tanto, si el disco estuviese continuamente, transmitiendo datos tendría que hacer ocho de Cavalls. Por segundo dividió entre cuatro kilos, por segundo, que serían un total de 2048, transferencias de Demme, por segundo, como cada transferencias suponen un total de 1.500 ciclos, que, lo que hemos dicho antes, 1.500 ciclos, por 202.048, perdón, me da, que en total se consumiría 3.072.000 ciclos. Por segundo, eso hace que las transferencias del empleo, dividido entre los 500.000.000 de ciclos por segundo que tienen con su marido, multiplicado por 100 de nuevo con sumar un cero con 62 por 100 del tiempo, recordamos que los ejercicios anteriores estaban los tiempos en los porcentajes estaban alrededor del 50 el 40 por 100, pero como decíamos, la aparta en el ejercicio anterior con el tema de interrupciones. El disco duro solo transmite datos durante un cinco por 100 del tiempo, por tanto, es tercero, 62, había que multiplicarlo por este cinco por 100. Eso quiere decir que mediante interrupciones y de neo, el disco duro solo consume el con 31 por 100, con 31 por 100, perdón, con 31 por 100 de la cpi. Por tanto, es prácticamente despreciable, que en el caso anterior eran el sondeo, era un 40 tantos por 142 por 100, parece que era según un 42 por 100, usando solo interrupciones, era un dos por 100, un dos con 62 que ahora ha descendido a 0. Con 31, algo que es totalmente dispersión y despreciable tener en cuenta que el estamos suponiendo que interfiere con la FP o, lo cual puede ser muy realista. Pero, bueno, en estos casos, si hay el nivel que nosotros estamos trabajando se puede considerar así y normalmente, los accesos a la FP, uno de la FP o a la memoria, con el premio, pueden colisionar y esto equivaldría que el proceso sería más lento porque tendríamos que arbitrar el pulso, etc. Pero, bueno, a nivel en el que trabajamos aquí nos quedamos con eso. Aquí tenemos un resumen de los cuatro métodos que se han utilizado en este caso es el de sondeo. Este caso es el de interrupción de este caso, es el de, recordamos que el sondeo lo que estamos es continuamente preguntando al dispositivo. Si tiene datos, entonces leemos. Tenemos que leer el módulo de lo que sería el registro de entrada, salida del del dispositivo, comprobar su estado. Si no está preparado, es decir, si no tiene datos, volveríamos a estar y estaríamos aquí continuamente en esta rutina. Se dice error. Pues tendríamos que tratara. Tratar el error correspondiente, y, si dice preparado, tendremos que, por ejemplo, leer la palabra del módulo de entrada, salida de los datos. Transferir los datos hasta la cp, escribo bien, escribir los datos en la continuación es que los datos de memoria y finalizase, o bien, si es que sí terminaríamos, no volverá a continuar con la rutina en el caso de la interrupción recordamos que lo que hacemos es enviar la orden a la entrada salida. La cp-uso pueden hacer otra cosa. El dispositivo de entrada, salida, genera una interrupción. Las siete tiene que leer el modelo de tratamiento de esta interrupción. Comprobar el estado; si es cierto; si es válido continuar, sino una comisión de error, recordamos que antes de esto tiene que guardar cuando se provoca la interrupción. Aquí cuando se lee el estado del se tiene que guardar los datos necesarios; se ha recordado que era El clon; con todos los registros para poder volver al volver al proceso que estaba en ejecución. Se lee la palabra sellaba. Se lleva del dispositivo a la FP o a la memoria, y, si no ha terminado volvemos a programa indicar la orden correspondiente. Para volver a esperarle, interrupción, etc. En el caso es mucho más sencillo, se le envía la orden a la controladora enemiga, la línea es pasar la encargada de la tarea. La cp-uso por otra tarea, cuando le venga, es porque los datos han sido recibidos y ya están en memoria, y lo que tendrá que hacer es, simplemente tratar de comprobar el modelo de Estado. Entendía para saber si ha sido un error o no, y, si no, ha sido un error, pues simplemente tratar el dato de forma adecuada. Con esto terminamos en la zaga con seis puntos. Tres puntos, tres del tema 6. Bien, como siempre os recuerdo y recomiendo que este apartado, este vídeo tutorial se corresponde con el apartado seis puntos, tres puntos, tres de los apuntes.

Propietarios

Maria Pilar Gonzalez Ferez

Comentarios

Nuevo comentario

Serie: Tema 6 - ETC (+información)

Gestión de la entrada/salida