Este documento describe la evolución del software y su situación actual. Comienza con los primeros programas para controlar las computadoras y el concepto de programa almacenado de Von Neumann. Luego describe las etapas de multiprogramación, software como producto, sistemas distribuidos, y la crisis del software debido a su complejidad creciente. Finalmente, explica los principales tipos de software de base como sistemas operativos y lenguajes de programación.
Introducción:Los objetivos de Desarrollo Sostenible
Evolución y tipos de software operativo en
1. TEMA 3. SOFTWARE OPERATIVO Y DE
DESARROLLO
Ing. Dulce Mónica
Castillo Corona
2. 3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
Con los primeros equipos de computo,
evolucionan también un conjunto de
programas para el control de la
computadora misma, los cuales van a
permitir a la computadora realizar
diversas labores a esto le conocemos
como sw.
En 1946 VonNeumann pensó que las
instrucciones podían almacenarse en la
computadora junto con los datos a ello le
llamo programa almacenado o concepto
Von Neumann.
3. 3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
De la mitad de los 60’s a finales de los
70’s la multiprogramación y los
sistemas multiusuario introdujeron
nuevos conceptos de interacción
hombre-máquina.
También se caracterizó por el
establecimiento del software como
producto y la llegada de las "casas de
software".
4. 3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
A mediados de los años 70’s continuando más
allá de una década.
En esta etapa comienzan los sistemas
distribuidos múltiples de computadoras,
cada una ejecutando funciones
concurrentes y comunicándose con el resto,
de esta manera se incrementó
notablemente la complejidad de los
sistemas informáticos.
Las redes, las comunicaciones digitales de alto
ancho de banda y la creciente demanda de
acceso "instantáneo" a los datos,
supusieron una fuerte presión sobre los
desarrolladores del software.
5. 3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
Las redes inalámbricas, dispositivos
móviles y celulares irrumpen con
fuerza en los campos del
entretenimiento, la música y los
videos en Internet.
La crisis del sw se refiere a la dificultad
en escribir programas libres de
defectos, fácilmente comprensibles, y
que sean verificables. Las causas
son, entre otras, la complejidad que
supone la tarea de programar, y los
cambios a los que se tiene que ver
sometido un programa para ser
continuamente adaptado a las
necesidades de los usuarios.
6. 3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
SW: Conjunto de programas de cómputo, procedimientos, reglas, documentación y
datos asociados que forman parte de las operaciones de un sistema de
computación.
Extraído del estándar 729 del IEEE3
7. 3.2 SOFTWARE DE BASE
1ª. Gen. El S.O. se encargaba de resolver parte de los problemas del
proceso de la información y de los dispositivos conectados a la
computadora, así mismo el uso eficiente de la memoria en forma
rudimentaria.
2ª. Gen. Surgen procedimientos para el arranque en frío y su operación en
tiempo real y compartido.
3ª. Gen menor tiempo para el arranque en frío , uso de memoria intermedia
para almacenamiento de información, mejor uso de la memoria principal,
multiprogramación y simplificación de los operadores.
4ª. Gen. Siguen evolucionando para facilitar casi todo tipo de usos y
diagnóstico de problemas en las grandes computadoras.
8. 3.2 SOFTWARE DE BASE
SISTEMAS OPERATIVOS…..
Son los encargados de ejercer el
control y coordinar el uso del
hardware entre diferentes
programas de aplicación y los
diferentes usuarios. Así mismo es
un administrador de los recursos
de hardware del sistema.
9. 3.2 SOFTWARE DE BASE
El S.O. esta constituido básicamente por tres partes:
Un administrador de entrada/salida que coordina todas las
comunicaciones de la computadora con los periféricos y por
consiguiente el flujo de información.
Un procesador de comando que interprete todo lo que tecleamos
permitiendo con ello su ejecución.
Una serie de programas denominados utilerías que permiten la
administración de nuestros archivos y tareas diversas.
11. 3.2 SOFTWARE DE BASE
PRINCIPALES FUNCIONES DEL S.O.
Coordinar y manipular el hardware, así como memoria,
discos, teclado, etc.
Organizar los archivos en los diversos dispositivos
Gestión de errores
Interpretar comandos para la comunicación entre el
usuario y la máquina
El sistema operativo es generalmente diseñado por el
fabricante y por ello no es posible definir uno estándar;
aunque hay un conjunto de funciones básicas o
componentes que todo sistema debe considerar
12. 3.2 SOFTWARE DE BASE
Monousuario
Por No. de
usuarios
Multiusuario
S.O. por
servicios
Por No. de
tareas
Monotareas
Multitareas
13. 3.2 SOFTWARE DE BASE
Monousuario: Los sistemas monousuarios son aquellos que nada más
puede atender a un solo usuario, gracias a las limitaciones creadas
por el hardware, los programas o el tipo de aplicación que se este
ejecutando.
Estos tipos de sistemas son muy simples, porque todos los
dispositivos de entrada, salida y control dependen de la tarea que se
esta utilizando, esto quiere decir, que las instrucciones que se dan,
son procesadas de inmediato; ya que existe un solo usuario. Y están
orientados principalmente por los microcomputadores.
Multiusuario: En esta categoría se encuentran todos los sistemas que
cumplen simultáneamente las necesidades de dos o más usuarios,
que comparten mismos recursos. Este tipo de sistemas se emplean
especialmente en redes. En otras palabras consiste en el
fraccionamiento del tiempo. Un claro ejemplo de este tipo es el S.O.
UNIX.
14. 3.2 SOFTWARE DE BASE
Monotareas: Es el caso cuando solo se podía correr un solo programa a la vez
como lo son CP/M y DOS.
Multitarea: cuando se pueden correr en memoria más de un programa. En este
caso se utilizan comandos para intercambiarse o moverse entre los
programas en uso. En esta categoría podríamos mencionar UNIX, OS/2,
Apple’s Multifinder OS, Windows NT, Linux. Lo anterior no debe confundirse
con un proceso alternado, es decir que la aplicación que no esta en
pantalla no sigue corriendo y por consiguiente no es multitareas.
15. 3.2 SOFTWARE DE BASE
Gary Kildall desarrollo el primer S.O. para microcomputadoras llamado CP/M, su
finalidad era controlar la entrada/salida de información del recién diseñado
microprocesador, así como el almacenamiento de datos y proceso en
general. Tiempo después (‘80) aparece Bill Gates y Paul Allen escribiendo
también este tipo de sw para microcomputadoras y escriben el S.O. más
conocido de todos: el DOS de IBM y su equivalente el MS-DOS para las
computadoras compatibles.
16. 3.2 SOFTWARE DE BASE
El sistema operativo MS-DOS (MicroSoft Disk
Operating System) fué un sistema operativo
de Microsoft destinado a computadoras con
arquitectura x86 y se convirtió en el sistema
operativo más popular entre los computadores
IBM PC y compatibles durante los años 80 y
mediados de los 90, momento en el que
comenzaron a popularizarse los sistemas
operativos con interfaces gráficas de usuario
(como Windows 95).
MS-DOS no es ni multiusuario ni multitarea. No
puede trabajar con más de un usuario ni en
más de un proceso a la vez.
MS-DOS carece por completo de interfaz gráfica.
17. 3.2 SOFTWARE DE BASE
Esta primera versión de MS-DOS
soportaba 16 Kb de memoria
RAM, disquetes de 5,25 pulgadas
de una sola cara de 160 Kb e
incluía ya 22 órdenes además de
incluir ya el intérprete de
comandos COMMAND.COM. y
manejar archivos con extensión
.com y .exe.
MS-DOS nos acompañó desde 1981
con la versión 1.0 hasta el año
2000 con la versión 8.0
18. 3.2 SOFTWARE DE BASE
Windows comprende una familia
de sistemas operativos
desarrollados y
comercializados por Microsoft.
Existen versiones para
hogares, empresas, servidores
y dispositivos móviles, como
computadores de bolsillo y
teléfonos inteligentes.
Es multitarea y multiusuario a
partir de la versión 95.
19.
20. 3.2 SOFTWARE DE BASE
UNIX fué desarrollado, en principio, en 1969
por un grupo de empleados de los
laboratorios Bell de AT&T, entre los que
figuran Ken Thompson, Dennis Ritchie y
Douglas McIlroy.
El antecesor a este proyecto es un programa
llamado Multics (Multiplexed Information
and Computing System)
Está escrito en lenguaje C.
El objetivo principal de este proyecto fue
desarrollar un sistema operativo interactivo
que contará con muchas innovaciones,
entre las principales mejorar las políticas de
seguridad.
21. 3.2 SOFTWARE DE BASE
Características UNIX es un sistema operativo multitarea y multiusuario.
Escrito en lenguaje de alto nivel
Aplicación que interpreta los comandos tecleados por parte del usuario
llamado shell
Emplea manejo dinámico de memoria por intercambio o paginación
Permite comunicación entre procesos
Emplea un sistema jerárquico de archivos por seguridad
22. 3.2 SOFTWARE DE BASE
LINUX
La historia de Linux empieza en Finlandia,
en 1991, cuando en Linus B. Torvalds,
estudiante de la Universidad de Helsinki,
se le ocurrió comprarse un PC con
procesador 386. Después de observar que
el MS/DOS no aprovechaba los recursos de
la máquina, decidió usar otro sistema
operativo de entonces: Minix (Minix era un
pequeño sistema Unix).
Ha sido diseñado y programado por
multitud de programadores alrededor del
mundo. El núcleo del sistema sigue en
continuo desarrollo bajo la coordinación de
Linus Torvalds.
23. 3.2 SOFTWARE DE BASE
Es un sistema operativo multiusuario que
incorpora multitarea.
Dos características principales es que es
libre, esto significa que no tenemos que
pagar ningún tipo de licencia a ninguna
casa desarrolladora de sw por el uso del
mismo, la segunda, es que el sistema
viene acompañado del código fuente.
Linux se distribuye bajo la GNU General
Public License por lo tanto, el código
fuente tiene que estar siempre accesible y
cualquier modificación ó trabajo derivado
tiene que tener esta licencia.
El 9 de Mayo 1996, Tux fue propuesto como
mascota oficial de Linux.
24. 3.2 SOFTWARE DE BASE
El 24 de enero de 1984, Apple Computer Inc. (ahora Apple Inc.) introdujo la computadora
personal Macintosh, con el modelo Macintosh 128K, el cual incluía el sistema operativo
Mac OS, conocido en esa época como System Software.
Está basado en Unix.
En enero de 1981, Steve Jobs se hizo cargo del proyecto Macintosh completo
El Sistema 1 tenía escritorio, ventanas, iconos, mouse, menús y scrollbars
Mac OS X, hoy en día este sistema operativo esta virtualmente en todas las Mac’s, y
fué trabajado por una década para poder obtener el éxito que tiene ahora. Las
versiones actuales ya cuentan con sistema multitareas y multiusuarios.
25. 3.2 LENGUAJES Y TRADUCTORES
Son herramientas que nos permiten crear
programas y sw.
Una computadora funciona bajo control de un
programa el cual debe estar almacenado
en la unidad de memoria; tales como el
disco duro.
Por otra parte, los lenguajes de programación
en código de máquina son
verdaderamente difíciles de entender para
una persona, ya que están compuestos de
códigos numéricos sin sentido.
Los lenguajes de programación representan
en forma simbólica y en manera de un
texto los códigos que podrán ser leídos por
una persona.
26. 3.2 LENGUAJES Y TRADUCTORES
Los lenguajes de programación son
independientes de las computadoras
a utilizar.
El ordenador sólo entiende un lenguaje
conocido como código binario o
código máquina, consistente en
ceros y unos.
Los lenguajes más próximos a la
arquitectura hw se denominan
lenguajes de bajo nivel y los que se
encuentran más cercanos a los
programadores y usuarios se
denominan lenguajes de alto nivel.
27. 3.2 LENGUAJES Y TRADUCTORES
Lenguajes de bajo nivel
El lenguaje de máquina es el sistema
de códigos directamente
interpretable por un
microprocesador. Este lenguaje está
compuesto por un conjunto de
instrucciones que determinan
acciones a ser tomadas por la
máquina.
El lenguaje ensamblador implementa
una representación simbólica de los
códigos de máquina binarios y otras
constantes necesarias para
programar un microprocesador.
28. 3.2 LENGUAJES Y TRADUCTORES
Lenguajes de alto nivel
Al aproximarse al lenguaje natural,
el programa se puede escribir y
leer de una forma más sencilla,
eliminando muchas de las
posibilidades de cometer errores
que se daban en el lenguaje
máquina, ya que se utilizan
palabras (generalmente en
inglés)
en lugar de cadenas de
símbolos sin ningún significado
aparente.
29. 3.2 LENGUAJES Y TRADUCTORES
Compilador
Un compilador es un programa que permite traducir el código fuente
de un programa en lenguaje de alto nivel, a otro lenguaje de
nivel inferior (típicamente lenguaje de máquina).
De esta manera un programador puede diseñar un programa en un
lenguaje mucho más cercano a como piensa un ser humano,
para luego compilarlo a un programa más manejable por una
computadora.
30. 3.2 LENGUAJES Y TRADUCTORES
Intérprete
Es un programa capaz de analizar y ejecutar programas escritos en un lenguaje
de alto nivel.
Los intérpretes se diferencian de los compiladores en que los primeros sólo
realizan la traducción a medida que sea necesaria, típicamente, instrucción
por instrucción, y normalmente no guardan el resultado de dicha traducción.
31. 3.3 SOFTWARE APLICATIVO
Es aquel que permite a los usuarios llevar a cabo
una o varias tareas específicas, en cualquier
campo de actividad susceptible de ser
automatizado o asistido, con especial énfasis en
los negocios.
Se clasifica en dos grandes áreas:
A la medida.
De propósito general.
32. 3.3 SOFTWARE APLICATIVO
A la medida…
Son aplicaciones
desarrolladas “a la medida
de las necesidades‟ que
ofrecen una gran potencia,
ya que, están
exclusivamente diseñadas
para resolver problemas
con requerimientos
específicos.
33. 3.3 SOFTWARE APLICATIVO
De propósito general
Son paquetes integrados de
sw que incluyen varias
aplicaciones, po rejemplo:
Procesadores de Texto.
Hoja de Cálculo.
Base de datos.