7- Handshake

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ย. 2024
  • Material de la materia "Arquitectura de computadoras" de la Facultad de Informática, UNLP.
    Link para ver las presentaciones que se utilizan durante las clases: drive.google.c...

ความคิดเห็น • 24

  • @Tobias4927
    @Tobias4927 ปีที่แล้ว +11

    16:43. "tan simple como eso", esa frase va a marcar a futuras generaciones de estudiantes de informatica que vean tus videos. Simplemente brutal

    • @GenaroCamele
      @GenaroCamele  ปีที่แล้ว

      Va a traumar*

    • @Tobias4927
      @Tobias4927 ปีที่แล้ว

      @@GenaroCamele más allá de la joda, Muchas gracias por haber compartido los videos en youtube para poder entender mejor los conceptos, un abrazo Gena!!!

    • @GenaroCamele
      @GenaroCamele  ปีที่แล้ว +1

      @@Tobias4927 Gracias Tobi! Me alegro que hayan servido, éxitos en la carrera! Abrazo grande

  • @Valen2364
    @Valen2364 14 วันที่ผ่านมา

    q manera de carrearme oc y arq genaa

  • @agustinnievadalmau4003
    @agustinnievadalmau4003 ปีที่แล้ว +2

    Che Gena, una consultita, como hago para que el HandShake deje de imprimir caracteres? Tal y como te paso en el minuto 32:25

    • @GenaroCamele
      @GenaroCamele  ปีที่แล้ว

      Hola Agus! El Handshake solo sirve para mandar caracteres e imprimirlos. Que el programa termine depende de vos! Si estás recorriendo un string el programa debería calcular la cantidad de caracteres y recorrerlos a todos, finalizando cuando ya no hay más caracteres que mandar a imprimir. En el caso del video el programa termina cuando BX llegó a la misma dirección que FIN. BX avanza en la subrutina de interrupción, por lo que en algún momento llegará al final del string y terminará el programa (fijate que cuando sale del loop que chequea si llegó a FIN en el programa principal, se desactivan las interrupciones para que el Handshake no vuelva a interrumpir y mandar caracteres a imprimir)

    • @agustinnievadalmau4003
      @agustinnievadalmau4003 ปีที่แล้ว

      @@GenaroCamele Es que incluso asi, haciendo Cmp bx, Fin y usando un JNZ el programa sigue y no se porque, tenes algun otro lugar por el cual hablarte asi te muestro bien? Tipo Discord o algo asi

    • @GenaroCamele
      @GenaroCamele  ปีที่แล้ว +1

      @@agustinnievadalmau4003 Discord: Gena#2812. Quizás desaparezco los findes. Pasame el código por ahí

    • @ray2251
      @ray2251 ปีที่แล้ว

      a mi me pasa que apenas la configuro para que sea una interrupcion, se llama a la interrupcion pero nunca entra del poll no se ni como, es como que una vez que la puse para interrupcion se queda x siempre dentro de la subrutina y no sale aunque tenga el eoi y iret y haciendo el push y pop de ax en el momento correcto

  • @Axel-2783ariga
    @Axel-2783ariga 7 วันที่ผ่านมา

    que desventaja presenta el uso de la tecnica de polling respecto al uso del Handshake por interrucion?

    • @GenaroCamele
      @GenaroCamele  7 วันที่ผ่านมา

      @@Axel-2783ariga hola! La técnica de polling consiste en realizar consultas constantemente de algo. En este caso, del estado de la impresora. El problema es que la impresora es lenta, y mientras está ocupada nosotros en el programa principal estamos haciendo polling constantemente para ver si se liberó, lo cual es una perdida de tiempo y ciclos de ejecución que podríamos utilizar en hacer otra cosa más útil. El handshake nos ahorra estar perdiendo tiempo al pedo, cuando la impresora se libere el handshake va a interrumpir el programa principal, lo cual hace que podamos ejecutar cosas valiosas y solo atender la impresora recién cuando está libre (estamos usando los recursos de manera óptima!)

    • @Axel-2783ariga
      @Axel-2783ariga 7 วันที่ผ่านมา

      @@GenaroCamele muchas gracas gena sos un crack!!

  • @bru_llanos4477
    @bru_llanos4477 6 วันที่ผ่านมา

    Holaa Gena.El error del minuto 32, no se podria solucionar si haces la comparacion de bx adentro de la subrutina y en caso de que de 0 desactivar el handshake por interrupcion ahi y sino saltea a avisarle al EOI???

    • @GenaroCamele
      @GenaroCamele  6 วันที่ผ่านมา

      Hola! Si, definitivamente serviría hacer un chequeo, pero igual quizás terminás quedando en un loop porque el problema era que se ejecutaba la interrupción antes de volver al programa principal, por lo que te quedarías de por vida iterando en la subrutina de interrupción... Probablemente se deba a un bug en el simulador, que ya fue actualizado y que quizás ya ni lo tiene. Otra solución podría ser desactivar las interrupciones en la subrutina y volverlas a activar en el programa principal, y cuando se llega al final de la cadena no mandar ningún caracter más y no volver a activarlas después, pero es una solución medio rancia.
      Igual, con demostrar que sabés configurar las interrupciones por handshake como corresponde e imprimir lo caracteres alcanza y sobre 🍻

    • @bru_llanos4477
      @bru_llanos4477 6 วันที่ผ่านมา

      @@GenaroCamele Muchas gracias!!!

  • @beeping4905
    @beeping4905 ปีที่แล้ว +2

    Gena, no tenes video sobre timer?

    • @GenaroCamele
      @GenaroCamele  ปีที่แล้ว

      Hola! En este video hacemos un ejercicio con timer y otros dispositivos: th-cam.com/video/e8Sd5BswGEI/w-d-xo.htmlfeature=shared

  • @uzieljuarezpineiro9867
    @uzieljuarezpineiro9867 ปีที่แล้ว

    Buen video

  • @angellee1898
    @angellee1898 ปีที่แล้ว

    Hola Gena! Una consulta, cuándo te solicita la interrupción de la impresora? Cuando el busy está en 0?

    • @GenaroCamele
      @GenaroCamele  ปีที่แล้ว +1

      Hola, exacto, la impresora setea el busy en 0 cuando está libre, y el que está chequeando por ese estado es el Handshake (en vez del CPU que ahora puede ejecutar tu programa tranquilo sin precouparse por eso) que es el que dispara la interrupción

  • @mauriciogonzales3397
    @mauriciogonzales3397 2 ปีที่แล้ว

    Gena consulta. Que ventaja tendría usar handshake en modo polling para comunicarse con la impresora respecto del pio? Estoy buscando y no encuentro nada. Sería solamente eficiencia en el código?

    • @GenaroCamele
      @GenaroCamele  2 ปีที่แล้ว +2

      La ventaja de utilizar el Handshake con respecto al PIO (aunque ambas sean en modo polling) es que no tenemos que encargarnos nosotros de enviar el Strobe a la impresora! Simplemente enviamos el caracter al campo DATO del Handshake y este se encarga de enviar dicho caracter a la impresora, resultando en un código mucho más corto

    • @mauriciogonzales3397
      @mauriciogonzales3397 2 ปีที่แล้ว

      @@GenaroCamele gracias 🙌🏼