Conceptos Básicos de Software

El software consiste en los programas de instrucciones y datos que definen para el hardware los algoritmos necesarios para la resolución de problemas. A continuación mencionaremos algunos conceptos de software útiles para entender el funcionamiento de los sistemas operativos.


Programas de Software

Programa: conjunto de argumentos o instrucciones para la computadora, almacenado en la memoria primaria de la computadora junto con los datos requeridos para ser ejecutado, en otras palabras hacer que las instrucciones sean realizadas por la computadora.

Tipos de Software

  • Software del sistema: Es un conjunto de programas que administran los recursos de la computadora. Ejemplos: Unidad central de proceso, dispositivos de comunicaciones y dispositivos periféricos, el software del sistema administra y controla al acceso del hardware.
  • Software de aplicaciones: Programas que son escritos para o por los usuarios para realizar una tarea específica en la computadora. Ejemplo: software para procesar un texto, para generar una hoja de cálculo, el software de aplicación debe estar sobre el software del sistema para poder operar.
  • Software de usuario final: Es el software que permiten el desarrollo de algunas aplicaciones directamente por los usuarios finales, el software del usuario final con frecuencia tiene que trabajar a través del software de aplicación y finalmente a través del software del sistema

 

Lenguaje máquina & Lenguaje Ensamblador

Lenguaje máquina. Es un SW de bajo nivel, utiliza código binario, dependiente de la máquina,  con instrucciones bastante primitivas.  Es el lenguaje que el sistema de cómputo puede comprender directamente.

-Lenguaje ensamblador. Se desarrollaron para aumentar la velocidad del proceso de programación y reducir los errores de codificación. Se consideran la versión simbólica del lenguaje máquina. No son directamente entedibles por la computadora, para ellos requieren ser previamente traducidos  (Ensamblador).

 

Compilador

Programa que traduce los lenguajes de alto nivel a lenguaje máquina.

 

Sistema de Control de Entrada/Salida (IOCS)

Es el conjunto de programas a través del cual el sistema operativo controla las actividades de entrada/salida que se generan en el sistema.  Comúnmente conocido como BIOS.

 

Spool / Spooling

Operaciones periféricas simultáneas en línea. (Simultaneous Peripherical Operation on Line)

Actividad que realiza el sistema operativo para hacer cambios de velocidad entre los diferentes dispositivos.   Es el empleo de un almacenamiento auxiliar como buffer  para reducir el retardo del procesamiento cuando se transfieren datos entre los equipos periféricos y los procesadores de un computador.

El SPOOL es una técnica que permite que las entradas y las salidas de un proceso tengan un paso intermedio en dispositivos de gran capacidad de almacenamiento.  El ejemplo típico es el spool de impresora: un proceso puede obtener una gran cantidad de información en poco tiempo, y en cambio estos resultados pueden necesitar mucho tiempo para ser impresos.  Otro caso muy corriente es el de trabajar con un procesador de textos y hacer una impresión de un documento relativamente largo.  Si no se utiliza el spool, tanto el computador como el usuario no podrán hacer nada hasta que se termine de imprimir.

El Spooling utiliza el disco como un buffer muy grande para leer tan por delante como sea posible de los dispositivos de entrada y para almacenar los ficheros hasta que los dispositivos de salida sean capaces de aceptarlos.

De esta manera, puede mantener tanto a la CPU como a los dispositivos de E/S trabajando con un rendimiento mucho mayor.

Cargadores

Un cargador es un programa que se encarga de colocar las instrucciones y datos (fichero ejecutable) dentro de localidades del almacenamiento primario, asignando el espacio necesario en memoria y pasando el control a la primera de las instrucciones a ejecutar, comenzando a continuación la fase de ejecución.

 

Cargador absoluto.  Reserva un espacio determinado de memoria específico para un determinado programa.

Cargador de relocalización.  Puede cargar un programa en diversos lugares de la memoria, dependiendo de la disponibilidad de memoria al momento de realizar la carga.

 

Arriba