1 1. Organización de un ordenador 2. Hardware de un
ordenador 3. Software (programas) 4. Lenguajes de
programación 5. Fases en la resolución de problemas
con un programa 6. Breve historia de los lenguajes de
programación de alto nivel
2 1. Organización de un ordenador Los primeros son de la
década de los 40.
3 Los primeros PC aparecen en los 80. Los ordenadores transforman
datos para obtener a la salida una información. Los datos
de entrada y de salida pueden estar en formatos muy diversos. Es
necesario hardware y software.
4 2. Hardware de un ordenador Los componentes más
importantes son:
5 2.1 El procesador (CPU) Ejecuta las instrucciones del programa.
Se encuentra integrado en un chip ? microprocesador Instrucciones
sencillas a muy alta velocidad (~µs) Consta de dos partes :
Unidad Aritmético Lógica (ALU) Unidad de Control
(UC) Ejemplo de un programa que suma dos números: leer (a)
leer (b) r=a+b Imprimir (r)
6 2.2 Memoria Se clasifica en: Memoria principal, interna,
central o memoria RAM Memoria de almacenamiento secundario,
externa o auxiliar
7 Memoria pincipal Se conoce como memoria RAM, aunque está
formada por dos tipos de memorias: Memoria RAM (Random Access
Memory o Memoria de Acceso Aleatorio). Memoria ROM (Read Only
Memory o Memoria de sólo lectura).
8 Memoria RAM de la memoria principal Es una memoria
volátil. Se puede leer y escribir en cualquier
dirección. La memoria RAM tiene dos partes: Memoria de
programa Memoria de datos Tipos: SDR SDRAM, DDR SDRAM, DDR 2
SDRAM, DDR 3 SDRAM Y RDRAM. Valores típicos son 1 GB, 2GB
o 4GB. Tiempo de acceso: del orden de ns.
9 Memoria ROM de la memoria principal No es volátil. Es
sólo de lectura; ya viene de fábrica grabada. Se
encuentra en un chip llamado BIOS. Es una pequeña parte de
la memoria principal. Almacena las instrucciones necesarias para
arrancar el ordenador.
10 La memoria caché es una memoria que sirve de
almacenamiento intermedio entre el procesador y la memoria
principal. La memoria caché es memoria SRAM; más
rápida pero también mucho más cara que la
memoria principal. Se utiliza para almacenar temporalmente la
información que se utiliza con más
frecuencia.
11 Memorias de almacenamiento secundario Almacenan datos o
programas de forma permanente. Para su uso deben pasar a la
memoria principal. Esta operación se realiza mediante
órdenes al sistema operativo. Es más lenta que la
memoria principal ya que está formada por componentes
electrónicos y mecánicos. Por ejemplo: discos
duros, DVD, disquetes …
12 2.3 Dispositivos de E/S Permiten la comunicación entre
el usuario y el ordenador Dispositivos de entrada: teclado,
ratón, lápiz óptico, joystick, lector de
códigos de barras, escáner,
micrófono… Dispositivos de salida: Pantalla,
impresora, trazador gráfico o plotter, reconocedores de
voz, altavoces… Dispositivos de entrada/salida: monitor
táctil, tarjeta de red, impresora
multifunción… Los dispositivos de E/S y los
dispositivos de almacenamiento secundario se llaman dispositivos
periféricos o simplemente periféricos.
13 /* MEMORIAS*/ Bit: 0 o 1, es la unidad elemental de memoria
(b). Byte: son 8 bits (B). Una dirección es un
número que nos indica una &. Una palabra es el
contenido de una dirección de memoria. Valores
típicos son 8, 16, 32 o 64 bits. Cuando escribimos en una
dirección de memoria se borra lo que había antes.
En la ejecución de un programa, en una misma
dirección de memoria, se pueden almacenar distintos
valores:
14 /* Programa que calcula an*/ leer(a) leer(n) r=1
mientras(n>0) {r=r*a n=n-1} imprimir(r)
15 El tamaño de una memoria se calcula multiplicando el
nº de palabras por el tamaño de las palabras. En las
memorias se utilizan las siguientes unidades: 1 K (Ka)= 210 1M
(Mega)= 220 1G (Giga)=230 1T (Tera) =240
16 2.4 Memorias de almacenamiento secundario La memoria RAM es
volátil y limitada. E tiempo de acceso a la
información es mayor que en la memoria principal. Tiene
mayor capacidad de almacenamiento que la memoria principal.
También se conocen como memorias auxiliares o externas.
Las más conocidas son: Cintas magnéticas Discos
magnéticos: discos duros y disquetes Discos
ópticos: CD y DVD Discos duros virtuales Discos
flash
17 Cintas magnéticas Son los primeros dispositivos de
almacenamiento secundario que se usaron. Se siguen utilizando
para hacer copias de seguridad o para bases de datos en grandes
ordenadores. Ventaja: gran capacidad de almacenamiento a bajo
coste. Desventaja: acceso secuencial Cuanto mayor es la
capacidad, mayor es la longitud y mayor el tiempo de
acceso.
18 Discos magnéticos Tipos: Discos duros Discos flexibles
o disquetes Ventaja: acceso aleatorio
19 Disquetes Material flexible Ventajas: transportabilidad,
precio y compatibilidad con otros ordenadores Desventajas: baja
capacidad (1.44MB) y baja fiabilidad Los primeros disquetes eran
de 8’’ (pulgadas) Luego aparecieron los de 5 1/4
(5.25’’) de 360KB a 1,2 MB Hoy en día son de
3,5’’ y 1.44MB Cada vez su uso es menor
20 Discos duros Aparecen en la década de los 80 con una
capacidad de 10MB. Están constituidos por material
rígido sobre el que se deposita una capa de material
magnetizable. Ventajas frente a los disquetes: capacidad de
almacenamiento y tiempos de acceso a los datos. Cada vez son
más pequeños y de mayor capacidad. Valores
típicos son 120GB, 500 GB, 1 TB… Tipos: Fijos:
dentro de una carcasa sellada y no se pueden extraer del
ordenador. Extraíbles: internos y externos.
21 Las partes de un disco duro son: La unidad es un conjunto de
componentes electrónicos y mecánicos que hacen
posible el almacenamiento y recuperación de los datos en
el disco. El disco es, en realidad, una pila de discos, llamados
platos, que almacenan información magnéticamente.
Cada uno de los platos tiene dos superficies magnéticas,
caras: la superior y la inferior. Estas superficies
magnéticas están formadas por millones de
pequeños elementos capaces de ser magnetizados positiva o
negativamente. De esta manera, se representan los dos posibles
valores que forman un bit de información (un cero o un
uno).
22
23 Cada cara tiene asignado uno de los cabezales de
lectura/escritura de la unidad. Los cabezales no pueden tocar la
superficie del discos; se sitúan a µm. El conjunto
de cabezales se puede desplazar linealmente desde el exterior
hasta el interior de la pila de platos mediante un brazo
mecánico que los transporta. Para que los cabezales tengan
acceso a la totalidad de los datos, es necesario que la pila de
discos gire. Este giro se realiza a velocidad constante y no cesa
mientras esté encendido el ordenador. En cambio, en los
discos flexibles sólo se produce el giro mientras se
está efectuando alguna operación de lectura o
escritura. El resto del tiempo, la disquetera permanece en
reposo. Con las unidades de CD-ROM ocurre algo similar, sin
embargo en este caso la velocidad de giro no es constante y
depende de la distancia al centro del dato que se esté
leyendo.
24 Operación de lectura en el disco duro: Desplazar los
cabezales de lectura/escritura hasta el lugar donde empiezan los
datos. Esperar a que el primer dato, que gira con los platos,
llegue al lugar donde están los cabezales. Leer el dato
con el cabezal correspondiente. La operación de escritura
es similar. En lugar de leer la información los cabezales
de lectura/escritura magnetizan positiva o negativamente.
25 Cada una de las caras se divide en anillos concéntricos
llamados pista. Un cilindro es la misma pista de todos los
discos. Además, cada pista se divide en sectores. Los
sectores son las unidades mínimas de información
que puede leer o escribir un disco duro. Generalmente, cada
sector almacena 512 bytes de información.
26 El número total de sectores de un disco duro se puede
calcular: nº sectores = nº caras * nº pistas/cara
* nº sectores/pista. Por tanto, cada sector queda
unívocamente determinado si conocemos los siguientes
valores: cabezas, cilindros y sectores. Por ejemplo, el disco
duro ST33221A de Seagate tiene las siguientes especificaciones:
cilindros = 6.253, cabezas = 16 y sectores = 63. El número
total de sectores direccionables es, por tanto, 6.253*16*63 =
6.303.024 sectores. Si cada sector almacena 512 bytes de
información, la capacidad máxima de este disco duro
será de 6.303.024 sectores * 512 bytes/sector =
3.227.148.228 bytes ~ 3 GB. Las cabezas y cilindros comienzan a
numerarse desde el cero y los sectores desde el uno. En
consecuencia, el primer sector de un disco duro será el
correspondiente a la cabeza 0, cilindro 0 y sector 1.
27 La estructura lógica de un disco duro está
formada por: El sector de arranque (Master Boot Record) Espacio
particionado Espacio sin particionar
28 El sector de arranque es el primer sector de todo disco duro
(cabeza 0, cilindro 0, sector 1). En él se almacena la
tabla de particiones y un pequeño programa master de
inicialización, llamado también Master Boot. Este
programa es el encargado de leer la tabla de particiones y ceder
el control al sector de arranque de la partición activa.
Si no existiese partición activa, mostraría un
mensaje de error. El espacio particionado es el espacio del disco
que ha sido asignado a alguna partición. El espacio no
particionado, es espacio no accesible del disco ya que
todavía no ha sido asignado a ninguna
partición.
29 Ejemplo: un disco duro con espacio particionado (2 particiones
primarias y 2 lógicas) y espacio todavía sin
particionar.
30 El caso más sencillo consiste en un sector de arranque
que contenga una tabla de particiones con una sola
partición, y que esta partición ocupe la totalidad
del espacio restante del disco. En este caso, no existiría
espacio sin particionar. Como mínimo, es necesario crear
una partición para cada disco duro. Esta partición
puede contener la totalidad del espacio del disco duro o
sólo una parte.
31 Particiones y directorios permiten organizar datos en un mismo
disco duro. Diferencias entre particiones y directorios: 1ª)
Las particiones son divisiones de tamaño fijo del disco
duro; los directorios son divisiones de tamaño variable de
la partición. 2ª) Las particiones ocupan un grupo de
cilindros contiguos del disco duro (mayor seguridad); los
directorios suelen tener su información desperdigada por
toda la partición. 3ª) Cada partición del
disco duro puede tener un sistema de archivos (sistema operativo)
distinto; todos los directorios de la partición tienen el
sistema de archivos de la partición.
32 Las razones que nos pueden llevar a crear más de una
partición por disco se suelen reducir a tres: Razones
organizativas: Un ordenador que es compartido por más de
un usuario y, con objeto de lograr una mejor organización
y seguridad de sus datos deciden utilizar particiones separadas.
Instalación de más de un sistema operativo. Debido
a que cada sistema operativo requiere (como norma general) una
partición propia para trabajar, si queremos instalar dos
sistemas operativos a la vez en el mismo disco duro (por ejemplo,
Windows 98 y Linux), será necesario particionar el disco.
Razones de eficiencia. Por ejemplo, suele ser preferible tener
varias particiones FAT pequeñas antes que una gran
partición FAT. Esto es debido a que cuanto mayor es el
tamaño de una partición, mayor es el tamaño
del grupo (cluster) y, por consiguiente, se desaprovecha
más espacio de la partición.
33 Las particiones pueden ser de dos tipos: primarias o
lógicas. Las particiones lógicas se definen dentro
de una partición primaria especial denominada
partición extendida. En un disco duro sólo pueden
existir 4 particiones primarias (incluida la partición
extendida, si existe). Las particiones existentes deben
inscribirse en una tabla de particiones de 4 entradas situada en
el primer sector de todo disco duro. De estas 4 entradas de la
tabla puede que no esté utilizada ninguna (disco duro sin
particionar, tal y como viene de fábrica) o que
estén utilizadas una, dos, tres o las cuatro entradas. En
cualquiera de estos últimos casos (incluso cuando
sólo hay una partición), es necesario que en la
tabla de particiones figure una de ellas como partición
activa. La partición activa es aquella a la que el
programa de inicialización (Master Boot) cede el control
al arrancar. El sistema operativo de la partición activa
será el que se cargue al arrancar desde el disco
duro.
34 Conclusiones: Para que un disco duro sea utilizable debe tener
al menos una partición primaria. Además para que un
disco duro sea arrancable debe tener activada una de las
particiones y un sistema operativo instalado en ella. Esto quiere
decir que el proceso de instalación de un sistema
operativo en un ordenador consta de la creación de su
partición correspondiente, instalación del sistema
operativo (formateo de la partición y copia de archivos) y
activación de la misma.
35 No es posible crear más de cuatro particiones
primarias. Este límite se logra subsanar mediante la
creación de una partición extendida (como
máximo una). Esta partición ocupa, una de las
cuatro entradas posibles de la tabla de particiones. Dentro de
una partición extendida se pueden definir particiones
lógicas sin límite. El espacio de la
partición extendida puede estar ocupado en su totalidad
por particiones lógicas o bien, tener espacio libre sin
particionar. Si hay una partición extendida, en la tabla
de particiones del Master Boot Record debe existir una entrada
con una partición extendida (la cual no tiene sentido
activar). Esta entrada apunta a una nueva tabla de particiones
similar a la ya estudiada, de la que sólo se utilizan sus
dos primeras entradas. La primera entrada corresponde a la
primera partición lógica; la segunda,
apuntará a una nueva tabla de particiones. Esta nueva
tabla contendrá en su primera entrada la segunda
partición lógica y en su segunda, una nueva
referencia a otra tabla. De esta manera, se va creando una cadena
de tablas de particiones hasta llegar a la última,
identificada por tener su segunda entrada en blanco.
36 Particiones primarias y particiones lógicas: Hay una
diferencia importante: sólo las particiones primarias se
pueden activar. Además, algunos sistemas operativos no
pueden acceder a particiones primarias distintas a la suya.
Conclusión: los sistemas operativos deben instalarse en
particiones primarias, ya que de otra manera no podrían
arrancar. El resto de particiones que no contengan un sistema
operativo, es más conveniente crearlas como particiones
lógicas. Por dos razones: primera, no se malgastan
entradas de la tabla de particiones del disco duro y, segunda, se
evitan problemas para acceder a estos datos desde los sistemas
operativos instalados. Las particiones lógicas son los
lugares ideales para contener las unidades que deben ser visibles
desde todos los sistemas operativos. Algunos sistemas operativos
presumen de poder ser instalados en particiones lógicas
(Windows NT), sin embargo, esto no es del todo cierto: necesitan
instalar un pequeño programa en una partición
primaria que sea capaz de cederles el control.
37 Estructura lógica de las particiones: Dependiendo del
sistema de archivos utilizado en cada partición, su
estructura lógica será distinta. En los casos de
MS-DOS y Windows 95, está formada por sector de arranque,
FAT, copia de la FAT, directorio raíz y área de
datos. De todas formas, el sector de arranque es un elemento
común a todos los tipos de particiones. Todas las
particiones tienen un sector de arranque (el primero de la
partición) con información relativa a la
partición. Si la partición tiene instalado un
sistema operativo, este sector se encargará de arrancarlo.
Si no hubiese ningún sistema operativo (como es el caso de
una partición para datos) y se intentara arrancar,
mostraría un mensaje de error.
38 Secuencia de arranque de un ordenador: Todos los ordenadores
disponen de un pequeño programa almacenado en memoria ROM
(Read Only Memory, memoria de sólo lectura), encargado de
tomar el control del ordenador en el momento de encenderlo. Lo
primero que hace el programa de arranque es un breve chequeo de
los componentes hardware. Si todo está en orden, intenta
el arranque desde la primera unidad física indicada en la
secuencia de arranque. Si el intento es fallido, repite la
operación con la segunda unidad de la lista y así
hasta que encuentre una unidad arrancable. Si no existiese
ninguna, el programa de arranque mostraría una
advertencia. Esta secuencia de arranque se define en el programa
de configuración del ordenador (también llamado
Setup, CMOS o BIOS). Suponiendo que arrancamos desde el disco
duro, el programa de arranque de la ROM cederá el control
a su programa de inicialización (Master Boot). Este
programa buscará en la tabla de particiones la
partición activa y le cederá el control a su sector
de arranque. El programa contenido en el sector de arranque de la
partición activa procederá al arranque del sistema
operativo.
39 Sistemas de archivos: Un sistema de archivos es una estructura
que permite tanto el almacenamiento de información en una
partición como su modificación y
recuperación. Para que sea posible trabajar en una
partición es necesario asignarle previamente un sistema de
archivos. Esta operación se denomina dar formato a una
partición. Generalmente cada sistema de archivos ha sido
diseñado para obtener el mejor rendimiento con un sistema
operativo concreto (FAT para DOS, FAT32 para Windows 98, NTFS
para Windows NT, HPFS para OS/2…). Sin embargo, es usual
que el mismo sistema operativo sea capaz de reconocer
múltiples sistemas de archivos.
ESTA PRESENTACIÓN CONTIENE MAS DIAPOSITIVAS DISPONIBLES EN
LA VERSIÓN DE DESCARGA