Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

105
Vistas
cómo se ejecuta una aplicación desde el punto de vista de la arquitectura informática

Estimados miembros de la comunidad: Estoy tomando un curso de arquitectura de computadoras en Coursera.org. El curso presenta la idea de que una aplicación se traduce en la ejecución de instrucciones en el microprocesador. Ampliando esta idea, quiero saber cómo se ejecuta una aplicación como un procesador de textos o tan simple como emacs.

Me refiero a lo que sucede cuando inicias la aplicación, comienzas a escribir, borras una palabra o una línea, guardas y sales de la aplicación.

¿Es posible ver qué instrucciones se ejecutan cuando se inicia el programa, en el modo de escritura, etc. ¿Cómo ver la ejecución de cada instrucción, sus operandos, la memoria y el acceso a la memoria caché?

Si la pregunta parece incompleta, agregue las piezas que faltan para que sea más interesante.

Gracias

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

No sé si el curso específico de Coursera es suficiente para lo que quieres. Pero un archivo ejecutable, para simplificar, es un conjunto de instrucciones para su procesador físico en su PC, por ejemplo. Se define el código de máquina (ensamblado) para cada función en el programa, y puede verlo junto con la memoria a la que accede en varios depuradores mientras se ejecuta. Es muy interesante y debo sugerirle que, si ya está familiarizado con al menos un lenguaje de programación, continúe con "Compiladores" antes de intentar estudiar ensamblador de inmediato. Coursera tiene una lección relativa https://www.coursera.org/course/compilers que parece interesante.

over 4 years ago · Santiago Trujillo Denunciar

0

Pensamos en operaciones como "mover el cursor una letra", "desplazarse a la siguiente línea" o "ingresar la letra 'a'". La computadora es MUCHO más simple. Funciona en matemáticas puras y pide cargar y almacenar datos en registros o memoria. Así que "mover el cursor" es realmente una larga, larga cadena de:

  • obtener ubicación de memoria/registración X
  • agregue algo de valor, actualice la ubicación original
  • repetir....
  • ahora que todos los argumentos están listos, invoque la llamada del sistema para actualizar la pantalla

Una cosa simple es ver lo que se necesita para convertir el código de lenguaje C en ASM y luego en lenguaje de máquina. Recuerde, incluso el ensamblaje es un nivel más alto que los 0 y 1 que realmente impulsan la máquina.

Traduzca lo siguiente a cualquier ASM que estén usando para la clase:

 int result = 1; int i; for (i = 100; i > 0; i++) { result *= i; } printf("%d\n", result);

Sí, este es un código tonto. Pero mire la cantidad de código necesario solo para recrear eso en ASM. Ahora, rastree las definiciones de código de máquina para ese ASM y traduzca el ASM al binario. Esto se vuelve monótono muy rápido. Pero, una vez que comprenda cómo funciona, comprenderá cómo funciona VMWare y cómo funciona cada dispositivo informático.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda