documentt3
TRANSCRIPT
TEMA 3. SOFTWARE OPERATIVO Y DE
DESARROLLO
Ing. Dulce Mónica
Castillo Corona
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.
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".
3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
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.
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.
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
3.1 EVOLUCIÓN DEL SW Y SU
SITUACIÓN ACTUAL
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.
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.
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.
3.2 SOFTWARE DE BASE
3.2 SW 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
3.2 SOFTWARE DE BASE
S.O. por
servicios
Por No. de
usuarios
Monousuario
Multiusuario
Por No. de
tareas
Monotareas
Multitareas
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.
Multitareas: Es el modo de funcionamiento disponible en algunos
sistemas operativos, mediante el cual una computadora procesa
varias tareas al mismo tiempo. Para mantener el sistema en orden,
cada tarea recibe un nivel de prioridad o se procesa en orden
secuencial. Dado que el sentido temporal del usuario es mucho más
lento que la velocidad de procesamiento del ordenador, las
operaciones de multitarea en tiempo compartido parecen ser
simultáneas. 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 multiproceso.
Monotareas : Es el caso cuando solo se podía correr un solo programa
a la vez como lo son CP/M y DOS.
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.
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.
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.
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
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.
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.
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
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.
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.
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.
3.2 SOFTWARE DE BASE
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.
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.
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.
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.
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.
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.
3.2 LENGUAJES Y TRADUCTORES
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.
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.
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.
3.3 SOFTWARE APLICATIVO