Vous êtes sur la page 1sur 15

DEFINICIN:

El software son las instrucciones electrnicas que van a indicar al ordenador que
es lo que tiene que hacer. Tambin se puede decir que son los programas usados
para dirigir las funciones de un sistema de computacin o un hardware.
Como concepto general, el software puede dividirse en varias categoras basadas
en el tipo de trabajo realizado.
HISTORIA:

LENGUAJE DE PROGRAMACIN
Un Lenguaje de Programacin es un conjunto de reglas, notaciones, smbolos y/o
caracteres que permiten a un programador poder expresar el procesamiento de
datos y sus estructuras en la computadora. Cada lenguaje posee sus propias
sintaxis. Tambin se puede decir que un programa es un conjunto de rdenes o
instrucciones que resuelven un problema especfico basado en un Lenguaje de
Programacin.

CARACTERISTICAS

Legibilidad: consiste en si el lenguaje tiene una sintaxis sencilla, fciles de leer y


fciles de compilar
Ortogonalidad: permite combinar en una sola instruccin diversas caractersticas
del lenguaje, de esta manera se consiguen programas ms cortos y ms
compactos.
Naturalidad
para
la
aplicacin :
consiste
en
el
lenguaje
proporcione herramientas adecuadas para el fin para el que est pensado.
Soporte a la abstraccin: Solucionar tipos de problemas y no problemas concretos.
Debe permitir que el programador pueda crear funciones y procedimientos.
Entorno de programacin: Los lenguajes han de ir acompaados de un entorno
donde programar.
Portabilidad de los programas: Es un lenguaje que permite crear programas que
funcionen en cualquier maquina pertenezca a la plataforma que quiera, distinto
fabricante, etc.

EVOLUCION:
Para que la computadora entienda nuestras instrucciones debe usarse un lenguaje
especfico conocido como cdigo mquina que slo consiste en cadenas extensas
de nmeros 0 y 1.
Para facilitar el trabajo, los primeros operadores de computadoras decidieron
hacer un traductor para reemplazar los 0 y 1 por palabras o abstraccin de
palabras y letras provenientes del ingls; ste se conoce como lenguaje
ensamblador. Por ejemplo, para sumar se usa la letra A de la palabra
inglesa add (sumar). El lenguaje ensamblador sigue la misma estructura del
lenguaje mquina, pero las letras y palabras son ms fciles de recordar y
entender que los nmeros.
La necesidad de recordar secuencias de programacin para las acciones usuales
llev
a
denominarlas
con
nombres
fciles
de
memorizar
y
asociar: ADD (sumar), SUB (restar), MUL (multiplicar), CALL (ejecutar subrutina),
etc. A esta secuencia de posiciones se le denomin "instrucciones", y a este
conjunto de instrucciones se le llam lenguaje ensamblador. Posteriormente
aparecieron diferentes lenguajes de programacin, los cuales reciben su
denominacin porque tienen una estructura sintctica semejante a la de los
lenguajes escritos por los humanos, denominados tambin lenguajes de alto nivel.

El primer programador de computadora que se haya conocido fue una mujer: Ada
Lovelace. A finales de 1953, John Backus someti una propuesta a sus superiores
en IBM para desarrollar una alternativa ms prctica al lenguaje ensamblador para
programar
la computadora
central IBM
704.
El
histrico
equipo Fortran de Backus consisti
en
los
programadores Richard
Goldberg, Sheldon F. Best, Harlan Herrick, Peter Sheridan, Roy Nutt, Robert
Nelson, Irving Ziller, Lois Haibt y David Sayre.2
El primer manual para el lenguaje Fortran apareci en octubre de 1956, con el
primer compilador Fortran entregado en abril de 1957. Esto era un compilador
optimizado, porque los clientes eran reacios a usar un lenguaje de alto nivel a
menos que su compilador pudiera generar cdigo cuyo desempeo fuera
comparable al de un cdigo hecho a mano en lenguaje ensamblador. En 1960, se
cre COBOL, uno de los lenguajes usados an en la actualidad, en informtica de
gestin.
A medida que la complejidad de las tareas que realizaban las computadoras
aumentaba, se hizo necesario disponer de un mtodo ms eficiente para
programarlas. Entonces, se crearon los lenguajes de alto nivel, como lo
fue BASIC en las versiones introducidas en los microordenadores de la dcada
de 1980. Mientras que una tarea tan sencilla como sumar dos nmeros puede
necesitar varias instrucciones en lenguaje ensamblador, en un lenguaje de alto
nivel bastar una sola sentencia.
EL SISTEMA OPERATIVO
Es el programa (o software) ms importante de un ordenador. Para que funcionen
los otros programas, cada ordenador de uso general debe tener un sistema
operativo. Los sistemas operativos realizan tareas bsicas, tales como
reconocimiento de la conexin del teclado, enviar la informacin a la pantalla, no
perder de vista archivos y directorios en el disco, y controlar los dispositivos
perifricos tales como impresoras, escner, etc. En sistemas grandes, el sistema
operativo tiene incluso mayor responsabilidad y poder, se asegura de que los
programas y usuarios que estn funcionando al mismo tiempo no interfieran entre
ellos. El sistema operativo tambin es responsable de que los usuarios no
autorizados no tengan acceso al sistema.
Primera generacin (1945-1955)
Tubos de vaco y tableros enchufables
Despus de los infructuosos esfuerzos de Babbage, se progres poco en la
construccin de computadoras digitales hasta la Segunda Guerra Mundial.
Alrededor de la mitad de la dcada de los cuarenta, Howard Aiken en Hardvard,
Jon Von Neumann en el Instituto de Estudios Avanzados en Princeton, J. Presper
Eckert y William Mauchley en la Universidad de Pennsylvania y Konrad Zuse en
Alemania, entre otros, lograron construir mquinas de clculo mediante bulbos.

Ests mquinas eras enormes y llenaban cuartos completos con decenas de miles
de bulbos, eran mucho ms lentas que la computadora casera ms econmica en
la actualidad.
En esos primeros das, un grupo singular de personas diseaba, construa,
programaba, operaba y daba mantenimiento a cada mquina. Toda la
programacin se realizaba en lenguaje de maquina absoluto y con frecuencia se
utilizaban conexiones para controlar las funciones bsicas de la mquina. Los
lenguajes de programacin se desconocan (incluso el lenguaje ensamblador). Los
primeros sistemas operativos eran extraos (no se oa de los sistemas operativos).
El modo usual de operacin consista en que el programador firmaba para tener
acceso a un bloque de tiempo en la hoja de registro situada en la pared, despus
bajaba al cuarto de mquinas, insertaba su conexin (tablero enchufable) en la
computadora y pasaba unas horas esperando que ninguno de los 20,000 tubos o
ms bulbos se quemara durante la ejecucin. La inmensa mayora de los
problemas eran clculos numricos directos, como por ejemplo el clculo de
valores para tablas de senos y cosenos.
A inicios de la dcada de los cincuenta, la rutina haba mejorado un poco con la
introduccin de la tarjetas perforadas. Ahora era posible escribir los programas en
tarjetas y leerlos, en vez de utilizar tableros enchufables; por lo dems el
procedimiento era el mismo.
Segunda generacin (1955-1965)
Transistores y sistemas por lote
La introduccin del transistor a mediados de la dcada de 1950 alter el panorama
radicalmente.
Las
computadoras se hicieron lo bastante confiables como para poderse fabricar
y vender a clientes comerciales con la expectativa de que seguiran funcionando
el tiempo suficiente para realizar algo de trabajo til. Por primera vez, haba una
separacin clara entre diseadores, constructores, operadores, programadores y
personal de mantenimiento.
Estas mquinas se encerraban en cuartos de computadora con acondicionamiento
de aire especial, con equipos de operadores profesionales para operarias. Slo las
grandes empresas, o las principales dependencias del gobierno o universidades,
podan solventar el costo de muchos millones de dlares. Para ejecutar un trabajo
(es decir, un programa o serie de programas), un programador escriba primero el
programa en papel (en FORTRAN o ensamblador) y luego lo perforaba en tarjetas.
Despus, llevaba el grupo de tarjetas al cuarto de entrada y lo entregaba a uno de
los operadores.
Cuando la computadora terminaba el trabajo que estaba ejecutando en ese
momento,
un
operador
acuda a

la impresora, separaba la salida impresa y la llevaba al cuarto de salida don


de el
programador
poda
recogerla
despus.
Luego,
el operador
tomaba uno de los grupos de tarjetas trados del cuarto de entrada y lo
introduca en el lector. Si se requera el compilador de FORTRAN, el
operador tena que traerlo de un archivero e introducirlo en el lector. Gran p
arte del tiempo de computadora se desperdiciaba mientras los operadores iban
de un lugar a otro, en el cuarto de la mquina.
Dado el alto costo del equipo, no es sorprendente que la gente pronto buscara
formas de reducir el desperdicio de tiempo. La solucin que se adopt
generalmente fue el sistema por lotes. El principio de este modo de operacin
consista en juntar una serie de trabajos en el cuarto de entrada, leerlos y grabarlos
en una cinta magntica usando una computadora pequea y (relativamente)
econmica, como una IBM 1401, que era muy buena para leer tarjetas, copiar
cintas e imprimir salidas, pero no para realizar clculos numricos. Otras mquinas,
mucho ms costosas, como la IBM 7094, se usaban para la computacin
propiamente dicha.
Secuencia:
(a) Los programadores traen tarjetas a la 1401
(b) La 1401 lee lotes de trabajos y los graba en cinta
(c) El operador lleva la cinta de entrada a la 7094
(d) La 7094 realiza la computacin
(e) El operador lleva la cinta de salida a la 1401
(f)

La 1401 imprime la salida

En resumen las computadoras grandes de la segunda generacin se usaban


primordialmente para clculos cientficos y de ingeniera, como la resolucin de
ecuaciones diferenciales parciales. Estas mquinas generalmente se programaban
en FORTRAN y lenguaje ensamblador. Los sistemas operativos tpicos eran FMS
(el Fortran Monitor System) e IBSYS, el sistema operativo de IBM para la 7094.
Tercera generacin (1965-1980)
Circuitos integrados y multiprogramacin
A principios de la dcada de 1960, la mayora de los fabricantes de computadoras
tenan dos lneas de producto distintas y totalmente incompatibles. Por un lado
estaban las computadoras cientficas a gran escala, orientadas hacia las palabras,
como la 7094, que se usaban para clculos numricos en ciencias e ingeniera.
Por el otro, estaban las computadoras comerciales orientadas hacia los

caracteres, como la 1401, que los bancos y las compaas de seguros utilizaban
amplia- mente para ordenar e imprimir desde cinta.
La creacin y mantenimiento de dos lneas de producto totalmente distintas era
una situacin costosa para los fabricantes. Adems, muchos clientes de
computadoras nuevas necesitaban inicialmente una mquina pequea que ms
adelante les resultaba insuficiente, de modo que queran una mquina ms grande
que ejecutara todos sus viejos programas, pero ms rpidamente.
IBM trat de resolver simultneamente ambos problemas introduciendo la
System/360. La 360 era una serie de mquinas de software compatible que iban
desde tamaos comparables a la 1401 hasta computadoras mucho ms potentes
que la 7094. Las mquinas diferan slo en el precio y el rendimiento (memoria
mxima, velocidad del procesador, nmero de dispositivos de E/S permitidos,
etc.). Puesto que todas las mquinas tenan la misma arquitectura y conjunto de
instrucciones, los programas escritos para una mquina podan ejecutarse en
todas las dems, al menos en teora. Adems, la 360 estaba diseada para
manejar computacin tanto cientfica como comercial. As, una sola familia de
mquinas poda satisfacer las necesidades de todos los clientes. En aos
subsecuentes IBM produjo sucesoras comparables a la lnea 360, usando
tecnologa ms moderna, conocidas como series 370, 4300, 3080 y 3090.
A pesar de su enorme tamao y de sus problemas, OS/360 y los sistemas
operativos de tercera generacin parecidos a l producidos por otros fabricantes
de computadoras lograron satisfacer a sus clientes en un grado razonable, y
tambin popularizaron varias tcnicas clave que no existan en
los sistemas operativos de la segunda generacin. Tal vez la ms importante de
ellas
haya
sido
la multiprogramacin. En
la
7094, cuando el trabajo actual haca una pausa para esperar que
se completara una operacin
de
cinta u otra operacin de E/S, la CPU simplemente permaneca ociosa hasta
que
la
E/S
terminaba.
En
los
clculos
cientficos,
con gran uso de CPU, la E/S es
poco
frecuente,
as
que
el
tiempo desperdiciado no es significativo. En el procesamiento de datos
comerciales, el tiempo de espera por E/S puede ser el 80090% del tiempo total, de
modo que algo deba hacerse para evitar que la CPU estuviera ociosa tanto
tiempo.
La solucin a la que se lleg fue dividir la memoria en varias secciones, con un
trabajo distinto en cada particin, como se muestra en la Figura 3. Mientras un
trabajo estaba esperando que terminara su E/S, otro poda estar usando el CPU.
Si se podan tener en la memoria principal suficientes trabajos a la vez, el CPU
poda mantenerse ocupada casi todo el tiempo. Tener mltiples trabajos en la
memoria a la vez requiere hardware especial para proteger cada trabajo contra
espionaje por parte de los dems, pero la 360 y otros sistemas de tercera
generacin estaban equipados con este hardware.

Otro avance importante durante la tercera generacin fue el crecimiento


fenomenal de las minicomputadoras, comenzando con la DEC PDP- 1 en 1961. La
PDP- 1 slo tena 4K de palabras de 18 bits, pero a $120 000 por mquina (menos
del 5% del precio de una 7094), se vendieron como pan caliente. Para ciertos
tipos de trabajos no numricos, la PDP-1 era casi tan rpida como la 7094, e hizo
nacer una industria totalmente nueva. A esta mquina pronto sigui una serie de
Otras PDP (todas incompatibles, a diferencia de la familia IBM), culminando en la
PDP- 11.
Cuarta generacin (a partir de 1980)
Computadoras personales
Con la invencin de los circuitos integrados a gran escala (LSI), chips que
contienen miles de transistores en un cm2 de silicio, naci la era de
la computadora personal. En trminos de arquitectura, las computadoras
personales no eran muy diferentes de las minicomputadoras de la
clase PDP- 11, pero en trminos de precio s que eran diferentes. Si bien la
minicomputadora haca posible que un departamento de una compaa o
universidad tuviera su propia computadora, el chip microprocesador
permita
que
un
solo individuo tuviera su propia computadora
personal. Las computadoras
personales ms potentes
empleadas por empresas, universidades e instalaciones del gobierno su
elen llamarse estaciones de trabajo, pero en realidad slo son
computadoras personales grandes. Por lo regular estas mquinas estn
interconectadas mediante una red.
La amplia disponibilidad de la potencia de cmputo, sobre todo la potencia
de cmputo alta- mente interactiva casi siempre acompaada por excelentes
grficos, dio pie al crecimiento de una importante industria productora de
software para computadoras personales. Una buena parte de este software
era amistoso con el usuario, lo que significa que estaba dirigido a usuarios
que no slo no saban nada de computacin, sino que adems no tenan la
mnima intencin de aprender. Sin duda, esto representaba un cambio
drstico respecto al OS/360, cuyo lenguaje de control de trabajos, JCL, era
tan arcano que llegaron a escribirse libros enteros sobre l (por ejemplo,
Cadow, 1970).
Dos sistemas operativos dominaron inicialmente el campo de las
computadoras personales y las estaciones de trabajo: MS-DOS de Microsoft
y UNIX. MS-DOS se usaba ampliamente en la IBM PC y otras mquinas
basadas en la CPU Intel 8088 y sus sucesoras, la 80286, 80386 y 80486
(que en adelante llamaremos la 286, 386 y 486, respectivamente) y ms
tarde la Pentium y Pentium Pro. Aunque la versin inicial de MS-DOS era
relativamente primitiva, versiones subsecuentes han incluido
caractersticas ms avanzadas, muchas de ellas tomadas de UNIX. El

sucesor de Microsoft para MS-DOS, WINDOWS, originalmente se ejecutaba


encima de MS-DOS (es decir, era ms un shell que un verdadero
sistema operativo), pero a partir de 1995 se produjo una versin autos
uficiente de WINDOWS, WINDOWS 95, de modo que ya no se necesita
MS-DOS para apoyarlo. Otro sistema operativo de Microsoft es WINDOWS
NT, que es compatible con WINDOWS 95 en cierto nivel, pero internamente
se reescribi desde cero.
El otro competidor importante es UNIX, que domina en las estaciones de
trabajo y otras computadoras del extremo alto, como los servidores de red.
UNIX es popular sobre todo en mquinas basadas en chips RISC de alto
rendimiento. Estas mquinas por lo regular tienen la potencia de cmputo de
una minicomputadora, a pesar de estar dedicadas a un solo usuario, por lo
que resulta lgico que estn equipadas con un sistema operativo diseado
originalmente para minicomputadoras, a saber, UNIX.
Una tendencia interesante que apareci a mediados de la dcada de 1980
fue el crecimiento de redes de computadoras personales en las que se
ejecutan sistemas operativos de red o sistemas operativos distribuidos
(Tanenbaum, 1995). En un sistema operativo de red los usuarios estn
conscientes de la existencia de mltiples computadoras y pueden ingresar en
mquinas remotas y copiar archivos de una mquina a otra. Cada mquina
ejecuta su propio sistema operativo local y tiene su propio usuario o usuarios
locales.
Los sistemas operativos de red no son fundamentalmente distintos de
aquellos para un solo procesador. Obviamente, estos sistemas necesitan un
controlador de la interfaz con la red y software de bajo nivel para operarlo,
as como programas para realizar inicios de sesin remotos y acceso a
archivos remotos, pero estas adiciones no alteran la estructura esencial del
sistema operativo.
Un sistema operativo distribuido, en cambio, presenta el mismo aspecto a los
usuarios que un sistema tradicional de un solo procesador, aunque en
realidad se compone de mltiples procesadores. Los usuarios no deben
enterarse de en dnde se estn ejecutando sus programas o almacenando
sus archivos; de todo eso debe encargarse el sistema operativo automtica y
eficientemente.
Los verdaderos sistemas operativos distribuidos requieren ms que la
adicin de un poco ms de cdigo a un sistema operativo uniprocesador,
porque los sistemas distribuidos y centralizados difieren en
aspectos cruciales. Los sistemas distribuidos, por ejemplo, a menudo p
ermiten a las aplicaciones ejecutarse en varios procesadores al mismo
tiempo, por lo que requieren algoritmos de planificacin de ms complejos a

fin de optimizar el grado de paralelismo.


En muchos casos, los retardos de comunicacin dentro de la red implican
que estos (y otros) algoritmos deban ejecutarse con informacin incompleta,
caduca o incluso incorrecta. Esta situacin difiere radicalmente un sistema
de un solo procesador en el que el sistema operativo tiene toda la
informacin sobr el estado del sistema.
SISTEMAS OPERATIVOS MAS CONOCIDOS.

MS-DOS (siglas de MicroSoft Disk Operating System, Sistema operativo de


disco de Microsoft) es un sistema operativo para computadoras basado
en x86. Fue el miembro ms popular de la familia de sistemas
operativos DOS de Microsoft, y el principal sistema para computadoras
personales compatible con IBM PC en la dcada de 1980 y mediados
de 1990, hasta que fue sustituida gradualmente por sistemas operativos
que ofrecan una interfaz grfica de usuario, en particular por varias
generaciones de Microsoft Windows.

MS-DOS naci en 1981 al encargrsele a Microsoft producir un sistema operativo


para la gama de computadores personales IBM PC deIBM. En este momento,
Microsoft compr los derechos de QDOS, tambin conocido como 86DOS,1 de Seattle Computer Products que fue elaborado por Tim Paterson, y
comenz a trabajar en las modificaciones para poder cumplir con los
requerimientos de IBM. La primera edicin, MS-DOS 1.0, fue presentada en
1982.2 La versin incluida en los PC's de IBM fue conocida como PC DOS.
Aunque MS-DOS y PC-DOS fueron desarrollados por Microsoft e IBM en paralelo,
los dos productos se separaron con el tiempo.

Unix se trata de un sistema operativo de los ms utilizados y con ms futuro


debido a que son muchos organismos oficiales y particulares los que
defienden su utilizacin, as como muchas firmas de fabricacin
y comercializacin de computadoras que lo incorporan en sus productos.
Podemos citar el ejemplo de la Comunidad Econmica Europea, que
impone el sistema operativo UNIX en todas las aplicaciones que se
desarrollan bajo sus auspicios.

Unix es un sistema operativo de tiempo compartido, controla los recursos de


una computadora y los asigna entre los usuarios. Permite a los usuarios correr
sus programas. Controla los dispositivos de perifricos conectados a la mquina.
Adems es un sistema multiusuario, en el que existe la portabilidad para la
implementacin de distintas computadoras.
Est formado por una serie de elementos que pueden representarse en forma de
capas concntricas donde, en primer lugar, alrededor del hardware, aislando a
este de los usuarios, adems de adaptar el resto del sistema operativo a la

maquina debido a la portabilidad que existe en el mismo,


El sistema se basa en un Ncleo llamado Kernel, que reside permanentemente
en la memoria, y que atiende a todas las llamadas del sistema, administra el
acceso a los archivos y el inicio o la suspensin de las tareas de los usuarios. La
comunicacin con el sistema UNIX se da mediante un programa de control
llamado SHELL. Este es un lenguaje de control, un intrprete, y un lenguaje
de programacin, cuyas caractersticas lo hacen sumamente flexible para las
tareas de un centro de cmputo.
Unix es uno de los sistemas operativos ms ampliamente usados en
computadoras que varan desde las personales hasta las macro. Existen versiones
para mquinas uniprocesador hasta multiprocesadores. Debido a su historia, que
evoluciona en los Laboratorios Bell de AT&T con un simulador de un viaje espacial
en el sistema solar, pasando por su expansin en universidades y la creacin de
las versiones ms importantes que son la de la Universidad de Berkeley y el
Sistema V de la misma AT&T.

Microsoft
Windows (conocido
generalmente
como Windows o MS
Windows),
es
el
nombre
de
una
familia
de distribuciones de softwarepara PC, smartphone, servidores y sistemas
empotrados, desarrollados y vendidos por Microsoft, y disponibles para
mltiples arquitecturas, tales como x86 y ARM.

Desde un punto de vista tcnico, no son sistemas operativos, sino que contienen
uno (tradicionalmente MS-DOS, o el ms actual cuyo ncleo es Windows NT)
junto con una amplia variedad de software; no obstante, es usual (aunque no
necesariamente correcto) denominar al conjunto como sistema operativo en lugar
de distribucin. Microsoft introdujo un entorno operativo denominado Windows el
20 de noviembre de 1985 como un complemento para MS-DOS en respuesta al
creciente inters en las interfaces grficas de usuario (GUI).1Microsoft Windows
lleg a dominar el mercado mundial de computadoras personales, con ms del
90 % de la cuota de mercado, superando a Mac OS, que haba sido introducido
en 1984.
La versin ms reciente de Windows es Windows 10 para equipos de
escritorio, Windows Server 2012 para servidores y Windows Phone 8 y
8.1 para dispositivos mviles. La primera versin en espaol fue Windows 3.0.
La primera versin se lanz en 1985 y comenz a utilizarse de forma generalizada
gracias a su interfaz grfica de usuario (GUI, Graphical User Interface) basada en
ventanas. Hasta ese momento (y hasta mucho despus como corazn de
Windows), el sistema operativo ms extendido era MS-DOS (Microsoft Disk
Operating System), que por aquel entonces contaba con una interfaz basada
en lnea de comandos.
El 30 de septiembre de 2014, Microsoft present Windows 10, estando disponible

desde ese da a usuarios avanzados que se suscribieran al programa Insider. Esta


nueva versin del sistema operativo que lleg de forma oficial y gratuita a usuarios
con licencia genuina deWindows 7, Windows 8 y Windows 8.1 as como a Insiders
el 29 de julio de 2015, siendo la primera versin que busca la unificacin de
dispositivos (escritorio, porttiles, telfonos inteligentes, tabletas y videoconsolas)
bajo una experiencia comn, con lo que se espera eliminar algunos problemas que
se presentaron con Windows 8/ 8.1.

GNU/Linux es uno de los trminos empleados para referirse a la


combinacin del ncleo o kernel libre similar a Unix denominado Linux con
el sistema operativo GNU. Su desarrollo es uno de los ejemplos ms
prominentes de software libre; todo su cdigo fuente puede ser utilizado,
modificado y redistribuido libremente por cualquiera bajo los trminos de la
GPL (Licencia Pblica General de GNU,) y otra serie de licencias libres.1

A pesar de que "Linux" se denomina en la jerga cotidiana al sistema


operativo,2 3 este es en realidad solo el Kernel (ncleo) del sistema. La verdadera
denominacin del sistema operativo es "GNU/Linux" debido a que el resto del
sistema (la parte fundamental de la interaccin entre el hardware y el usuario) se
maneja con las herramientas del proyecto GNU (www.gnu.org) y con entornos de
escritorio (comoGNOME), que tambin forma parte del proyecto GNU aunque tuvo
un
origen
independiente.
Como
el Proyecto
GNU destaca,4 GNU es
unadistribucin, usndose el trmino sistema operativo en el sentido empleado en
el ecosistema Unix, lo que en cualquier caso significa queLinux es solo una pieza
ms dentro de GNU/Linux. Sin embargo, una parte significativa de la comunidad,
as como muchos medios generales y especializados, prefieren utilizar el
trmino Linux para referirse a la unin de ambos proyectos. Para ms informacin
consulte la seccin "Denominacin GNU/Linux" o el artculo "Controversia por la
denominacin GNU/Linux".
A las variantes de esta unin de programas y tecnologas, a las que se les
adicionan diversos programas de aplicacin de propsitos especficos o generales
se las denomina distribuciones. Su objetivo consiste en ofrecer ediciones que
cumplan con las necesidades de un determinado grupo de usuarios. Algunas de
ellas
son
especialmente
conocidas
por
su
uso
en servidores y supercomputadoras.5 donde tiene la cuota ms importante del
mercado. Segn un informe de IDC, GNU/Linux es utilizado por el 78% de los
principales 500 servidores del mundo,6 otro informe le da una cuota de mercado
de 89% en los 500 mayores supercomputadores.7 Con menor cuota de mercado
el sistema GNU/Linux tambin es usado en el segmento de las computadoras de
escritorio, porttiles, computadoras
de
bolsillo, telfonos
mviles, sistemas
embebidos, videoconsolas y otros dispositivos.
LENGUAJES DE BAJO NIVEL.
Los lenguajes de bajo nivel son mas 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
Esta instruccin podra significar sumar el nmero contenido en la posicin de
memoria M al nmero almacenado en la posicin de memoria N y situar el
resultado en la posicin de memoria P. Evidentemente es mucho ms sencillo
recordar la instruccin anterior con un nemotcnico que su equivalente en cdigo
mquina.
0110 1001 1010 1011
Un programa escrito en lenguaje ensamblador no puede ser ejecutado
directamente por la computadora en esto se diferencia esencialmente del lenguaje
mquina, sino que requiere una fase de traduccin al lenguaje mquina. El
programa original escrito en lenguaje ensamblador se denomina programa fuente
y el programa traducido en lenguaje mquina se conoce como programa objeto, ya
directamente entendible por la computadora. El traductor de programas fuente a
objeto es un programa llamado ensamblador, existente en casi todos los
computadores.
No se debe confundir el programa ensamblador, encargado de efectuar la
traduccin del programa fuente escrito a lenguaje mquina, con el lenguaje
ensamblador, lenguaje de programacin con una estructura y gramtica definidas.
INTRPRETES.
Un intrprete es un traductor que toma un programa fuente, lo traduce y a
continuacin lo ejecuta. Un lenguaje que soporte un traductor de tipo intrprete se
denomina lenguaje interpretado. BASIC es el modelo por excelencia de lenguaje
interpretado. Los programas fuente en BASIC se escriben con ayuda de un
programa denominado editor que suele venir incorporado al programa intrprete.
COMPILADORES.
Un compilador es un programa que traduce los programas fuente escritos en
lenguajes de alto nivel: Pascal, FORTRAN.... a lenguaje mquina. Los programas
escritos en lenguajes de alto nivel se llaman programa fuente y el programa
traducido se le llama programa objeto cdigo objeto. El compilador traduce
sentencia a sentencia el programa fuente. Lenguajes compiladores tpicos son:
Pascal, FORTRAN, COBOL..., hoy da es posible encontrar tambin versiones de
compiladores BASIC y de C.
EL LENGUAJE DE MQUINA O CDIGO MQUINA
Este lenguaje est compuesto por un conjunto de instrucciones que determinan

acciones a 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.
Los circuitos microprogramables son digitales, lo que significa que trabajan con
dos nicos niveles de tensin. Dichos niveles, por abstraccin, se simbolizan con
los nmeros 0 y 1, por eso el lenguaje de mquina slo utiliza dichos signos. Esto
permite el empleo de las teoras del lgebra booleana y del sistema binario en el
diseo de este tipo de circuitos y en su programacin.
LENGUAJES DE PROGRAMACION:

El lenguaje COBOL (acrnimo de COmmon Business-Oriented Language, L


enguaje Comn Orientado a Negocios) fue creado en el ao 1959 con el
objetivo de crear un lenguaje de programacin universal que pudiera ser
usado en cualquier ordenador (ya que en los aos 1960 existan numerosos
modelos de ordenadores incompatibles entre s), y que estuviera orientado
principalmente a los negocios, es decir, a la llamada informtica de gestin.

Caractersticas
COBOL fue dotado de unas excelentes capacidades de autodocumentacin.
Una buena gestin de archivos y una excelente gestin de los tipos de datos para
la poca, a travs de la conocida sentencia PICTURE para la definicin de
campos estructurados. Para evitar errores de redondeo en los clculos que se
producen al convertir los nmeros a binario y que son inaceptables en temas
comerciales, COBOL puede emplear y emplea por defecto nmeros en base diez.
Para facilitar la creacin de programas en COBOL, la sintaxis del mismo fue
creada de forma que fuese parecida al idioma ingls, evitando el uso de smbolos
que se impusieron en lenguajes de programacin posteriores.
En 1985 se le aadi las variables locales, recursividad, reserva de memoria
dinmica y programacin estructurada. Existen varios compiladores que permiten
emplear COBOL como lenguaje de scripting y de servicio web. Tambin existen
compiladores
que
permiten
generar
cdigo
COBOL
para
la
plataforma .NET y EJB.

BASIC: es una familia de lenguajes de programacin de alto nivel. El BASIC


original, elDartmouth BASIC, fue diseado en 1964 como un medio para
facilitar la programacin en ordenadores a estudiantes (y profesores) que
no fueran de ciencias. De aquella, casi todo el uso de los ordenadores
requera codificar software hecho a medida, con lo cual quedaba restringida
a personas con formacin como cientficos y matemticos. BASIC

originalmente fue desarrollado como una herramienta de enseanza. El


lenguaje y sus variantes llegaron a estar ampliamente disponibles en
los microcomputadores a finales de los aos 1970 y en los aos 1980.
BASIC sigue siendo popular a da de hoy.
Pascal es un lenguaje de programacin desarrollado entre los aos 1968 y
1969 y publicado en 1970. Su objetivo era crear un lenguaje que facilitara el
aprendizaje de programacin a sus alumnos, utilizando la programacin
estructurada y estructuracin de datos. Sin embargo con el tiempo su
utilizacin excedi el mbito acadmico para convertirse en una
herramienta para la creacin de aplicaciones de todo tipo.Pascal se
caracteriza por ser un lenguaje de programacin estructurado fuertemente
tipado. Esto implica que:

El cdigo est dividido en porciones fcilmente legibles llamadas funciones o


procedimientos. De esta forma Pascal facilita la utilizacin de la programacin
estructurada en oposicin al antiguo estilo de programacin monoltica.El tipo de
dato de todas las variables debe ser declarado previamente para que su uso
quede habilitado.
Otra diferencia importante es que en Pascal, el tipo de una variable se fija en su
definicin; la asignacin a variables de valores de tipo incompatible no estn
autorizadas. Esto previene errores comunes donde variables son usadas
incorrectamente y tambin evita la necesidad de notacin hngara, que vienen a
ser prefijos que se aaden a los nombres de las variables y que indican su tipo.

Fortran es un lenguaje de programacin de alto nivel de propsito general,


procedimental e imperativo, que est especialmente adaptado al clculo
numrico y a la computacin cientfica. Desarrollado originalmente
por IBM en 1957 para el equipo IBM 704, y usado para aplicaciones
cientficas y de ingeniera, el FORTRAN vino a dominar esta rea de la
programacin desde el principio y ha estado en uso continuo por ms de
medio siglo. Es uno de los lenguajes ms populares en el rea de
la computacin de alto rendimiento y es el lenguaje usado para programas
que evalan el desempeo (benchmark) y el ranking de
los supercomputadores ms.

Versiones sucesivas han aadido soporte para procesamiento de datos basados


en caracteres (FORTRAN 77), programacin de arreglos, programacin
modular y programacin orientada a objetos (Fortran 90/95), y programacin
genrica (Fortran 2003)El lenguaje fue diseado teniendo en cuenta que los programas seran escritos en
tarjetas perforadas de 80 columnas. As por ejemplo, las lneas deban ser
numeradas y la nica alteracin posible en el orden de ejecucin era producida
con la instruccin goto. Estas caractersticas han evolucionado de versin en
versin. Las actuales contienen subprogramas, recursin y una variada gama
de estructuras de control.

C es un lenguaje de programacin originalmente desarrollado por Dennis


M. Ritchie entre 1969 y 1972 en los Laboratorios Bell,2 como evolucin del
anterior lenguaje B, a su vez basado en BCPL.

Es un lenguaje orientado a la implementacin de Sistemas Operativos,


concretamente Unix. C es apreciado por la eficiencia del cdigo que produce y es
el lenguaje de programacin ms popular para crear software de sistemas, aunque
tambin se utiliza para crear aplicaciones.
Dispone de las estructuras tpicas de los lenguajes de alto nivel pero, a su vez,
dispone de construcciones del lenguaje que permiten un control a muy bajo nivel.
Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar
cdigo
en ensamblador con
cdigo
C
o
acceder
directamente
a memoria o dispositivos perifricos.

Vous aimerez peut-être aussi