Está en la página 1de 8

República Bolivariana de Venezuela

Universidad Nacional Experimental “Rómulo Gallegos”

Área de Ciencias de Salud

Programa de Medicina

2do Año, Sección “5”

Software, Sistemas
Operativos y Lenguajes
de Programación

Profesor:

Integrantes:

Marzo, 2021
1. Definición de Software.
Se conoce como software, logicial o soporte lógico al sistema formal de un
sistema informático, que comprende el conjunto de los componentes lógicos
necesarios que hacen posible la realización de tareas específicas, en
contraposición a los componentes físicos que son llamados hardware. La
interacción entre el software y el hardware hace operativo un ordenador (u otro
dispositivo), es decir, el software envía instrucciones que el hardware ejecuta,
haciendo posible su funcionamiento.

Los componentes lógicos incluyen, entre muchos otros, las aplicaciones


informáticas, tales como el procesador de texto, que permite al usuario realizar
todas las tareas concernientes a la edición de textos; el llamado software de
sistema, tal como el sistema operativo, que básicamente permite al resto de los
programas funcionar adecuadamente, facilitando también la interacción entre los
componentes físicos y el resto de las aplicaciones, y proporcionando una interfaz
con el usuario.
El software, en su gran mayoría, está escrito en lenguajes de programación de
alto nivel, ya que son más fáciles y eficientes para que los programadores los
usen, porque son más cercanos al Lenguaje natural respecto del lenguaje de
máquina. Los lenguajes de alto nivel se traducen a lenguaje de máquina utilizando
un compilador o un intérprete, o bien una combinación de ambos. El software
también puede estar escrito en lenguaje ensamblador, que es de bajo nivel y tiene
una alta correspondencia con las instrucciones de lenguaje máquina; se traduce al
lenguaje de la máquina utilizando un ensamblador.
El anglicismo software es el más ampliamente difundido al referirse a este
concepto, especialmente en la jerga técnica; en tanto que el término sinónimo
«logicial», derivado del término francés logiciel, es utilizado mayormente en países
y zonas de influencia francesa.

2. Historia del Software

La primera teoría sobre el software fue propuesta por Alan Turing en su


ensayo de 1935 sobre números computables, con una aplicación destinada a la
toma de decisiones. El término "software" fue utilizado por primera vez de forma
escrita por John W. Tukey en 1958. El estudio de los campos académicos sobre
el software se divide en informática y la ingeniería de software.

Como los programas cada vez entraban más en el reino de firmware y el


hardware por si sólo se hacía más pequeño, más barato y más rápido debido a la
ley de Moore, los elementos de la computación que primero se consideraban
software, pasan a ser hardware. La mayoría de las compañías de hardware hoy
en día tienen más programadores de software en nómina que diseñadores de
hardware, ya que las herramientas de software han automatizado muchas de las
tareas de los ingenieros de circuitos. Al igual que la industria automotriz, la
industria del software ha crecido de unos pocos visionarios que operaban en su
garaje con sus prototipos. Steve Jobs y Bill Gates fueron los Henry Ford y
Chevrolet Luis de sus tiempos. En el caso del desarrollo de software, el despegue
final es generalmente aceptado que se produce con la publicación en la década
de 1980 de las especificaciones para el IBM Personal Computer. Hoy su
movimiento sería visto como un tipo de público-sourcing.

Hasta ese momento, el software se incluye con el hardware de los fabricantes


de equipos originales (OEM), tales como Data General, Digital Equipment y de
IBM. Cuando un cliente compra una minicomputadora, esta incluye el software
que es instalado por los ingenieros empleados por el OEM. Las empresas de
informática de hardware, no sólo incluyen sus paquetes de software, sino que
también asesoren sobre la ubicación de los equipos normalmente en un espacio
refrigerado llamo sala de ordenadores. La mayoría de las empresas tenían su
software en su contabilidad valorados 0 ya que no podían venderlo. Cuando Data
General introdujo su software Data General Nova, una compañía llamada
Digidyne intentó instalar este software que ya había adquirido en un equipo
distinto. Data Gerenal se negó a darle una licencia para poder hacerlo y fueron a
los Tribunales. La Corte Suprema dijo que si Digidyne había pagado era
propietaria de ese software debía poder instalarlo en el equipo que quisiese, lo
que se llamó Digidyne v. Poco después IBM publicó los registros de DOS y nació
Microsoft. La decisión de la Corte Suprema permitió valorar el software,
patentarlo y comerciar con el. Es difícil imaginar hoy que una vez la gente sentía
que el software no valía nada sin una máquina. Hay muchas empresas de éxito
hoy en día que venden sólo productos de software, aunque todavía hay muchos
problemas comunes de concesión de licencias de software debido a la
complejidad de los diseños y documentación, lo que lleva a los trolls de patentes.

Con las especificaciones de software de código abierto y la posibilidad de


concesión de licencias de software, nuevas oportunidades se levantaron de
herramientas de software que luego se convirtieron en el estándar de facto, como
DOS para los sistemas operativos, sino también diversos programas de
procesamiento de texto y hojas de cálculo. En un patrón de crecimiento similar,
los métodos de desarrollo de propiedad se convirtió en la metodología estándar
de desarrollo de software.

3. Lenguajes de Programación.

Un lenguaje de programación es un lenguaje formal (o artificial, es decir, un


lenguaje con reglas gramaticales bien definidas) que le proporciona a una
persona, en este caso el programador, la capacidad de escribir (o programar) una
serie de instrucciones o secuencias de órdenes en forma de algoritmos con el fin
de controlar el comportamiento físico o lógico de un sistema informático, de
manera que se puedan obtener diversas clases de datos o ejecutar determinadas
tareas. A todo este conjunto de órdenes escritas mediante un lenguaje de
programación se le denomina programa informático.

3.2 . Características.

Programar viene a ser el proceso de crear un software fiable mediante la


escritura, prueba, depuración, compilación o interpretación, y mantenimiento del
código fuente de dicho programa informático. Básicamente, este proceso se define
aplicando lógicamente los siguientes pasos:
 El desarrollo lógico del programa para resolver un problema en
particular
 Escritura de la lógica del programa empleando un lenguaje de
programación específico (codificación del programa)
 Compilación o interpretación del programa hasta convertirlo en
lenguaje de máquina
 Prueba y depuración del programa
 Desarrollo de la documentación.
Los lenguajes de programación están formados por un conjunto de símbolos
(llamado alfabeto), reglas gramaticales (léxico/morfológicas y sintácticas) y
semánticas, que en conjunto definen las estructuras válidas del lenguaje y su
significado. Existe el error común de tratar como sinónimos los términos 'lenguaje
de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a
los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje
para el marcado de páginas web que no es propiamente un lenguaje de
programación, sino un conjunto de instrucciones que permiten estructurar el
contenido de los documentos).
El lenguaje de programación permite especificar de manera precisa sobre qué
datos debe operar un software específico, cómo deben ser almacenados o
transmitidos dichos datos, y qué acciones debe tomar el software bajo una variada
gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar
relativamente próximo al lenguaje humano o natural. Una característica relevante
de los lenguajes de programación es precisamente que más de un programador
pueda usar un conjunto común de instrucciones que sean comprendidas entre
ellos para realizar la construcción de un programa de forma colaborativa. El
desarrollo lógico del programa para resolver un problema en particular

 Escritura de la lógica del programa empleando un lenguaje de


programación específico (codificación del programa)
 Compilación o interpretación del programa hasta convertirlo en lenguaje
de máquina
 Prueba y depuración del programa
 Desarrollo de la documentación.
Los lenguajes de programación están formados por un conjunto de símbolos
(llamado alfabeto), reglas gramaticales (léxico/morfológicas y sintácticas)
y semánticas, que en conjunto definen las estructuras válidas del lenguaje y su
significado. Existe el error común de tratar como sinónimos los términos 'lenguaje
de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a
los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje
para el marcado de páginas web que no es propiamente un lenguaje de
programación, sino un conjunto de instrucciones que permiten estructurar el
contenido de los documentos).
El lenguaje de programación permite especificar de manera precisa sobre qué
datos debe operar un software específico, cómo deben ser almacenados o
transmitidos dichos datos, y qué acciones debe tomar el software bajo una variada
gama de circunstancias. Todo esto, a través de un lenguaje que intenta
estar relativamente próximo al lenguaje humano o natural. Una característica
relevante de los lenguajes de programación es precisamente que más de un
programador pueda usar un conjunto común de instrucciones que sean
comprendidas entre ellos para realizar la construcción de un programa de forma
colaborativa.

4. Evolución de los Lenguajes de Programación-

Los equipos de ordenador (el hardware) han pasado por cuatro generaciones,
de las que las tres primeras (ordenadores con válvulas, transistores y circuitos
integrados) están muy claras, la cuarta (circuitos integrados a gran escala) es
más discutible.

Algo parecido ha ocurrido con la programación de los ordenadores (el


software), que se realiza en lenguajes que suelen clasificarse en cinco
generaciones, de las que las tres primeras son evidentes, mientras no todo el
mundo está de acuerdo en las otras dos. Estas generaciones no coincidieron
exactamente en el tiempo con las de hardware, pero sí de forma aproximada, y
son las siguientes:

 Primera generación: los primeros ordenadores se programaban


directamente en código de máquina (basado en sistema binario), que
puede representarse mediante secuencias de 0 y 1. No obstante, cada
modelo de ordenador tiene su propia estructura interna a la hora de
programarse. A estos lenguajes se les denominaba Lenguaje de bajo nivel,
porque sus instrucciones ejercen un control directo sobre el hardware y
están condicionados por la estructura física de las computadoras que lo
soportan. Dado que este tipo de lenguaje se acerca mucho más a la lógica
de la máquina que a la humana, es mucho más complicado programar con
él. El uso de la palabra bajo en su denominación no implica que el lenguaje
sea menos potente que un lenguaje de alto nivel, sino que se refiere a la
reducida abstracción entre el lenguaje y el hardware. Por ejemplo, se
utiliza este tipo de lenguajes para programar tareas críticas de los sistemas
operativos, de aplicaciones en tiempo real o controladores de dispositivos.
Otra limitación de estos lenguajes es que se requiere de ciertos
conocimientos de programación para realizar las secuencias de
instrucciones lógicas.

 Segunda generación: los lenguajes simbólicos, asimismo propios de la


máquina, simplifican la escritura de las instrucciones y las hacen más
legibles. Se refiere al lenguaje ensamblador ensamblado a través de un
macroensamblador. Es el lenguaje de máquina combinado con una serie
de poderosas macros que permiten declarar estructuras de datos y de
control complejas.

 Tercera generación: los lenguajes de alto nivel sustituyen las


instrucciones simbólicas por códigos independientes de la máquina,
parecidas al lenguaje humano o al de las Matemáticas. Se crearon para
que el usuario común pudiese solucionar un problema de procesamiento
de datos de una manera más fácil y rápida. Son usados en ámbitos
computacionales donde se logra un alto rendimiento con respecto a
lenguajes de generaciones anteriores. Entre ellos se encuentran C,
Fortran, Smalltalk, Ada, C++, C#, Cobol, Delphi, Java y PHP, entre otros.
Algunos de estos lenguajes pueden ser de propósito general, es decir, que
el lenguaje no está enfocado a una única especialidad, sino que puede
usarse para crear todo tipo de programas. Para ciertas tareas más
comunes, existen bibliotecas para facilitar la programación que permiten la
reutilización de código.

 Cuarta generación: se ha dado este nombre a ciertas herramientas que


permiten construir aplicaciones sencillas combinando piezas prefabricadas.
Hoy se piensa que estas herramientas no son, propiamente hablando,
lenguajes. Cabe mencionar que, algunos proponen reservar el nombre de
cuarta generación para la programación orientada a objetos. Estos últimos
tienen una estructura muy parecida al idioma inglés. Algunas de sus
características son: acceso a base de datos, capacidades gráficas,
generación de código automáticamente, así como poder programar
visualmente (como por ejemplo Visual Basic o SQL). Entre sus ventajas se
cuenta una mayor productividad y menor agotamiento del programador, así
como menor concentración por su parte, ya que las herramientas
proporcionadas incluyen secuencias de instrucciones. El nivel de
concentración que se requiere es menor, ya que algunas instrucciones,
que le son dadas a las herramientas, a su vez, engloban secuencias de
instrucciones a otro nivel dentro de la herramienta. Cuando hay que dar
mantenimiento a los programas previamente elaborados, es menos
complicado por requerir menor nivel de concentración. Por otro lado, sus
desventajas consisten en que estas herramientas prefabricadas son
generalmente menos flexibles que las instrucciones directas en los
lenguajes de bajo nivel. Además, se suelen crear dependencias con uno o
varios proveedores externos, lo que se traduce en pérdida de autonomía.
Asimismo, es frecuente que dichas herramientas prefabricadas contengan
librerías de otros proveedores, que conlleva instalar opciones adicionales
que son consideradas opcionales. A menos que existan acuerdos con
otros proveedores, son programas que se ejecutan únicamente con el
lenguaje que lo creó. Tampoco suelen cumplir con los estándares
internacionales ISO y ANSI, lo cual conlleva un riesgo futuro por
desconocerse su tiempo de permanencia en el mercado. Algunos ejemplos
son: NATURAL y PL/SQL.

 Quinta generación: en ocasiones se llama así a los lenguajes de


inteligencia artificial, aunque con el fracaso del proyecto japonés de la
quinta generación esta denominación ha caído en desuso.

5. Sistemas Operativos.

Un sistema operativo (SO o, frecuentemente, OS —del inglés operating


system—) es el software principal o conjunto de programas de un sistema
informático que gestiona los recursos de hardware y provee servicios a los
programas de aplicación de software, ejecutándose en modo privilegiado
respecto de los restantes.

Uno de los propósitos del sistema operativo que gestiona el núcleo


intermediario consiste en gestionar los recursos de localización y protección de
acceso del hardware, hecho que alivia a los programadores de aplicaciones de
tener que tratar con estos detalles. La mayoría de aparatos electrónicos que
utilizan microprocesadores para funcionar, llevan incorporado un sistema
operativo (teléfonos móviles, reproductores de DVD, computadoras, enrutadores,
etc.). En cuyo caso, son manejados mediante una interfaz gráfica de usuario, un
gestor de ventanas o un entorno de escritorio, si es un celular, mediante una
consola o control remoto si es un DVD y, mediante una línea de comandos o
navegador web si es un enrutador.
El sistema operativo de escritorio dominante es Microsoft Windows con una
cuota de mercado de alrededor del 82,74%. macOS de Apple Inc. ocupa el
segundo lugar (13,23%), y las variedades de GNU/Linux están colectivamente en
tercer lugar (1,57%). En el sector móvil (incluidos teléfonos inteligentes y tabletas),
la participación de Android es de hasta un 70% en el año 2017. Las distribuciones
Linux son dominantes en los sectores de servidores y supercomputación. Existen
otras clases especializadas de sistemas operativos, como los sistemas integrados
y en tiempo real, para muchas aplicaciones.

6. Evolución de los Sistemas Operativos.

También podría gustarte