fundamentos de software · • comunicación con los periféricos (e/s) • gestión de procesos:...

Post on 14-Mar-2020

10 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Fundamentos de software

Informática Aplicada

Grado en GAP

Fac. de Admón. y Dir. de Empresas

Univ. Politécnica de Valencia

210601. Informática Aplicada

Objetivos

• Describir las 3 categorías principales de software y su relación

• Explicar la correspondencia entre algoritmos y programas

• Discutir los factores que hacen que una aplicación sea útil

• Describir el papel del sistema operativo en un ordenador actual

• Seguir la evolución de los interfaces entre las personas y los ordenadores

310601. Informática Aplicada

¿Cómo trabaja el software?

• Un programa es una secuencia de instrucciones elementales sencillas– Los programadores comienzan diseñando un

algoritmo: una “receta” en lenguaje natural

– Problema: el lenguaje natural es ambiguo

• Los algoritmos deben convertirse en instrucciones inteligibles para la CPU– Código fuente: lenguaje de programación

– Código binario: secuencias de 0s y 1s

410601. Informática Aplicada

¿Cómo trabaja el software?

¿Qué ocurre cuando alguien quiere escribir un programa?

510601. Informática Aplicada

¿Cómo trabaja el software?

Piensa

Algoritmo

Problema: el lenguaje natural

es ambiguo

610601. Informática Aplicada

¿Cómo trabaja el software?

Piensa

Algoritmo

… pero un ordenador no lo entiende

Escribe

Programa(cód. fuente)

710601. Informática Aplicada

¿Cómo trabaja el software?

Piensa

AlgoritmoEscribe

Programa(cód. fuente)

Genera

Ejecutable(cód. binario)

810601. Informática Aplicada

¿Cómo trabaja el software?

Pide un número al usuarioMultiplícalo por 2Muestra en pantalla el resultado

algoritmo

910601. Informática Aplicada

¿Cómo trabaja el software?

#include <stdio.h>

int main(){ int num, doble; printf( "Introduce un número: " ); scanf( "%d", &num ); doble = num * 2; printf( "Su doble es: %d\n", doble );}

código fuente

1010601. Informática Aplicada

010110011101110000001000001111010001111011111000101111100010001001001111001001101011100001111001001101011000110111001001100111100010110011100010001011011011011010111010010100011111000011001000111000100011101111000101010010100100110011111110011100111000111110111110110100011100001110000100101111010011110110010011100001101110010110100110110001110001011111001100010001111111010001001010001001111101010011001000100010000100111110001100101101011110000001101111110111011101100011010100011010010111000100010000011101111011011011110000100010001011010110110101101100001111001001011110001101010110100000010001101111010101111100010001000001110011110110000100001101111110101111100000101011101111011111101001101001100101011011000111010100100100001000011011110000100111110111111111000100011000110000011011000011010111000100

código binario

¿Cómo trabaja el software?

1110601. Informática Aplicada

Tipos de programas

• Software de desarrollo (compiladores y otros)

– Permiten a los programadores escribir nuevos programas

• Programas de aplicación– Herramientas de productividad que permiten a

los usuarios resolver sus problemas

• Software del sistema– Coordina las operaciones del hardware

– Más cercano al hardware

1210601. Informática Aplicada

Programas de aplicación

• ¿por qué utilizamos programas?– Son metáforas visuales de herramientas del

mundo real

– Expanden las capacidades humanas

1310601. Informática Aplicada

Programas de aplicación

• Tipos de programas– Software vertical o a medida

– Suites

– Paquetes integrados

1410601. Informática Aplicada

Software vertical o a medida

• Aplicaciones específicas de un sector: – Ej.: software de facturación, sw de catalogación

para bibliotecas, administración de restaurantes…

– Elevado coste por tener un mercado más reducido

– Algunas veces incluso se desarrollan para un único cliente

1510601. Informática Aplicada

Suites

• Aplicaciones de uso común– Ej.: proc. de textos, hoja de cálculo, bases de datos.

– Uso extendido en ámbitos muy diversos: hogar, oficinas, administración, educación,…

• Estas aplicaciones se reúnen en un único paquete denominado “suite”– Más económico que adquirir los programas por separado

– Ej.: MS Office y OpenOffice (ofimática), Adobe Creative Suite (diseño gráfico)

1610601. Informática Aplicada

Paquetes integrados

• Incorporan varias aplicaciones en un mismo programa– Comparten el mismo entorno facilita el

aprendizaje

– Más limitado que las aplicaciones equivalentes aisladas

– Menor coste que las suites

– Ej.: MS Works o AppleWorks

1710601. Informática Aplicada

Software del sistema

• Gestiona la comunicación entre el hardware y el software

• Permite abstraerse de los detalles del hardware (máquina virtual)

• Incluye los siguientes tipos de programas– Controladores de dispositivos o “drivers”

– Sistema operativo

– Programas de utilidad

1810601. Informática Aplicada

Controladores de dispositivos (drivers)

• Gestionan la comunicación entre el ordenador y los dispositivos de E/S

• Facilitan la ampliación de los ordenadores (arquitectura abierta)

• Actúan como intermediarios cuando el usuario requiere el acceso al dispositivo (lector CD, impresora, ratón, módem...)

• Cómo conseguirlos– Algunos están incluidos en el propio S.O.– Otros se proporcionan con el dispositivo (en un CD de

instalación)– A veces son propiedad de otras empresas y es necesario

adquirirlos para poder usarlos.

1910601. Informática Aplicada

Sistema operativo

• Intermediario entre el usuario y los programas de aplicación y el hardware– Proporciona una capa de aislamiento

– Determina la compatibilidad de los programas

• Tareas principales– Facilitar el manejo del ordenador

– Utilizar el hardware de forma eficiente

• Se ejecuta continuamente desde que arranca el ordenador

2010601. Informática Aplicada

Funciones del sistema operativo

• Comunicación con los periféricos (E/S)• Gestión de procesos:

– Coordina trabajos concurrentes (multitarea)– Aprovecha mejor la CPU

• Administración de la memoria:– Protección de la memoria de cada proceso– Mecanismo de memoria virtual

• Monitorización de recursos para contabilidad y seguridad

• Gestión de archivos• Coordinación de las comunicaciones en red

2110601. Informática Aplicada

Programas de utilidad

• Herramientas de mantenimiento del sistema

• Se ejecutan como programas separados del S.O. (se cargan en la memoria cuando se necesitan)

• Los encontramos– Incorporados al S.O. (desfragmentador de disco)

– Suministrados por otros fabricante (cortafuegos)

2210601. Informática Aplicada

Consideraciones adicionales

• Documentación– Instrucciones para instalar la aplicación

– Tutoriales

– Manuales de referencia

– Ficheros de ayuda

– Ayuda en línea (a través de la web)

– Servicios de soporte, FAQ, etc.

2310601. Informática Aplicada

Consideraciones adicionales

• Actualización– Periódicamente, las empresas comercializan

nuevas versiones de sus aplicaciones

– Motivos: mejoras, corrección de errores, adaptación a otro software (S.O.)

– Número para indicar la versión. Decimales para cambios menores

– En ocasiones, el usuario tiene derecho a actualizaciones gratuitas durante un periodo de tiempo

2410601. Informática Aplicada

Consideraciones adicionales

• Compatibilidad– Hardware:

• restricciones sobre el tipo de ordenador y recursos necesarios

• Ej.: cpu, memoria, espacio libre en disco, etc.– Software:

• Principalmente, el S.O. para el que está diseñado: Windows, Mac, Linux…

• Además del S.O., es importante su versión: Windows 95, 98, NT, Me, 2000, XP…

2510601. Informática Aplicada

Consideraciones adicionales

• Licencias– Al adquirir el software, lo que realmente se

compra es una licencia para utilizarlo

– Licencias individuales y corporativas

– Limitación principal en cuanto a la instalación en varios ordenadores y a la copia de los discos

– EULA: End User License Agreement

• Condiciones de la licencia

• Términos de la garantía

2610601. Informática Aplicada

Consideraciones adicionales

• Distribución: formas de comercializar las aplicaciones– propietario: cerrado por su dueño y de pago

– shareware: evaluación en tiempo limitado

– de demostración: limitaciones en la funcionalidad

– adware: financiado mediante publicidad (banners)

– freeware: sw gratuito, pero cerrado

– libre: sw que de puede usar, distribuir, copiar y modificar libremente

– semilibre: sw libre para uso no lucrativo

– de dominio público: renuncia a los derechos de autor

2710601. Informática Aplicada

Interfaz de usuario

• Sistemas operativos de sobremesa– Interfaz de caracteres: línea de comandos (MS-

DOS)– Interfaz gráfica (GUI)

• controla cada punto de la pantalla de forma individual

• Mac OS de Apple (1984)– Metáforas: escritorio, carpetas, documentos…– Elementos activos: iconos, botones, ventanas,

menús, barras de desplazamiento…

2810601. Informática Aplicada

MS-DOS

2910601. Informática Aplicada

Windows 3.11

3010601. Informática Aplicada

Windows 95

3110601. Informática Aplicada

Windows XP

3210601. Informática Aplicada

Windows Vista

3310601. Informática Aplicada

Windows 7

3410601. Informática Aplicada

Windows 8

3510601. Informática Aplicada

Linux

3610601. Informática Aplicada

Mac OS X

3710601. Informática Aplicada

Interfaz de usuario

• Sistemas operativos multiusuario– UNIX

• S.O. preferido para mainframes y estaciones de trabajo

• Versiones: Solaris (Sun) HP-UX (HP), AIX (IBM), IRIX (Silicon Graphics)

– Linux: • Versión de UNIX para ordenadores personales• Numerosas distribuciones para PC• MacOS X está construido sobre Linux (BSD)

– Son S.O. multiusuario: permiten varios usuarios trabajando simultáneamente sobre la misma CPU

3810601. Informática Aplicada

Interfaz de usuario

• Administración de ficheros– Carpetas específicas para los documentos de

cada usuario

– Herramientas de búsqueda por su nombre o su contenido (Google y Copernic Desktop Search)

– Herramientas específicas para archivos especiales

• iTunes, iMovie e iPhoto (Mac)

• Herramientas similares en la próxima versión de MS Windows (Longhorn)

3910601. Informática Aplicada

Interfaz de usuario

• Plataformas hw+sw– Windows XP (Pentium/Athlon): Home, Professional, Tablet

PC– Windows Server 2003 (Xeon/Opteron)– Windows CE (Pocket PC/telefonía móvil)– Palm OS (Palm, Sony,telefonía móvil)– MacOS X Panther (PowerPC)– Linux (Intel/AMD/PowerPC/Alpha)

• Alternativas para la compatibilidad de aplicaciones– Emulación– Plataformas cruzadas– Máquinas virtuales

top related