Está en la página 1de 4

El software

Concepto
Se conoce como software1 al equipamiento lgico o soporte lgico de un sistema
informtico, que comprende el conjunto de los componentes lgicos
necesarios que hacen posible la realizacin de tareas especficas, en
contraposicin a los componentes fsicos que son llamados hardware.

Tipos de software
Software de sistema: En terminologa informtica el software de sistema, denominado tambin software de
base, consiste en un software que sirve para controlar e interactuar con el sistema operativo, proporcionando
control sobre el hardware y dando soporte a otros
programas; en contraposicin del llamado software
de aplicacin. Su objetivo es desvincular
adecuadamente al usuario y al programador de los
detalles del sistema informtico en particular que se
use, aislndolo especialmente del procesamiento
referido a las caractersticas internas de: memoria,
discos, puertos y dispositivos de comunicaciones,
impresoras, pantallas, teclados, etc. El software de
sistema le procura al usuario y programador
adecuadas interfaces de alto nivel, controladores,
herramientas y utilidades de apoyo que permiten el
mantenimiento del sistema global. Incluye entre otros:
Sistemas operativos
Controladores de dispositivos
Herramientas de diagnstico
Herramientas de Correccin y Optimizacin
Servidores
Utilidades
Software de aplicacin: Es aquel que permite a los usuarios llevar a cabo una o varias tareas especficas, en
cualquier campo de actividad susceptible de ser automatizado o asistido, con especial nfasis en los negocios.
Incluye entre muchos otros:
Aplicaciones para Control de sistemas y automatizacin industrial
Aplicaciones ofimticas
Software educativo
Software empresarial
Bases de datos
Telecomunicaciones (por ejemplo Internet y toda su estructura lgica)
Videojuegos
Software mdico Software de clculo numrico y simblico.
Software de diseo asistido (CAD)
Software de control numrico (CAM)

Software de paquete: es una serie de programas que se distribuyen


conjuntamente. Algunas de las razones suelen ser que el
funcionamiento de cada uno complementa a o requiere de otros,
adems de que sus objetivos estn relacionados como estrategia de
mercadotecnia.
Muchos sistemas operativos modernos emplean sistemas de
gestin de paquetes que permiten que el administrador del sistema
instale o desinstale paquetes, sin que en ningn momento queden
programas instalados que no funcionen por falta de otros incluidos
en su paquete. El sistema de gestin de paquetes usualmente
tambin se ocupa de mantener las dependencias entre paquetes: si un paquete se recuesta en otro, el sistema se
encarga de instalar ste primero.
Tambin encontramos paquetes de software en la distribucin comercial de TV, ya que se suelen ofertar paquetes
de software; o bien por ofrecer un precio menor del que costara cada programa por separado o bien porque slo
exista la oferta conjunta.
Software de programacin: Es el conjunto de
herramientas que permiten al programador
desarrollar programas informticos, usando
diferentes alternativas y lenguajes de programacin
, de una manera prctica. Incluyen bsicamente:
Compiladores
Intrpretes
Ensambladores
Lenguajes de alto nivel: Un lenguaje de programacin de alto nivel se caracteriza por expresar los algoritmos de
una manera adecuada a la capacidad cognitiva humana, en lugar de la capacidad ejecutora de las mquinas.
En los primeros lenguajes de nivel bajo la limitacin era que se orientaban a un rea especfica y sus instrucciones
requeran de una sintaxis predefinida. Se clasifican como lenguajes procedimentales.
Otra limitacin de los lenguajes de nivel
bajo es que se requiere de ciertos
conocimientos de programacin para
realizar las secuencias de instrucciones
lgicas. Los lenguajes de alto nivel se
crearon para que el usuario comn pudiese
solucionar un problema de procesamiento
de datos de una manera ms fcil y rpida.
Por esta razn, a finales de los aos 1950
surgi un nuevo tipo de lenguajes de
programacin
que
evitaba
estos
inconvenientes, a costa de ceder un poco
en las ventajas. Estos lenguajes se llaman de
tercera generacin o de nivel alto, en
contraposicin a los de bajo nivel o de
nivel prximo a la mquina.

Lenguajes de Bajo Nivel: Los lenguajes de bajo nivel son ms fciles de utilizar que los lenguajes mquina, pero,
al igual que ellos, dependen de la mquina en particular. El lenguaje de bajo nivel por excelencia es el ensamblador.
Las instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotcnicos. Por ejemplo,
nemotcnicos tpicos de operaciones aritmticas son: en ingls, ADD, SUB, DIV, etc.; en espaol,
SUM,RES,DIV,etc. Una instruccin tpica de suma sera: ADD M, N, P
Ensambladores: El trmino ensamblador (del ingls assembler) se refiere a un tipo de programa informtico que se
encarga de traducir un fichero fuente escrito en un lenguaje ensamblador, a un fichero objeto que contiene cdigo
mquina, ejecutable directamente por el microprocesador.
Compilador: es un programa informtico que traduce
un programa escrito en un lenguaje de programacin a
otro lenguaje de programacin, generando un
programa equivalente que la mquina ser capaz de
interpretar. Usualmente el segundo lenguaje es lenguaje
de mquina, pero tambin puede ser un cdigo
intermedio (bytecode), o simplemente texto. Este
proceso de traduccin se conoce como compilacin.
Un compilador es un programa que permite traducir el
cdigo fuente de un programa en lenguaje de alto nivel,
a otro lenguaje de nivel inferior (tpicamente lenguaje
de mquina). De esta manera un programador puede
disear un programa en un lenguaje mucho ms
cercano a cmo piensa un ser humano, para luego compilarlo a un programa ms manejable por una computadora.
Interprete: En ciencias de la computacin, intrprete o interpretador es un programa informtico capaz de
analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intrpretes se diferencian de los
compiladores en que mientras estos traducen un
programa desde su descripcin en un lenguaje de
programacin al cdigo de mquina del sistema, los
intrpretes slo realizan la traduccin a medida que sea
necesaria, tpicamente, instruccin por instruccin, y
normalmente no guardan el resultado de dicha
traduccin.
Usando un intrprete, un solo archivo fuente puede
producir resultados iguales incluso e n sistemas
sumamente diferentes (ejemplo. una PC y un PlayStation
3). Usando un compilador, un solo archivo fuente puede
producir resultados iguales solo si es compilado a
distintos ejecutables especficos a cada sistema.
Los programas interpretados suelen ser ms lentos que los compilados debido a la necesidad de traducir el programa
mientras se ejecuta, pero a cambio son ms flexibles como entornos de programacin y depuracin (lo que se
traduce, por ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o aadir mdulos
completamente nuevos), y permiten ofrecer al programa interpretado un entorno no dependiente de la mquina
donde se ejecuta el intrprete, sino del propio intrprete (lo que se conoce comnmente como mquina virtual).
Para mejorar el desempeo, algunas implementaciones de programacin de lenguajes de programacin pueden
interpretar o compilar el cdigo fuente original en una ms compacta forma intermedia y despus traducir eso al

cdigo de mquina (ej. Perl, Python, MATLAB, y Ruby). Algunos aceptan los archivos fuente guardados en esta
representacin intermedia (ej. Python, UCSD Pascal y Java).
Lenguaje de mquina o cdigo mquina: Es el sistema de cdigos directamente interpretable por un circuito
microprogramable, como el microprocesador de una computadora o el microcontrolador de un autmata. Este
lenguaje est compuesto por un conjunto de instrucciones que determinan acciones al ser tomadas por la mquina.
Un programa consiste en una cadena de estas instrucciones ms un conjunto de datos sobre el cual se trabaja. Estas
instrucciones son normalmente ejecutadas en secuencia, con eventuales cambios de flujo causados por el propio
programa o eventos externos. El lenguaje de mquina es especfico de la arquitectura de la mquina, aunque el
conjunto de instrucciones disponibles pueda ser similar entre arquitecturas distintas.
Programacin orientada a objetos: La programacin orientada a objetos o
POO (OOP seg n sus siglas en ingls) es un paradigma de programacin que usa
los objetos en sus interacciones, para disear aplicaciones y programas
informticos. Est basado en varias tcnicas, incluyendo herencia, cohesin,
abstraccin, polimorfismo, acoplamiento y encapsulamiento. Su uso se populariz
a principios de la dcada de los aos 1990. En la actualidad, existe una gran
variedad de lenguajes de programacin que soportan la orientacin a objetos.
Software de Comunicacin: Para
lograr
que
dos
o
ms
computadoras se comuniquen
entre s, es necesario que exista
tanto un medio fsico como uno
lgico que permita a ambas
entablar comunicacin. El software
de comunicacin se refiere al
conjunto de programas que
cumple la funcin lgica descrita
anteriormente.

Universidad Agroforestal Fernando Arturo de Merio


Introduccin a la Informtica
Facilitadora: Juana Alt. Paulino

También podría gustarte