Exposicion
Exposicion
Exposicion
Elementos de un computador
Los elementos del computador son:
Hardware
Equipo utilizado para el funcionamiento de una computadora. El hardware se refiere a los
componentes materiales de un sistema informático.
La función de estos componentes suele dividirse en tres categorías principales: entrada, salida
y almacenamiento. Los componentes de esas categorías están conectados a través de un
conjunto de cables o circuitos llamado bus con la unidad central de proceso (CPU) del
ordenador, el microprocesadorque controla la computadora y le proporciona capacidad
de cálculo.
El hardware es un conjunto de dispositivos eléctricos y algunos mecánicos. Se compone
principalmente de:
* C.P.U. : microprocesador. Sus funciones principales son:
a) Controlar y supervisar el sistema integral del ordenador en base a un programa almacenado
en la memoria principal.
b) Desarrollar operaciones lógicas que sean necesarias para procesar las demás y controlar la
secuencia. La ejecución de las instrucciones.
c) Controlar el envío y recepción de datos de todas las unidades periféricas a la unidad
de memoria.
En función de la cantidad de instrucciones que puede descodificar la C.P.U. se dividen en:
a) CISC: tiene un gran conjunto de instrucciones.
b) RISC: tiene un conjunto regular de instrucciones.
* MEMORIA: dispositivos que permiten almacenar un conjunto de instrucciones. Dos clases
principales:
a) RAM memoria de lectura/escritura. Son de acceso aleatorio, lentas y volátil.
b) ROM solo lectura. De acceso aleatorio y permanentes
* Dispositivos de E/S: Son una serie de dispositivos que permiten al ordenador comunicarse
con el exterior. Los principales son:
a) Teclados.
b) Displays.
c) Discos: flexibles, duros...
d) Impresoras.
e) Comunicaciones.
El soporte lógico o software
En cambio, es el conjunto de instrucciones que un ordenador emplea para manipular datos:
por ejemplo, un procesador de textos o un videojuego. Estos programas suelen almacenarse y
transferirse a la CPU a través del hardware de la computadora. El software también rige la
forma en que se utiliza el hardware, como por ejemplo la forma de recuperar información de un
dispositivo de almacenamiento. La interacción entre el hardware de entrada y de salida es
controlada por un software llamado BIOS (siglas en inglés de 'sistema básico de entrada /
salida').
Aunque, técnicamente, los microprocesadores todavía se consideran hardware, partes de su
función también están asociadas con el software. Como los microprocesadores tienen tanto
aspectos de hardware como de software, a veces se les aplica el término intermedio de
microprogramación, o firmware.
Software, programas de computadoras. Son las instrucciones responsables de que el hardware
(la máquina) realice su tarea. Como concepto general, el software puede dividirse en varias
categorías basadas en el tipo de trabajo realizado. Las dos categorías primarias de software son
los sistemas operativos (software del sistema), que controlan los trabajos del ordenador o
computadora, y el software de aplicación, que dirige las distintas tareas para las que se utilizan
las computadoras. Por lo tanto, el software del sistema procesa tareas tan esenciales, aunque a
menudo invisibles, como el mantenimiento de los archivos del disco y la administración de la
pantalla, mientras que el software de aplicación lleva a cabo tareas de tratamiento de
textos, gestión de bases de datos y similares. Constituyen dos categorías separadas el software
de red, que permite comunicarse a grupos de usuarios, y el software de lenguaje utilizado para
escribir programas
Además de estas categorías basadas en tareas, varios tipos de software se describen basándose
en su método de distribución. Entre estos se encuentran los así llamados programas enlatados,
el software desarrollado por compañías y vendido principalmente por distribuidores, el
freeware y software de dominio público, que se ofrece sin costo alguno, el shareware, que es
similar al freeware, pero suele conllevar una pequeña tasa a pagar por los usuarios que lo
utilicen profesionalmente y, por último, el infame vapourware, que es software que no llega a
presentarse o que aparece mucho después de lo prometido.
Lenguajes en computación
En informática, cualquier lenguaje artificial puede utilizarse para definir una secuencia de
instrucciones para su procesamiento por un ordenador o computadora. Es complicado definir
qué es y qué no es un lenguaje. Se asume generalmente que la traducción de las instrucciones a
un código que comprende la computadora debe ser completamente sistemática. Normalmente
es la computadora la que realiza la traducción.
TIPOS DE LENGUAJES:
Lenguaje Máquina
El lenguaje propio del ordenador, basado en el sistema binario, o código máquina, resulta
difícil de utilizar para las personas. El programador debe introducir todos y cada uno de
los comandos y datos en forma binaria, y una operación sencilla como comparar el contenido
de un registro con los datos situados en una ubicación del chip de memoria puede tener el
siguiente formato: 11001010 00010111 11110101 00101011. La programación en lenguaje
máquina es una tarea tan tediosa y consume tanto tiempo que muy raras veces lo que se ahorra
en la ejecución del programa justifica los días o semanas que se han necesitado para escribir el
mismo.
Lenguaje bajo nivel
Vistos a muy bajo nivel, los microprocesadores procesan exclusivamente señales electrónicas
binarias. Dar una instrucción a un microprocesador supone en realidad enviar series de unos y
ceros espaciadas en el tiempo de una forma determinada. Esta secuencia de señales se
denomina código máquina. El código representa normalmente datos y números e instrucciones
para manipularlos. Un modo más fácil de comprender el código máquina es dando a cada
instrucción un mnemónico, como por ejemplo STORE, ADD o JUMP. Esta abstracción da
como resultado el ensamblador, un lenguaje de muy bajo nivel que es específico de cada
microprocesador.
Los lenguajes de bajo nivel permiten crear programas muy rápidos, pero que son a menudo
difíciles de aprender. Más importante es el hecho de que los programas escritos en un bajo
nivel sean altamente específicos de cada procesador. Si se lleva el programa a otra máquina se
debe reescribir el programa desde el principio
Lenguaje alto nivel
Los lenguajes de alto nivel sueles utilizar términos ingleses del tipo LIST, PRINT u OPEN como
comandos que representan una secuencia de decenas o de centenas de instrucciones en
lenguaje máquina. Los comandos se introducen desde el teclado, desde un programa residente
en la memoria o desde un dispositivo de almacenamiento, y son interceptados por un programa
que los traduce a instrucciones en lenguaje máquina.
Los programas traductores son de dos tipos: interpretes y compiladores. Con un interprete, los
programas que repiten un ciclo para volver a ejecutar parte de sus instrucciones, reinterpretan
la misma instrucción cada vez que aparece. Por consiguiente, los programas interpretados se
ejecutan con mucha mayor lentitud que los programas en lenguaje máquina. Por el contrario,
los compiladores traducen un programa integro a lenguaje máquina antes de su ejecución, por
lo cual se ejecutan con tanta rapidez como si hubiese sido escrita directamente en lenguaje
máquina.
Aunque existen centenares de lenguajes informáticos y de variantes, hay algunos dignos de
mención, como el PASCAL, diseñado en un principio como herramienta de enseñanza, hoy es
uno de los lenguajes de microordenador más populares; el logro fue desarrollado para que
los niños pudieran acceder al mundo de la informática; el C, un lenguaje de Bell Laboratories
diseñado en la década de 1970, se utiliza ampliamente en el desarrollo de programas de
sistemas, al igual que su sucesor, el C++. El LISP y el PROLOG han alcanzado amplia difusión
en el campo de la inteligencia artificial.
ELEMENTOS DE ENTRADA
También llamados periféricos o unidades de entrada
Son los encargados de introducir los datos y los programas desde el exterior a la memoria
central para su utilización.
Preparan la información para que el computador la entienda de forma correcta
Entre ellos se tiene: el teclado, el ratón, scanner, CR-ROM, lectoras de barra, etc.
ELEMENTOS DE SALIDA
Son aquellos dispositivos cuya misión es recoger y proporcionar al exterior los datos de
salida o resultado de los procesos que se ejecutan
Entre ellos se tiene: Monitor, impresoras, etc.
Medios de almacenamientos
Los medios de almacenamientos también son conocidos
como memorias secundarias, entre estos tenemos:
Memoria: es un dispositivo físico, generalmente un circuito electrónico, en el que se
almacenan datos e instrucciones para recuperarlos y utilizarlo posteriormente. En un sentido
amplio tenemos las siguientes memorias:
Discos Duros ó memoria secundaria: es en esta memoria donde se almacena el sistema
operativo, los multimedia, juegos y los programas de aplicación entre otros.
Pen Drive ó Flash Memory: es una memoria bajo un circuito integrado de alta capacidad,
velocidad, con un conector para puertos USB, viene en diferentes modelos y versiones con
capacidades de mega byte y giga byte, además es cómoda y portátil.
Unidad de Floppy ó Diskette de 31/2: en este dispositivo se utiliza un pequeño disco
flexible con alta densidad magnética el cual almacena información, pero en baja calidad de
retención ya que esta se borra cuando el disco pierde su magnetismo con el pasar de los
tiempos.
UNIDAD CENTRAL DE PROCESOS (CPU, Central Process Unit)
LA MEMORIA PRINCIPAL
Está formada por un conjunto de celdas, posiciones o palabras de memoria. En cada celda se
archiva determinada información (datos o instrucciones de programa). La manera de
diferenciar unas posiciones de otras es asignando una dirección diferente a cada celda. Para
acceder a ella es necesario únicamente referenciar la dirección de memoria que las identifica.
DEFINICIÓN DE HARDWARE
Palabra compuesta de : Hard (duro) y Ware (equipo)
Constituye todo el equipo duro del computador, la parte tangible o perceptible.
Todos aquellos elementos que tienen entidad física forman parte del hardware, por ejemplo:
componentes de la computadora, dispositivos externos (monitor, teclado, impresora, cables,
soportes de información, etc.)
Unidad Central de Procesos (CPU, Central Process Unit): es el corazón del Computador.
Su principal misión consiste en coordinar y realizar todas las operaciones del sistema
informático. Consta de:
Procesador: encargado del control y ejecución de las operaciones; esta formado por:
Unidad de Control (CU,Control Unit) : es la parte del procesador encargada de gobernar el
resto de las unidades, además de interpretar y ejecutar las instrucciones controlando su
secuencia.
Unidad Aritmético Lógica (ALU, Aritmetic logical Unit) : es la parte del procesador
encargada de realizar todas las operaciones elementales de tipo aritmético y tipo lógico
UNIDAD CENTRAL DE PROCESOS
Memoria Central:
También denominada memoria interna o principal (main memory).
Es el encargado de almacenar los programas y los datos de estos, necesarios para que el
sistema informático realice un determinado trabajo.
Una característica importante es que es volátil, es decir, al cortar el flujo eléctrico se borra el
contenido almacenado en ella
Memoria RAM (Random Access Memory), memoria de acceso aleatorio
MEMORIA AUXILIAR
Dispositivos de almacenamiento masivo de información
Su principal importancia radica en que permite almacenar información a lo largo del
tiempo, recuperándola cuando se quiera y sin que se pierda aunque el dispositivo quede
desconectado de la red eléctrica.
Ejemplos: Diskettes, Disco duro, Cintas magnéticas
La secuencia lógica que la unidad de control debe realizar para ejecutar una
instrucción es la siguiente:
Localizar y extraer de la memoria principal la instrucción correspondiente
Transferir la instrucción de la memoria a la Unidad de control
Determinar qué tipo de operación se debe ejecutar
Ejecutar la instrucción, enviando las señales de control u órdenes a los elementos
pertinentes
Supervisar la operación anterior para determinar si ha finalizado correctamente.
Localizar la siguiente instrucción a ejecutar.
DEFINICIÓN DE SOFTWARE
Palabra compuesta de : Soft (suave) y Ware (equipo)
Programas de computadoras. Son las instrucciones responsables de que el hardware (la
máquina) realice su tarea.
Constituye la parte imperceptible o intangible
Es la parte lógica que le da al equipo físico la capacidad de realizar cualquier tipo de trabajo.
Sistemas operativos
"El Sistema Operativo es un conjunto de programas (software) que trata de optimizar todo el
poder de una computadora y sus periféricos (hardware) y de facilitar al usuario el
aprovechamiento de su equipo"
Redondo y Algara CCV 1999.
"Es el que toma el control cuando encendemos la computadora y realiza las primeras
acciones....junto con la interfaz gráfica está al centro de la accióndel software" Long y Long
1.997
Objetivos.....
Facilita la comunicación entre el sistema y la gente que lo maneja
Facilita la comunicación entre los componentes del sistema
Minimiza el tiempo para ejecutar un comando
Optimiza el uso de los recursos del sistema
Lleva el control de los archivos almacenados en disco.
Proporciona una cubierta de seguridad al sistema de computación.
Monitorea todas las capacidades del sistema y alerta al usuario sobre posibles fallas.
Funciones de los S. O.
Asignación de tiempo de CPU:
Planificar las diversas actividades.
Control de recursos:
Asignar recursos de forma racional. P. E. División de la memoria del ordenador entre los
programas, controlar colas de e/s.
Control de entrada/salida:
Gestionar los datos desde y hacia los periféricos.
Control de los errores y protección:
Informar de las situaciones anómalas
Interfaz con el usuario:
Facilita el uso.
Facilidades contables:
Cálculo de costes de uso de CPU.
TIPOS DE SISTEMAS OPERATIVOS
Un sistema Operativo (SO) es en sí mismo un programa de computadora. Sin embargo, es un
programa muy especial, quizá el más complejo e importante en una computadora. El SO
despierta a la computadora y hace que reconozca a la CPU, la memoria, el tecla do, el sistema
de vídeo y las unidades de disco.
Además, proporciona la facilidad para que los usuarios se comuniquen con la computadora y
sirve de plataforma a partir de la cual se corran programas de aplicación.
Sistemas Operativos por Servicios(Visión Externa).
Esta clasificación es la más comúnmente usada y conocida desde el punto de vista del usuario
final. Esta clasificación se comprende fácilmente con el cuadro sinóptico que a continuación se
muestra:
Por Número de Usuarios:
Sistema Operativo Monousuario.
Los sistemas operativos monousuarios son aquéllos que soportan a un usuario a la vez, sin
importar el número de procesadores que tenga la computadora o el número de procesos o
tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Las computadoras
personales típicamente se han clasificado en este renglón.
Sistema Operativo Multiusuario.
Los sistemas operativos multiusuarios son capaces de dar servicio a más de un usuario a la vez,
ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones
remotas en una red de comunicaciones. No importa el número de procesadores en la máquina
ni el número de procesos que cada usuario puede ejecutar simultáneamente.
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
(timesharing).
Sistema Operativo Multitarea.
Un sistema operativo multitarea es aquél que le permite al usuario estar realizando varias
labores al mismo tiempo.
Es el modo de funcionamiento disponible en algunos sistemas operativos, mediante el cual una
computadora procesa varias tareas al mismo tiempo. Existen varios tipos de multitareas. La
conmutación de contextos (context Switching) es un tipo muy simple de multitarea en el que
dos o más aplicaciones se cargan al mismo tiempo, pero en el que solo se esta procesando la
aplicación que se encuentra en primer plano (la que ve el usuario. En la multitarea cooperativa,
la que se utiliza en el sistema operativo Macintosh, las tareas en segundo plano reciben tiempo
de procesado durante los tiempos muertos de la tarea que se encuentra en primer plano (por
ejemplo, cuando esta aplicación esta esperando información del usuario), y siempre que esta
aplicación lo permita. En los sistemas multitarea de tiempo compartido, como OS/2, cada tarea
recibe la atención del microprocesador durante una fracción de segundo.
Sistema Operativo de Uniproceso.
Un sistema operativo uniproceso es aquél que es capaz de manejar solamente un procesador de
la computadora, de manera que si la computadora tuviese más de uno le sería inútil. El ejemplo
más típico de este tipo de sistemas es el DOS y MacOS.
Sistema Operativo de Multiproceso.
Un sistema operativo multiproceso se refiere al número de procesadores del sistema, que es
más de uno y éste es capaz de usarlos todos para distribuir su carga de trabajo. Generalmente
estos sistemas trabajan de dos formas: simétrica o asimétricamente.
Asimétrica.
Cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los
procesadores el cual jugará el papel de procesador maestro y servirá como pivote para
distribuir la carga a los demás procesadores, que reciben el nombre de esclavos.
Simétrica.
Cuando se trabaja de manera simétrica, los procesos o partes de ellos (threads) son enviados
indistintamente a cual quiera de los procesadores disponibles, teniendo, teóricamente, una
mejor distribución y equilibrio en la carga de trabajo bajo este esquema.
Sistemas Operativos por su Estructura (Visión Interna).
Según, se deben observar dos tipos de requisitos cuando se construye un sistema operativo, los
cuales son:
Requisitos de usuario: Sistema fácil de usar y de aprender, seguro, rápido y adecuado al uso al
que se le quiere destinar.
Requisitos del software: Donde se engloban aspectos como el mantenimiento, forma de
operación, restricciones de uso, eficiencia, tolerancia frente a los errores y flexibilidad.
A continuación se describen las distintas estructuras que presentan los actuales sistemas
operativos para satisfacer las necesidades que de ellos se quieren obtener.
Estructura Monolítica.
Es la estructura de los primeros sistemas operativos constituidos fundamentalmente por un
solo programa compuesto de un conjunto de rutinas entrelazadas de tal forma que cada una
puede llamar a cualquier otra. Las características fundamentales de este tipo de estructura son:
Construcción del programa final a base de módulos compilados separadamente que se unen
a través del ligador.
Buena definición de parámetros de enlace entre las distintas rutinas existentes, que puede
provocar mucho acoplamiento.
Carecen de protecciones y privilegios al entrar a rutinas que manejan diferentes aspectos de
los recursos de la computadora, como memoria, disco, etc.
Generalmente están hechos a medida, por lo que son eficientes y rápidos en su ejecución y
gestión, pero por lo mismo carecen de flexibilidad para soportar diferentes ambientes de
trabajo o tipos de aplicaciones.
Estructura Jerárquica.
A medida que fueron creciendo las necesidades de los usuarios y se perfeccionaron los
sistemas, se hizo necesaria una mayor organización del software, del sistema operativo, donde
una parte del sistema contenía subpartes y esto organizado en forma de niveles.
Se dividió el sistema operativo en pequeñas partes, de tal forma que cada una de ellas estuviera
perfectamente definida y con un claro interface con el resto de elementos.
Se constituyó una estructura jerárquica o de niveles en los sistemas operativos, el primero de
los cuales fue denominado THE (Technische Hogeschool, Eindhoven), de Dijkstra, que se
utilizó con fines didácticos. Se puede pensar también en estos sistemas como si fueran
`multicapa'. Multics y Unix caen en esa categoría.
Máquina Virtual.
Se trata de un tipo de sistemas operativos que presentan una interface a cada proceso,
mostrando una máquina que parece idéntica a la máquina real subyacente. Estos sistemas
operativos separan dos conceptos que suelen estar unidos en el resto de sistemas: la
multiprogramación y la máquina extendida. El objetivo de los sistemas operativos de máquina
virtual es el de integrar distintos sistemas operativos dando la sensación de ser
varias máquinas diferentes.
Cliente-Servidor(Microkernel).
El tipo más reciente de sistemas operativos es el denominado Cliente-servidor, que puede ser
ejecutado en la mayoría de las computadoras, ya sean grandes o pequeñas.
Este sistema sirve para toda clase de aplicaciones por tanto, es de propósito general y cumple
con las mismas actividades que los sistemas operativos convencionales.
Sistemas Operativos por la Forma de Ofrecer sus Servicios
Esta clasificación también se refiere a una visión externa, que en este caso se refiere a la del
usuario, el cómo accesa a los servicios. Bajo esta clasificación se pueden detectar dos tipos
principales: sistemas operativos de red y sistemas operativos distribuidos.
Sistema Operativo de Red.
Los sistemas operativos de red se definen como aquellos que tiene la capacidad de interactuar
con sistemas operativos en otras computadoras por medio de un medio de transmisión con el
objeto de intercambiar información, transferir archivos, ejecutar comandos remotos y un sin
fin de otras actividades. El punto crucial de estos sistemas es que el usuario debe saber la
sintaxis de un conjunto de comandos o llamadas al sistema para ejecutar estas operaciones,
además de la ubicación de los recursos que desee accesar. Por ejemplo, si un usuario en la
computadora hidalgo necesita el archivomatriz.pas que se localiza en el directorio
/software/codigo en la computadora morelos bajo el sistema operativo UNIX, dicho usuario
podría copiarlo a través de la red con los comandos siguientes: hidalgo% hidalgo% rcp
morelos:/software/codigo/matriz.pas . hidalgo%. En este caso, el comando rcp que significa
"remote copy" trae el archivo indicado de la computadora morelos y lo coloca en el directorio
donde se ejecutó el mencionado comando. Lo importante es hacer ver que el usuario puede
accesar y compartir muchos recursos.
Sistemas Operativos Distribuidos.
Los sistemas operativos distribuidos abarcan los servicios de los de red, logrando integrar
recursos ( impresoras, unidades de respaldo, memoria, procesos, unidades centrales de proceso
) en una sola máquina virtual que el usuario accesa en forma transparente. Es decir, ahora el
usuario ya no necesita saber la ubicación de los recursos, sino que los conoce por nombre y
simplemente los usa como si todos ellos fuesen locales a su lugar de trabajo habitual. Todo lo
anterior es el marco teórico de lo que se desearía tener como sistema operativo distribuido,
pero en la realidad no se ha conseguido crear uno del todo, por la complejidad que suponen:
distribuir los procesos en las varias unidades de procesamiento, reintegrar sub-resultados,
resolver problemas de concurrencia y paralelismo, recuperarse de fallas de algunos recursos
distribuidos y consolidar la protección y seguridad entre los diferentes componentes del
sistema y los usuarios. Los avances tecnológicos en las redes de área local y la creación de
microprocesadores de 32 y 64 bits lograron que computadoras mas o menos baratas tuvieran el
suficiente poder en forma autónoma para desafiar en cierto grado a los mainframes, y a la vez
se dio la posibilidad de intercomunicarlas, sugiriendo la oportunidad de partir procesos muy
pesados en cálculo en unidades más pequeñas y distribuirlas en los varios microprocesadores
para luego reunir los sub-resultados, creando así una máquina virtual en la red que exceda en
poder a un mainframe. El sistema integrador de los microprocesadores que hacer ver a las
varias memorias, procesadores, y todos los demás recursos como una sola entidad en forma
transparente se le llama sistema operativo distribuído.