Capítulo 3 Definición de SOFTWARE Estructura del SW

Anuncio
Capítulo 3
Software o soporte lógico
Definición de SOFTWARE
?
?
Conjunto de programas necesarios para
realizar con el ordenador el tratamiento
de la información.
SW = Sistema Operativo + Programas
de aplicación
Estructura del SW
?
El SO hace de puente entre el HW y los
programas de aplicación.
Programas de Aplicación
Sistema Operativo
1
Objetivos de un S.O.
1. Optimizar el rendimiento de los
recursos del ordenador.
2. Hacer el HW accesible para el usuario
y los programas de aplicación.
Funciones de un S.O.
?
?
?
?
?
?
?
Control de concurrencia
Coordinación de programas
Asignación de recursos
Gestión de ficheros
Protección de la información
Registro de todas las actividades
Planificación y carga de programas o tareas
Funciones de un S.O. ( II )
Tratamiento de errores
Inicialización del sistema
? Comunicación con periféricos
? Control de usuarios
?
?
2
Estructura de un S.O.
Progs. de Control :
?
?
?
Gestión de HW
Gestión de programas.
Gestión de datos.
Progs. de Proceso :
?
?
Traductores,
compiladores e
intérpretes.
Utilidades del SO.
Lenguajes de programación
Notación formal para describir
algoritmos o funciones que serán
ejecutados por un ordenador.
? Instrucción=orden expresada en un
lenguaje de programación.
? Programa =secuencia ordenada de
instrucciones.
?
Lenguajes según su grado de
independencia de la máquina
Lenguaje máquina.
Lenguaje ensamblador.
? Lenguajes de medio nivel (C).
? Lenguajes de alto nivel (Pascal, Cobol).
? Lenguajes orientados a objeto (C++,
Delphi, Java).
? Lenguajes orientados a problemas
concretos (SQL, SPSS, BMDP, DBase).
?
?
3
Lenguajes por generaciones
1ª Generación ( máquina y
ensamblador ).
? 2ª Generación : asignación estática de
memoria ( FORTRAN, COBOL, ... ).
? 3ª Generación : asignación dinámica de
memoria, recursividad ( Pascal, C, ...).
?
Lenguajes por generaciones
4ª Generación : mucho más específicos
( SQL, NATURAL, ... ).
? 5ª Generación : ligados a la Inteligencia
artificial ( LISP, PROLOG, ... ).
?
Traductores
?
Programas que procesan un código fuente
generando un código objeto (destino)
equivalente.
Programa en
lenguaje fuente
Traductor
Programa en
lenguaje
objeto
El traductor puede estar escrito en
un lenguaje distinto al fuente y al
objeto.
4
Ensambladores y
Compiladores
Programa en
lenguaje
ensamblador
Ensamblador
Programa en
lenguaje
máquina
Ejemplo en Ensamblador
Programa en
lenguaje de
alto nivel
Compilador
Programa en
lenguaje
máquina
Ejemplo en C
Ejemplo en Pascal
Tiempo de Compilación
Ejecución de un programa
Programa en
lenguaje
máquina
Ejecución
Resultados
+
Datos
Tiempo de Ejecución
Antes de la ejecución tanto el programa como los
datos deben ser cargados en memoria por un
programa cargador ( loader )
Intérpretes
Programa en
lenguaje de
alto nivel
Intérprete
Resultados
+
Datos
5
Programas de Aplicación
?
?
Tienen utilidad directa para el usuario.
Ejemplos : procesadores de texto, hojas
de calculo, sistemas de gestión de
bases de datos, programas de diseño
gráfico, etc.
Programas de Aplicación II
?
Software de propósito general.
?
Software dedicado.
Procesadores de texto
Convierten el ordenador en una
máquina de escribir sofisticada
? Mezclan distintos tipos de textos, letras,
imágenes, etc.
?
?
Ejemplo con Word
6
Editores de texto
Manipulan texto sin formato
? Útiles para generar documentos básicos
o programas
?
?
Ejemplo con Notepad
Hojas de cálculo
Permiten hacer de forma cómoda
muchos cálculos matemáticos
? Los datos están organizados en una
gran matriz
?
?
Ejemplo con Excell
Bases de datos
Permiten manipular mucha información
interrelacionada
? Varios tipos:
?
?
?
?
?
?
Jerárquica
En red
Relacional
De objetos
Ejemplo con Access
7
Tratamiento gráfico
?
?
Permiten generar y tratar imágenes en
formato Raster.
Ejemplo con Paint
Diseño Asistido por Ordenador
Permiten realizar, modificar, almacenar
e imprimir planos, esquemas, dibujos
lineales, etc.
? CAD, CAM, CAE, CIM, etc.
?
8
Descargar