Sie sind auf Seite 1von 14

Ricardo Ferrs Castell

Grau en matemtiques

TEMA 1: CONCEPTO DE COMPUTADOR

1.

CONCEPTO DE COMPUTADOR .............................................................................................................................3


INTRODUCCIN .....................................................................................................................................................................3
ANTECEDENTES ....................................................................................................................................................................4
ARQUITECTURA DE VON NEUMANN .....................................................................................................................................4
Buses y seales de control ..............................................................................................................................................8
Parmetros bsicos de un ordenador .............................................................................................................................8
DEFINICIN DE ALGORITMO.............................................................................................................................................8
Proceso para resolucin de un problema con el ordenador...........................................................................................9
LENGUAJES DE PROGRAMACIN ...........................................................................................................................................9
Evolucin histrica .......................................................................................................................................................10
Escritura y traduccin de programas escritos en lenguajes de alto nivel ....................................................................11
Elementos bsicos de un lenguaje de alto nivel............................................................................................................11
Tipos de lenguajes de alto nivel ....................................................................................................................................12
TIPOS DE COMPUTADORES ..................................................................................................................................................13
SOPORTE LGICO ................................................................................................................................................................13
Software del sistema .....................................................................................................................................................13
Software de aplicacin..................................................................................................................................................14
EL SISTEMA OPERATIVO......................................................................................................................................................14
Ejemplos de sistemas operativos...................................................................................................................................15

Introduccin
Durante toda la historia, la humanidad ha buscado la manera de desarrollar mquinas que los liberen
de los trabajos difciles y tediosos.
Dentro de esta bsqueda se han desarrollado los computadores. Una computadora es una mquina de
proposito general, programable, para el procesado automtico de informacin.
Procesar informacin es extraer unos ciertos resultados o conclusiones a partir de unos ciertos datos de
entrada.

Para realizar un procesamiento de la informacin de entrada el ordenador y proponer unos resultados


de salida, necesariamente deber poder realizar las siguientes tareas:

Recibir datos del exterior como entradas de informacin para su procesamiento.

Mostrar al exterior los resultados del procesamiento realizado.

Procesamiento/Tratamiento de la informacin:
Almacenamiento de datos y programas.
Recuperacin de datos y tratamiento de los mismos a travs de los programas.
(Los programas son los procedimientos correctos para tratar adecuadamente la
informacin)

Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques

Ejemplo:
Resolucin de una ecuacin de segundo grado. 2 x 2 3 x + 1 = 0
Datos: 2 / -3 / 1
Procesamiento: x =

3 32 4 2 1 3 9 8 3 1
=
=
22
4
4

x1 = 1

1
x 2 = 2

Resultados:

Breve historia
Antecedentes
baco: Herramienta mecnica til para sumar, restar, multiplicar y dividir. El programa es la mente
humana.
Calculadoras mecnicas:
Blaise Pascal (1623-1662) desarroll en 1642 una mquina aritmtica con engranajes, ruedas y
ventanas que realizaba sumas y restas.
Gottfried Leibnitz (1646-1716) desarrolla en 1673 una mquina mecnica, llamada la rueda de
Leibnitz, que realizaba sumas, restas, multiplicaciones, divisiones y races cuadradas.
Tambin podemos considerar como antecedente de las actuales computadoras los telares mecnicos
desarrollados durante la revolucin industrial, que cambiaban los dibujos de las telas a partir de la
informacin extrada de tarjetas perforadas.
En 1833, Charles Babbage, desarrolla una mquina de propsito general (mquina analtica) que puede
ser considerada como la base de los computadores modernos. Tanto los programas como los datos se
guardaban en tarjetas perforadas, y los programas podan utilizar los datos de salida como nuevas
entradas.

Computadores electromecnicos:
Tras diferentes mquinas electromecnicas desarrolladas durante la dcada de los 30, a finales de los
30 se desarrolla el Harvard MARK I (la primera calculadora digital automtica, de propsito general, a
gran escala, electromecnica) concebida por Howard Aiken a finales de los 30 y construida por
Hamilton, Lake y Durfee de IBM. Esta mquina realizaba 1 operacin cada 3 segundos. Los
programas no se guardaban en la mquina sino que eran ledos e interpretados desde una cinta de
papel, mientras que los datos eran proporcionados en tarjetas perforadas.
Entre 1940 y 1944 un grupo de investigadores de Bletchley Park, entre Oxford y Cambridge,
incluyendo a Alan Turing desarrollaron una serie de mquinas que culminaron en el desarrollo y la
implementacin de Colossus en 1943. Estas mquinas fueron desarrolladas especialmente para la
interpretacin, codificacin y decodificacin de cdigos secretos.

Computadores electrnicos:
Primera generacin (1946-1958)
En 1946 se desarrolla el ENIAC (Electronic Numerical Integrator Analyzer and Computer).
Construido con vlvulas de vaco era mucho ms veloz que los ordenadores de su poca (unas 5000
operaciones por segundo). Tiene como caracterstica especial que los programas eran introducidos en
la mquina mediante el cambio de posicin de cables que cambiaban la forma en que se conectaban las
diferentes partes del ordenador. Este problema se soluciona en versiones posteriores de la mquina.

Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques

Para hacer la mquina ms impresionante a los ojos de los reporteros de la poca, un miembro del
equipo (posiblemente Eckert) puso unas esferas translucidas (medias pelotas de ping-pong) sobre las
luces. La oficina de patentes de Estados Unidos, ms tarde, reconoci esta como la primera
computadora.
Otros ordenadores de esta generacin fueron el UNIVAC (Universal Automatic Computer), el IBM
401, el MADAM (Manchester Automatic Digital Machine), el SEC (Simple Electronic Computer) o el
APEC (All-Purpose Electronic Computer).
Segunda generacin (1958-1964)
Aparecen los transistores como alternativa tecnolgica a las vlvulas de vaco. Estos elementos son
mucho ms pequeos y rpidos con lo que se gana espacio y velocidad.
El primer ordenador totalmente transistorizado fue el TRADIC (TRAnsistor DIgital Computero
TRansistorized Unirborne DIgital Computer), del Bell Laboratories. Tena 700 transistores y 10000
diodos de germanio. A lo largo de los dos aos de continuo uso solo se estropearon 17 de estos
dispositivos, un nmero muy inferior a las tasas de fallo de las mquinas basadas en vlvulas de vaco.
Realizaba 5 millones de operaciones por segundo (frente a las 5000 de la generacin anterior).
Otros ordenadores de esta generacin fueron el IBM TX-0, el PDP-1 o el MANIAC (Mathematical
Analyser Numerator Integrator and Computer) con la colaboracin de Von Nneuman para su diseo y
construccin.
Tercera generacin (1964-1981)
En 1958, Texas Instruments presenta los circuitos integrados, pequeas pastillas de semiconductores
que pueden incluir en un muy reducido espacio varios dispositivos electrnicos y sus interconexiones.
Mediante este avance, los ordenadores se hacen ms pequeos y rpidos y requieren menor cantidad de
electricidad para su funcionamiento.
El IBM 360 y el BURROUGHS B-3500 son ejemplos de ordenadores de esta generacin.
Cuarta generacin (1981-1990)
El nivel de integracin de elementos en los circuitos integrados aumenta entre 100 y 1000 veces,
pasando a los circuitos integrados VLSI (Very Large Scale Integration). Este avance reduce aun ms el
espacio y consumo de los ordenadores, as como los precios. Con estas caractersticas se vuelven ms
populares y asequibles para la sociedad.
Aparecen ordenadores como el Sinclair ZX81/ZX Spectrum, el Commodore 64, el MITS Altair 680 o
el Apple IIe, aunque el que se volvi ms popular e importante fue el IBM PC, designado como el
5150, con arquitectura abierta, que permitia que otros fabricantes pudieran producir y vender
componentes perifricos y software compatible sin la compra de licencias.
Como consecuencia, y en contra de la previsin de IBM, otros fabricantes copiaron la mquina
original y rpidamente se produjeron ordenadores 'clnicos'. Esto llev a poner esta tecnologa como
estndar 'de facto' abaratando como consecuencia los productos y hacindolos ms accesibles por el
pblico en general.
Quinta generacin (1982-1992)
la FGCS (de Fifth Generation Computer Systems) o quinta generacin fue una iniciativa surgida en
Japn y seguida por Estados Unidos para construir una nueva generacin de ordenadores basados en
inteligencia artificial y la programacin paralela especializada.
Tras diez aos de investigacin e inversiones se desestim la iniciativa debido a que los avances en
velocidad y paralelizacin en ordenadores de propsito general superaban los avances conseguidos
siguiendo la linea de la inteligencia artificial.
Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques

Mas informacin
Podis encontrar ms informacin en los siguientes enlaces:
http://www.hitmill.com/computers/computerhx1.html
http://www.computerhistory.org/timeline/
http://goldenink.com/computersandnetworks.shtml

Arquitectura de Von Neumann


En 1945, el matemtico Jonh (Janos) von Neumann presenta los principios generales que debe seguir
una mquina de propsito general.
La mquina debe ser controlada por un conjunto de instrucciones con un pequeo nmero de
elementos centrales de proceso.
Tanto la informacin (datos) como el programa (mtodo de procesado de la informacin) deben
almacenarse en el interior del computador en formato binario (con un alfabeto compuesto
exclusivamente de ceros y unos).
Las mquinas que sigan la arquitectura propuesta por Von Neumann sern mquinas ideales que
seguira el siguiente esquema:

Las unidades funcionales definidas en la arquitectura de Von Neumann son:


Unidad de Entrada (Input (I)):
Unidad de Salida (Output (O)):
Memoria:
Unidad central de procesos (U.C.P.) (Central Process Unit (C.P.U.)):
Unidad de control (U.C.) (Control Unit):
Unidad lgico-aritmtica (U.L.A.) (Aritmetic and Logic Unit (A.L.U.)):
Unidad de Entrada (Input (I)):
Dispositivos por donde se introducen los datos e instrucciones.
Teclado, ratn, lector de barras,...
Unidad de Salida (Output (O)):
Dispositivos por donde se obtienen los resultados.
Monitor, impresora, paneles de informacin de trfico,...
Unidad central de procesos (U.C.P.) (Central Process Unit (C.P.U.)):
Unidad de control (U.C.) (Control Unit):
Es la encargada de administrar y coordinar los recursos y actividades del ordenador.
Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques
Interpretar el cdigo y generar las seales de control que lo ejecutan.
Controlar la secuencia en que se ejecutan las operaciones.
Controlar el acceso a memoria.
Enviar y recibir seales de control relacionadas con las operaciones que se ejecutan
en la A.L.U.

Regular la E/S (Entrada/Salida.)


Unidad lgico-aritmtica (U.L.A.) (Aritmetic and Logic Unit (A.L.U.)):
Unidad que contiene los registros bsicos para realizar las operaciones aritmticas y lgicas.
Memoria:
Encargada de almacenar de forma eficiente tanto los datos como los programas.
Memoria principal (RAM/ROM)
Memoria secundaria (discos/cintas/CDRom)
Informacin almacenada en bytes (8 bits)
1 Kilobyte (1 Kb) = 210bytes = 1.024 bytes 1.000 bytes
1 Megabyte (1 Mb) = 220bytes = 11048.576 bytes 11000.000 bytes
1 Gigabyte (1 Gb) = 230bytes = 1.0731741.824 bytes 1.0001000.000 bytes
1 Terabyte (1 Tb) = 240bytes 12000.0001000.000 bytes
En relacin de tamaos y rapidez de memorias contenidas en los ordenadores actuales tendramos:
Registros: Pequeas memorias que estn en la A.L.U. y sobre las que se realizan las
operaciones directamente.
Cache: Memoria intermedia contenida en la C.P.U. de manera que no hay que atravesar
los buses para acceder a la informacin contenida en la cach.
Memoria principal (RAM): Regin de memoria a la que la C.P.U. puede acceder
normalmente.
Memoria secundaria (discos): Memoria adicional en donde se puede guardar informacin
de forma permanente, aunque para poder trabajar con esa informacin, primero la C.P.U.
deber pasarla a la memoria principal.

Tipo

Tamao

Rapidez

Registro

10-60 Bytes

Cach

256 Kb-2 Mb (3 Mb)

R.A.M.

256 Mb-2 Gb (24 Gb)

Disco duro

80-300 Gb (2 Tb)

Una de las caractersticas de la mquina de Von Neumann es que tanto los datos como las
instrucciones se deben guardar dentro de la mquina (en la memoria), esto es en forma de sucesin de
unos y ceros que deben ser interpretados de una forma determinada.
Un programa es una sucesin de rdenes que la C.P.U. va leyendo de la memoria y ejecutando de
forma consecutiva.
El proceso bsico de ejecucin de un programa en la mquina de Von Neumann es el siguiente:
a.- Se lleva una instruccin desde la memoria a la U.C. (y se incrementa el contador del
programa)
b.- La unidad de control interpreta la instruccin y la ejecuta
Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques

i.- Buscar informacin de la memoria (si hace falta) y llevarla a los registros de la A.L.U.
ii.- Ejecutar la instruccin (sumas, restar, mirar entrada, escribir en salida,...)
iii.- Poner la informacin resultante en la memoria (si es necesario)
c.- Mientras no se llegue al final del programa volver al paso (a)
Los ordenadores actuales siguen principalmente las caractersticas enunciadas de la arquitectura de
Von Neumann, pero ampliada con ms dispositivos.
Buses y seales de control
La manera en que se intercambian informacin las distintas unidades funcionales de la mquina de
Von Neumann es mediante buses. Existen bsicamente dos buses: el bus de datos, por donde circula la
informacin entre la entrada, la salida, la memoria y el microprocesador (U.C.P.), y el bus de
direcciones (mediante el cual se fija la direccin de memoria donde se est trabajando
(guardando/leyendo informacin))
La manera de controlar el acceso a este bus, y dar el control a las diferentes unidades funcionales de la
mquina de Von Neumann es mediante las seales de control, generadas por la unidad de control.
Parmetros bsicos de un ordenador

Tiempo de ciclo o frecuencia de reloj: Determina en gran medida la velocidad con que funciona
un ordenador. Es la cantidad de instrucciones bsicas que se ejecutan por segundo en el ordenador.
Se mide en megahercios (MHz)

Longitud de la palabra: es la cantidad de bits que se mueven simultneamente por el bus de datos
del ordenador y determina en parte la precisin de los clculos del ordenador.

Tamao del bus de datos y del bus de direcciones: El tamao del bus de datos determina la
cantidad de bits que se mueven simultneamente entre las diferentes partes del ordenador, de
manera que ayudar a que la velocidad del ordenador sea mayor. El tamao del bus de direcciones
nos limitar la cantidad de direcciones de memoria a las que podemos referirnos, limitando el
tamao de la memoria con el que podemos trabajar (con un bus de direcciones de una sola lnea
slo podramos acceder a dos casillas distintas de la memoria. Con un bus de dos lneas podramos
acceder hasta a 4 casillas distintas. Con un bus de n lneas podramos acceder a 2n casillas
distintas.)

Definicin de ALGORITMO
Vista la manera en que procesan la informacin las mquinas basadas en la arquitectura de Von
Neumann, es correcto pensar que para realizar los programas que procesen la informacin habr que
plantearselos en forma de algoritmos.
Un algoritmo es un conjunto finito de pasos y acciones que especifican de forma clara y concisa (sin
ambigedades) la secuencia de operaciones a realizar para procesar adecuadamente unos datos con
un determinado objetivo.
Ejemplos:
1. Receta de cocina: Secuencia de pasos para realizar un determinado plato.
2. Algoritmo para obtener el resultado de dividir un nmero por otro.
3. Algoritmo del mono y el pltano.
Llamaremos programa a la plasmacin de un algoritmo de forma que pueda ser entendido por un
ordenador.
Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques

En principio el ordenador slo es capaz de entender lenguaje binario (lenguaje que slo contiene 2
posibles caracteres, habitualmente 0 y 1), pero para hacer ms fcil la escritura de programas existen
unos lenguajes de programacin a los que se asocian traductores.
Un lenguaje de programacin es un conjunto de palabras con una cierta sintaxis y una semntica
asociadas.
Las caractersticas son:

Un vocabulario limitado (palabras reservadas).

Sintaxis rgida y sin excepciones y con pocas variaciones.

Semntica estricta y sin ambigedades.


Proceso para resolucin de un problema con el ordenador.
1. Planteamiento del problema y propuesta de un mtodo de resolucin en lenguaje natural
(castellano/valenciano normal)
2. Plasmacin del mtodo de resolucin en un algoritmo.
3. Traduccin del algoritmo a lenguaje de programacin (generacin del programa).
(4. Compilacin del programa a lenguaje binario (traduccin automtica))

En el tema siguiente veremos con ms detalle la forma en que se desarrollan los problemas hasta
obtener algoritmos que los solucionen.

Lenguajes de programacin
Un programa es una sucesin de pasos que debe seguir el ordenador para llevar a trmino un trabajo o
proceso de informacin.
Un usuario que desee que un ordenador realice un cierto procesado de informacin deber escribir un
programa en un lenguaje que pueda entender el ordenador.
El nico lenguaje que realmente entienden los ordenadores es el lenguaje binario (que es el nico que
puede estar guardado en la memoria del ordenador.). El lenguaje binario tienen como caracterstica que
slo contiene dos smbolos (habitualmente el cero y el uno.)
Como es difcil escribir programas en ese lenguaje binario se han desarrollado otro tipo de lenguajes
que deben ser fcilmente traducibles al lenguaje binario:

Lenguajes de bajo nivel (ensamblador): Lenguajes en los que las instrucciones son directamente
traducibles, una por una, a lenguaje binario.

Lenguajes de alto nivel: Lenguajes ms elaborados, fciles de leer y entender por un humano, y
que deben de ser fcilmente traducibles a lenguaje mquina.

Para que un lenguaje sea fcilmente traducible a lenguaje mquina debe cumplir una serie de
caractersticas, que ya comentamos al comienzo del tema:

Un vocabulario limitado (palabras reservadas).

Sintaxis rgida y sin excepciones y con pocas variaciones.

Semntica estricta y sin ambigedades.

Tema 1: Concepto de computador

Ricardo Ferrs Castell

Grau en matemtiques

Evolucin histrica
El primer lenguaje de alto nivel
desarrollado fue el FORTRAN
(FORmula TRANslation) en
1957. Fue desarrollado por John
Backus en IBM. Es un lenguaje
de alto nivel especialmente
pensado en la resolucin de
problemas matemticos. Pero
tena como gran inconveniente la
dificultad de trabajo con ficheros
y la falta de recursividad
(posibilidad de definir un cierto
proceso refirindose a s
mismo.) Estos inconvenientes se
han ido mejorando a lo largo de
las
diferentes
versiones
(FORTRAN 66, FORTRAN 70,
FORTRAN 90 y FORTRAN
95).
Poco despus del FORTRAN
apareci el BASIC (Begginers
All-purpose Symbolic Instruction
Code), desarrollado por John
Kemeny y Thomas Kuntz
especialmente para ensear a
programar a usuarios poco
especializados.
El uso de grandes ordenadores a
aplicaciones empresariales llev
a
desarrollar
lenguajes
especficos como el COBOL (en
1959.)
Los
lenguajes
empresariales se caracterizan por
desarrollar fcilmente informes
elaborados, maneras precisas de describir y guardar nmeros decimales y caracteres y la habilidad para
especificar operaciones decimales.
En los 70, con la llamada crisis del software, aparecen los conceptos de programacin estructurada, y
Niklaus Wirth plasma estos conceptos en el lenguaje PASCAL (1971) desarrollado especialmente para
ensear programacin estructurada.
Tambin a principios de los 70 Kernighan y Ritchie desarrollan el lenguaje de programacin C (1972),
que admite los conceptos de programacin estructurada, tal como Pascal, pero que permite una mayor
libertad a la hora de realizar ciertas tareas que no pueden llegar a hacerse en la mayora de los
lenguajes de alto nivel. De hecho el C es un lenguaje de alto nivel, que es capaz de bajar de nivel y con
el que es posible programar incluso sistemas operativos, que ya comentaremos ms adelante.
A principios de los 80, se empiezan a desarrollar nuevos conceptos de programacin que terminaran
en la programacin orientada a objetos y lenguajes como C++, Eiffel o Smaltalk.

Tema 1: Concepto de computador

10

Ricardo Ferrs Castell

Grau en matemtiques

Escritura y traduccin de programas escritos en lenguajes de alto nivel


El proceso entre la escritura de un programa por parte del usuario y que el programa pueda ser
ejecutado por el ordenador es el siguiente:

El primer paso es escribir el programa en un editor de textos. Una vez escrito tendremos el llamado
programa fuente (source) escrito en un lenguaje de alto nivel.
A continuacin, mediante el uso de un compilador pasaremos el programa fuente a un lenguaje
intermedio y obtenemos el programa objeto. En este paso se realiza el anlisis lxico (que slo se
hayan escrito smbolos y palabras correspondientes al lenguaje de alto nivel que estemos utilizando) y
sintctico (que los diferentes smbolos y palabras escritos estn en la sucesin correcta) del programa
fuente.
El programa fuente puede estar escrito en varios mdulos. La compilacin traduce cada uno de los
mdulos a un programa objeto. En los diferentes objetos puede haber referencias a elementos que estn
en otros objetos.
El ltimo paso de la traduccin es el linkado (del ingls link, enlazar) o montado de los diferentes
objetos en un solo programa ya escrito en lenguaje binario y que se suele denominar programa
ejecutable.
En general, todas estas fases suelen hacerse con un solo programa denominado 'Entorno de
programacin' que proporciona todos las herramientas necesarias (editor, compilador y linker) en un
solo programa.
Finalmente, hay que cargar el programa ejecutable en memoria y ejecutarlo para obtener los resultados
esperados. De esta fase se encarga el Sistema Operativo.
Aunque en principio los lenguajes de programacin son nicos, cada compilador especfico de cada
mquina puede incorporar ciertas caractersticas que no comparte con otros compiladores del mismo
lenguaje de alto nivel.
Para evitar en lo posible la dispersin de un mismo lenguaje la American National Standars Institute
(ANSI) establecen unos estndares para cada lenguaje de programacin. As podemos hablar de C en
general, que puede contener ciertas caractersticas especiales o podemos hablar del ANSI C, que
cumple estrictamente con los estndares establecidos permitiendo una mayor portabilidad de los
programas escritos (mayor facilidad para llevarlos de un ordenador a otro sin tener que modificarlos).
Elementos bsicos de un lenguaje de alto nivel
Palabras reservadas
Constantes y variables
Tema 1: Concepto de computador

11

Ricardo Ferrs Castell

Grau en matemtiques

Expresiones...
...aritmticas: + / - / * / ... devuelven valores aritmticos
...relacionales: > / < / = / ... devuelven valores booleanos (TRUE/FALSE)
...lgicas: AND / OR / ... devuelven valores booleanos (TRUE/FALSE)
Etiquetas
Comentarios
Asignaciones ( )
Entrada
Salida
Tipos de lenguajes de alto nivel
1 clasificacin: Por la forma en que se traducen.

Lenguajes compilados C, Pascal, C++,...


Los programas, una vez escritos de forma completa se traducen completamente (se compilan
mediante la utilizacin de un compilador) y se tienen preparados para poder ser ejecutados, de
manera que la ejecucin, una vez el programa est traducido es mucho ms rpida.

Lenguajes interpretados BASIC


Los programas se analizan a medida que van siendo escritos, y la ejecucin se realiza lnea a
lnea, de manera que es ms fcil escribir los programas y encontrar errores en ellos, aunque la
ejecucin es mucho ms lenta y siempre tenemos que tener disponible el traductor (intrprete).

2 clasificacin: Objetivo principal de los programas escritos en el lenguaje.

Lenguajes de propsito general C, BASIC, Delphi, Java...

Lenguajes para la enseanza Logo, Pascal...

Lenguajes para clculo cientfico Fortran, Matlab, Mathematica, Maple...

Lenguajes para gestin Cobol, Modula...

Lenguajes para la gestin de bases de datos System Query Languages (SQL) Informix...

Lenguajes de inteligencia artificial Prolog, Lisp...

3 clasificacin: Por la escritura y concepcin de los programas (paradigmas de programacin).

Lenguajes procedurales o procedimentales (Programa = procedimientos + algoritmos)


C, Pascal, Modula...

Lenguajes
Prolog

Lenguajes orientados a objetos (Programa = Objetos + mtodos + mensajes)


Eiffel, C++, Java...

declarativos

(Programa

definicin

de

elementos

relaciones)

4 clasificacin: En funcin de la gestin de la memoria.

Lenguajes de gestin esttica de memoria (se calcula la memoria cuando se realiza la


traduccin) Fortran...

Lenguajes de gestin dinmica de memoria (se reserva la memoria en ejecucin, a medida que
van apareciendo variables) Basic, Prolog...

Memoria en pilas (se guarda la informacin en pilas, apilando y desapilando informacin)


C, Pascal...

Tema 1: Concepto de computador

12

Ricardo Ferrs Castell

Grau en matemtiques

Tipos de computadores
Supercomputadores (supercomputacin): Existen varios procesadores haciendo clculos
(computando) al mismo tiempo (en paralelo) y accediendo a grandes cantidades de informacin
guardada en la memoria o en accesible en dispositivos de entrada.
Control de rbitas de satlites y naves espaciales.
Aceleradores de partculas.
Control y prediccin de procesos biolgicos y qumicos.
Predicciones termodinmicas (predicciones de tiempo atmosfrico.)
Macrocomputadores: Ordenadores compuestos por distintos procesadores que se encargan de la
gestin y el control de diferentes dispositivos (sera un ordenador distribuido.)
Control de robots en fbricas.
Bancos.
Lneas areas.
Minicomputadores: Son ordenadores con varios procesadores.
Control de procesos en laboratorios.
Estaciones de trabajo (WorkStations): Microprocesadores muy potentes y optimizados para la
realizacin de tareas concretas y diferentes procesos simultneos (pensados para atender a varios
usuarios simultneamente.)
Diseo asistido por ordenador (C.A.D.)
Microcomputadores: Pensados para el trabajo personal (Personal Computer (PC))
Apple
IBM/PC
Calculadoras de bolsillo.

Soporte lgico
Ordenador

Parte fsica (Hardware)

Parte lgica (Software)

El soporte lgico de un ordenador es el conjunto de programas que permiten a un usuario realizar


ciertas tareas en l.
Dentro del software podemos distinguir entre:

Software del sistema:


Es el encargado de administrar (gestin + mantenimiento) los recursos de la mquina.

Software de aplicacin:
Lo forman todos los programas que puede utilizar un usuario para realizar ciertas tareas especficas
con el ordenador (edicin de textos, contabilidad, diseo,...)
Software del sistema

Programa de arranque: Es el conjunto de tareas que se realizan en el ordenador en el momento de


encenderlo.
1. Chequeo y comprobacin de dispositivos hardware.

Tema 1: Concepto de computador

13

Ricardo Ferrs Castell

Grau en matemtiques

2. Lectura de parmetros de la BIOS y configuracin de algunos dispositivos (memoria,


discos...)
3. Bsqueda del sistema operativo y carga del mismo en memoria.

Sistema operativo (S.O.): Es un conjunto de programas que relacionan al usuario con el hardware
especfico del ordenador, de manera que para el usuario no importa el tipo o marca del hardware,
slo el S.O. que este funcionando en el ordenador.
Adems se encarga de gestionar eficientemente los recursos de la mquina.

Programas de ayuda al sistema operativo.


Programas de diagnstico: scandisk, ddn, speedisk...
Programas de mantenimiento del sistema: Aadir o modificar elementos hardware en el
sistema.

Utilidades generales.
Traductores (compiladores e intrpretes.)
Depuradores (debuggers.)
Gestores de ficheros.
Software de aplicacin.
Programas de edicin de textos.
Gestin de bases de datos (gestin de bibliotecas, de matriculados en la universidad, etc.)
Programas de administracin y contabilidad.
Herramientas de diseo y edicin grfica (CAD-CAM)

El sistema operativo
Son funciones del sistema operativo:
Hacer de interfaz entre el usuario y el hardware de la mquina.
Administrar y controlar los dispositivos hardware.
Mantener el sistema de archivos.
Apoyar la ejecucin de otros programas.
Para realizar estas funciones de forma correcta, debemos exigir a un sistema operativo las siguientes
caractersticas:
1. Eficiencia (rapidez en las tareas.)
2. Fiabilidad (sin fallos ni errores.)
3. Facilidad de mantenimiento.
4. Tamao reducido (aunque ltimamente esta caracterstica est siendo sustituida por facilidad
de manejo por parte de un usuario inexperto.)
Las principales partes del sistema operativo son: El Kernel o ncleo del sistema y el interfaz.

Ncleo o Kernel: Se encarga de las tareas ms bsicas y prximas al hardware.


Asignacin de trabajos al microprocesador (P.)
Swap o intercambio de tareas en el P y de datos y programas en memoria.
Comunicacin entre procesos.

Tema 1: Concepto de computador

14

Ricardo Ferrs Castell

Grau en matemtiques

Administracin del hardware: Gestin de la memoria, control de entrada y salida (drivers),


administracin de archivos, apoyo a la ejecucin de programas,...

Interfaz: Es el elemento a travs del que el usuario se comunica con el hardware, y en general est
formado por unas instrucciones u rdenes (muchas veces mal llamadas comandos del ingls
command) que permiten al usuario realizar ciertas tareas especficas.
Ejemplos de sistemas operativos

MS-DOS:
Sistema operativo de las mquinas con P Intel (8088, 8086, 80286, 386, 486, Pentium,...)
Se centra en el control de los aspectos del PC enfatizando en la gestin de sistema de ficheros y
la transferencia de informacin hacia los perifricos.
Funciona mediante interrupciones.
Para mantener la compatibilidad con versiones anteriores mantiene ciertas caractersticas que
impiden aprovechar los ltimos avances de los PCs.
Monousuario y monoproceso.

UNIX/Linux:
Sistema operativo de propsito general, desarrollado para cualquier plataforma (en principio
cualquier P, intentando sacar el mximo partido del hardware aunque no se mantenga la
compatibilidad entre versiones.)
Esquema bsico: Ncleo pequeo + Extensiones propias.
Multiusuario y multiproceso.
Cualquier sistema de entrada/salida (I/O) se trata exactamente como si fuese un archivo.
Al ser multiusuario aade sistemas de proteccin y seguridad de informacin y de procesos.

Windows 95/NT/XP/w7 | MacOS


Sistema operativo desarrollado para que el usuario tenga un fcil acceso a los recursos del
sistema (sistema de ventanas, iconos y puntero de ratn.)
No es necesario ningn conocimiento del funcionamiento de la mquina porque se pretende
que todo sea muy visual, muy intuitivo y automtico.

Tema 1: Concepto de computador

15

Ricardo Ferrs Castell

Tema 1: Concepto de computador

Grau en matemtiques

16