468x60

🛠️ ESTRATIFICACIÓN del SOFTWARE

Software

Jerarquía del software

👋   También se pueden establecer niveles funcionales respecto del software. Por un lado, la jerarquía mas alta corresponde a los programas de uso particular de los usuarios, denominados aplicaciones (que se programan en lenguajes de alto nivel); en el extremo opuesto están las señales que genera la unidad de control para el gobierno de los distintos dispositivos físicos, por ejemplo, una orden de lectura a memoria. Podemos ver la relación entre las distintas jerarquías de software y el hardware en el esquema siguiente:



Un usuario que sólo utiliza un software para enviar correo electrónico o e-mails se comunica con la computadora con la interfaz gráfica del sistema operativo y no requiere muchos conocimientos en ciencias de la computación Un programador que desarrolla software de aplicación requiere conocimientos formales en arquitectura de computadoras, en sistemas operativos y, por supuesto, en diseño de algoritmos, lenguajes de programación y estructuras de datos. El programador desarrolla software que, por ejemplo, le sirva a una empresa para administrar su stock, su facturación, etcétera. 💣

Programas y lenguajes de programación informáticos

👆  Un programador que desarrolla software de sistema debe tener conocimientos profundos en arquitectura de computadoras, en lenguajes de programación que le permitan comandar el hardware y en sistemas operativos que le sirvan, por ejemplo, para programar un software de "supervisión" para un dispositivo físico.

✌  Todos los programas se compilan o reciben algún proceso de traducción a código de máquina, que es el lenguaje que interpreta la CPU y pertenece al nivel de arquitectura del set de instrucciones. Por efecto de esta "interpretación", la CPU genera señales sincronizadas en el tiempo que controlan el hardware implicado en la operación, por ejemplo, "orden de suma a una unidad de calculo" Por último, el que realiza la operación es el hardware.

Set de instrucciones de la CPU

La arquitectura del set de instrucciones (ISA o lnstruction Set Architecture) determina el formato de las instrucciones, los tipos de datos que puede operar, las distintas formas de obtener datos de memoria, que se denominan "modo de direccionamiento", y la forma en que se atienden eventos externos.  👽

👉   Cada instrucción implica "algo que hacer", un "verbo", que en lenguaje técnico se denomina código de operación (grupo de bits que interpreta un diseño especifico de CPU). La forma en que se implementan los códigos de operación se denomina nivel de microarquitectura. La microarquitectura determina la forma en que se ejecuta la instrucción. Dos CPU pueden compartir el mismo set de instrucciones pero estar diseñadas con distintas microarquitecturas, como es el caso de las CPU AMD, que ejecutan software de la industria 80X86 de Intel, lo que les permite "ejecutar las mismas instrucciones" y mantener así la compatibilidad del software.

Escrito por Archie Tecnology

No hay comentarios:

Publicar un comentario

Colaboración comercial