lunes, 25 de abril de 2011

Sistemas numericos unidad V

Sistemas numéricos posiciónales en bases 2, 8 y 16

Intro. a la computacion

Prof. Patricia Obregon

A lo largo de la historia la humanidad ha utilizado muy diversos métodos para escribir números, los romanos, egipcios y babilonios utilizaban sistemas de escritura que suelen llamarse aditivos, en estos sistemas el valor de un numero es la suma de los valores de cada uno de los dígitos que lo componen, por ejemplo XXVI en romano es un 26, es decir dos veces 10 (X), mas 5 (V), mas uno (I). Un símbolo “V” en cualquier parte de un numero romano siempre vale 5 unidades.

A diferencia de los sistemas numéricos aditivos, en los sistemas posiciónales el valor de cada digito depende de su posición dentro del numero donde aparece. El sistema numérico posiciona mas conocido es, por supuesto, nuestro usual sistema indo arábigo. Como nos lo dijeron en la enseñanza elemental:

3486.03 = 3 millares + 4 centenas + 8 decenas + 6 unidades + 3 centésimos

Es decir:

3486.03 = 3 × 103 + 4 × 102 + 8 × 101 + 6 × 100 + 0 × 101 + 3 × 102

El primer “3” significa “tres millares” mientras que el ultimo significa “tres centésimos”, el símbolo “3” tiene un valor diferente dependiendo de su posición dentro del número.

Hay que notar además que cada posición dentro del número esta asociada a una potencia de 10. Algunos sistemas numéricos posiciónales tienen asociada una base1. Así, cada digito tiene un “valor intrínseco” (como el “3” del ejemplo anterior cuyo valor intr´ınseco es justamente 3) y ese valor se multiplica por una potencia de la base del sistema (10 en el ejemplo), el valor del exponente al que se eleva la base crece hacia la izquierda y decrece hacia la derecha.

El valor intrínseco de los dígitos de un sistema posiciona en base b esta en el conjunto

{0, . . . , b 1}. En nuestro sistema indo-arábigo decimal (es decir, en base 10) los dígitos posibles son los símbolos “0”, “1”, ..., “9”; cuyos valores son, respectivamente, 0 unidades, una unidad, etc.

Así pues, un número x en un sistema posiciona en base b se escribe como una secuencia de dígitos:

x = xnxn1 . . . x1x0.x1x2 . . . xm

Donde cada digito xi posee un valor intrínseco |xi| en el conjunto {0, . . . , b 1} (i

{−m, . . . , n}). El valor del número x, denotado |x|, es:

|x| =Xn

i=m

|xi| bi (1.0.1)

Mientras mayor sea la potencia de la base asociada a un digito en el número se dice que el digito es más significativo. Así el digitó de la extrema derecha de un número es el menos significativo y el de la extrema izquierda es el más significativo. A partir de este momento denotaremos que el numero x esta escrito en base b como xb y nos avocaremos a tratar con números enteros.

En el ámbito de la computación electrónica son particularmente interesantes los sistemas numéricos posiciónales en las bases 2 (binario), 8 (octal) y 16 (hexadecimal). Esto es porque, como probablemente ha escuchado el lector en repetidas ocasiones, las computadoras electrónicas modernas operan en binario, en ceros y unos (los únicos dos dígitos en un sistema posiciona base 2). Los circuitos digitales de nuestras computadoras solo distinguen cuando hay corriente en una línea y cuando no la hay. Las bases 8 y 16 son interesantes porque es muy fácil traducir la expresión de un numero entre cualesquiera de estas bases y la base 2 y viceversa.

Los dígitos en el sistema posiciona binario, normalmente llamados bits (Binary digITS), son “0” y “1” cuyos valores intrínsecos son, respectivamente 0 y 1. Los dígitos en el sistema octal son:”0”, “1”,..., “7”, y sus valores son: 0, 1,..., 7, respectivamente. En hexadecimal los dígitos son: “0”, “1”,..., “9”, “A”, “B”, “C”, “D”, “E”, “F” y sus valores son: 0, 1,..., 9, 10, 11, 12, 13, 14 y 15, respectivamente.

Nota:

1No en todos los sistemas numéricos posiciónales hay una base asociada. Los mayas usaban un sistema numérico posiciona que “casi” tenia base 20 para representar números relacionados con el calendario. La tercera posición de los números no se multiplicaba por 20 sino por 18.

Sistemas Operativos unidad IV

Sistemas Operativos (OS)
Int. A la computación
Prof. Patricia Obregón


Sistemas operativos

Para que un ordenador pueda hacer funcionar un programa informático (a veces conocido como aplicación o software), debe contar con la capacidad necesaria para realizar cierta cantidad de operaciones preparatorias que puedan garantizar el intercambio entre el procesador, la memoria y los recursos físicos (periféricos).

Definiciones:

Un sistema operativo es un conjunto de programas destinado a permitir el uso apropiado de las partes físicas del ordenador hardware, y de esta manera interactuar con el usuario. Sin un sistema operativo el usuario seria incapaz de poder trabajar con un computador ya que este no seria más que una conjunto de piezas electrónicas sin objetivo, he ahí su importancia.

Un Sistema Operativo (SO) es el software básico de una computadora que provee una interfaz entre el resto de programas del ordenador, los dispositivos hardware y el usuario.
Las funciones básicas del Sistema Operativo son administrar los recursos de la máquina, coordinar el hardware y organizar archivos y directorios en dispositivos de almacenamiento.
Los Sistemas Operativos más utilizados son Dos, Windows, Linux y Mac. Algunos SO ya vienen con un navegador integrado, como Windows que trae el navegador Internet Explorer.

Componentes del sistema operativo
El sistema operativo está compuesto por un conjunto de paquetes de software que pueden utilizarse para gestionar las interacciones con el hardware. Estos elementos se incluyen por lo general en este conjunto de software:
• El núcleo, que representa las funciones básicas del sistema operativo, como por ejemplo, la gestión de la memoria, de los procesos, de los archivos, de las entradas/salidas principales y de las funciones de comunicación.
• El intérprete de comandos, que posibilita la comunicación con el sistema operativo a través de un lenguaje de control, permitiendo al usuario controlar los periféricos sin conocer las características del hardware utilizado, la gestión de las direcciones físicas, etcétera.
• El sistema de archivos, que permite que los archivos se registren en una estructura arbórea.


Funciones del sistema operativo
El sistema operativo cumple varias funciones:
• Administración del procesador: el sistema operativo administra la distribución del procesador entre los distintos programas por medio de un algoritmo de programación. El tipo de programador depende completamente del sistema operativo, según el objetivo deseado.
• Gestión de la memoria de acceso aleatorio: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual". La memoria virtual permite ejecutar aplicaciones que requieren una memoria superior a la memoria RAM disponible en el sistema. Sin embargo, esta memoria es mucho más lenta.
• Gestión de entradas/salidas: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida).
• Gestión de ejecución de aplicaciones: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede "sucumbir".
• Administración de autorizaciones: el sistema operativo se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.
• Gestión de archivos: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.
• Gestión de la información: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.

Clasificación de los sistemas operativos
Los sistemas operativos pueden ser clasificados de la siguiente forma:
• Multiusuario: Permite que dos o más usuarios utilicen sus programas al mismo tiempo. Algunos sistemas operativos permiten a centenares o millares de usuarios al mismo tiempo.
• Multiprocesador: soporta el abrir un mismo programa en más de una CPU.
• Multitarea: Permite que varios programas se ejecuten al mismo tiempo.
• Multitramo: Permite que diversas partes de un solo programa funcionen al mismo tiempo.
• Tiempo Real: Responde a las entradas inmediatamente. Los sistemas operativos como DOS y UNIX, no funcionan en tiempo real.
Cómo funciona un Sistema Operativo
Los sistemas operativos proporcionan una plataforma de software encima de la cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones se programan para que funcionen encima de un sistema operativo particular, por tanto, la elección del sistema operativo determina en gran medida las aplicaciones que puedes utilizar.
Los sistemas operativos más utilizados en los PC son DOS, OS/2, y Windows, pero hay otros que también se utilizan, como por ejemplo Linux.
Cómo se utiliza un Sistema Operativo
Un usuario normalmente interactúa con el sistema operativo a través de un sistema de comandos, por ejemplo, el sistema operativo DOS contiene comandos como copiar y pegar para copiar y pegar archivos respectivamente. Los comandos son aceptados y ejecutados por una parte del sistema operativo llamada procesador de comandos o intérprete de la línea de comandos. Las interfaces gráficas permiten que utilices los comandos señalando y pinchando en objetos que aparecen en la pantalla.
Ejemplos de Sistema Operativo
A continuación detallamos algunos ejemplos de sistemas operativos:
Familia Windows
• Windows 95
• Windows 98
• Windows ME
• Windows NT
• Windows 2000
• Windows 2000 server
• Windows XP
• Windows Server 2003
• Windows CE
• Windows Mobile
• Windows XP 64 bits
• Windows Vista (Longhorn)
Familia Macintosh
• Mac OS 7
• Mac OS 8
• Mac OS 9
• Mac OS X
Familia UNIX
• AIX
• AMIX
• GNU/Linux
• GNU / Hurd
• HP-UX
• Irix
• Minix
• System V
• Solaris
• UnixWare

miércoles, 20 de abril de 2011

Informacion Digital unidad III

"Información digital"

Introducción a la computación

Prof. Patricia Obregón

Conceptos básicos

Bit

La palabra “bit” significa “binary digit”, en español “dígito binario”, y es la unidad elemental de información ya que no puede ser subdividida. También podemos decir que es la unidad mínima de información empleada en informática, en cualquier dispositivo digital, o en la teoría de la información. Con él, podemos representar dos valores cuales quiera, como verdadero o falso, abierto o cerrado, blanco o negro, norte o sur, masculino o femenino, rojo o azul, etc. Basta con asignar uno de esos valores al estado de "apagado" (0), y el otro al estado de "encendido" (1).

Byte

Un byte es la unidad fundamental de datos en los ordenadores personales, un byte son ocho bits contiguos. El byte es también la unidad de medida básica para memoria, almacenando el equivalente a un carácter.

Nombres para diferentes unidades

Tamaño y Capacidad de almacenamiento aproximada:

1 B Una letra

10 B Una o dos palabras

100 B Una o dos frases

1 kB Una historia muy corta

10 kB Una página de enciclopedia (tal vez con un dibujo simple)

100 kB Una fotografía de resolución mediana

1 MB Una novela

10 MB Dos copias de la obra completa de Shakespeare

100 MB 1 metro de libros en estantería

1 GB Una furgoneta llena de páginas con texto

1 TB 50.000 árboles

10 TB La colección impresa de la Biblioteca del Congreso de Estados Unidos

Palabra

En gramática tradicional, una palabra es cada uno de los segmentos limitados por pausas o espacios en la cadena hablada o escrita, que puede aparecer en otras posiciones, y que está dotado de una función.

Lingüísticamente, el concepto de palabra es mucho más problemático de lo que la definición anterior sugiere. Determinar qué constituye fonéticamente o morfosintácticamente una palabra es un problema abierto, así por ejemplo junto a los morfemas ligados y las palabras léxicas existen los clíticos cuyo estatus de palabra es discutido. La rama de la lingüística que estudia la composición y estructura interna de las palabras es la morfología.

Hardware y Software

Hardware

Los componentes y dispositivos del Hardware se dividen en Hardware Básico y Hardware Complementario

  • El Hardware Básico: son las piezas fundamentales e imprescindibles para que la computadora funcione como son: Placa base, monitor, teclado y ratón.
  • El Hardware Complementario: son todos aquellos dispositivos adicionales no esenciales como pueden ser: impresora, escáner, cámara de vídeo digital, webcam, etc.

Placa Base o Placa Madre

Los componentes Hardware más importantes de la computadora y esenciales para su funcionamiento se encuentran en la Placa Base (también conocida como Placa Madre), que es una placa de circuito impreso que aloja a la Unidad Central de Procesamiento (CPU) o microprocesador, Chipset (circuito integrado auxiliar), Memoria RAM, BIOS o Flash-ROM, etc., además de comunicarlos entre sí.

Grupos de Hardware

Según sus funciones, los componentes y dispositivos del hardware se dividen en varios grupos y en el siguiente orden:

Dispositivos de Entrada

Los Dispositivos de Entrada son aquellos a través de los cuales se envían datos externos a la unidad central de procesamiento, como el teclado, ratón, escáner, o micrófono, entre otros.

Chipset (Circuito Integrado Auxiliar)

El Chipset o Circuito Integrado Auxiliar es la médula espinal de la computadora, integrado en la placa base, hace posible que esta funcione como eje del sistema permitiendo el tráfico de información entre el microprocesador (CPU) y el resto de componentes de la placa base, interconectándolos a través de diversos buses que son: el Northbridge (Puente Norte) y el Southbridge (Puente Sur).

El Northbridge o Puente Norte es un circuito integrado que hace de puente de enlace entre el microprocesador y la memoria además de las tarjetas gráficas o de vídeo AGP o PCI-Express, así como las comunicaciones con el Puente Sur.

El Southbridge o Puente Sur (también conocido como Concentrador de Controladores de Entrada/Salida), es un circuito integrado que coordina dentro de la placa base los dispositivos de entrada y salida además de algunas otras funcionalidades de baja velocidad. El Puente Sur se comunica con la CPU a través del Puente Norte.

Unidad Central de Procesamiento (CPU)

La CPU (Central Processing Unit o Unidad Central de Procesamiento) puede estar compuesta por uno o varios microprocesadores de circuitos integrados que se encargan de interpretar y ejecutar instrucciones, y de administrar, coordinar y procesar datos, es en definitiva el cerebro del sistema de la computadora. además, la velocidad de la computadora depende de la velocidad de la CPU o microprocesador que se mide en Mhz (unidad de medida de la velocidad de procesamiento). Se divide en varios registros:

Unidad de Control

La Unidad de Control es la encargada de controlar que las instrucciones se ejecuten, buscándolas en la memoria principal, decodificándolas (interpretándolas) y que después serán ejecutadas en la unidad de proceso.

Unidad Aritmético-Lógica

La Unidad Aritmético-Lógica es la unidad de proceso donde se lleva a cabo la ejecución de las instrucciones con operaciones aritméticas y lógicas.

Unidad de Almacenamiento

La Unidad de Almacenamiento o Memoria guarda todos los datos que son procesados en la computadora y se divide en Memoria Principal y Memoria Secundaria o Auxiliar.

Memoria Principal o Primaria (RAM – ROM)

En la Memoria Principal o Primaria de la computadora se encuentran las memorias RAM, ROM y CACHÉ.

La Memoria RAM (Random Access Memory o Memoria de Acceso Aleatorio) es un circuito integrado o chip que almacena los programas, datos y resultados ejecutados por la computadora y de forma temporal, pues su contenido se pierde cuando esta se apaga. Se llama de acceso aleatorio - o de acceso directo - porque se puede acceder a cualquier posición de memoria sin necesidad de seguir un orden. La Memoria RAM puede ser leída y escrita por lo que su contenido puede ser modificado.

La Memoria ROM (Read Only Memory o Memoria de sólo lectura) viene grabada en chips con una serie de programas por el fabricante de hardware y es sólo de lectura, por lo que no puede ser modificada - al menos no muy rápida o fácilmente - y tampoco se altera por cortes de corriente. En esta memoria se almacenan los valores correspondientes a las rutinas de arranque o inicio del sistema y a su configuración.

La Memoria Caché o RAM Caché es una memoria auxiliar de alta velocidad, que no es más que una copia de acceso rápido de la memoria principal almacenada en los módulos de RAM.

Memoria Secundaria (Disco Duro, Disco Flexibles, etc.)

La Memoria Secundaria (también llamada Periférico de Almacenamiento) está compuesta por todos aquellos dispositivos capaces de almacenar datos en dispositivos que pueden ser internos como el disco duro, o extraíble como los discos flexibles (disquetes), CDs, DVDs, etc.

Dispositivos de Salida

Los Dispositivos de Salida son aquellos que reciben los datos procesados por la computadora y permiten exteriorizarlos a través de periféricos como el monitor, impresora, escáner, plotter, altavoces,etc.

Dispositivos de Entrada/Salida (Periféricos mixtos): Hay dispositivos que son tanto de entrada como de salida como los mencionados periféricos de almacenamiento, CDs, DVDs, así como módems, faxes, USBs, o tarjetas de red.

Software

El Software es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes físicos o hardware con instrucciones y datos a través de diferentes tipos de programas.

El Software son los programas de aplicación y los sistemas operativos, que según las funciones que realizan pueden ser clasificados en:

Software de Sistema

Se llama Software de Sistema o Software de Base al conjunto de programas que sirven para interactuar con el sistema, confiriendo control sobre el hardware, además de dar soporte a otros programas.

El Software de Sistema se divide en:

Sistema operativo

El Sistema Operativo es un conjunto de programas que administran los recursos de la computadora y controlan su funcionamiento.

Un Sistema Operativo realiza cinco funciones básicas: Suministro de Interfaz al Usuario, Administración de Recursos, Administración de Archivos, Administración de Tareas y Servicio de Soporte.

  1. Suministro de interfaz al usuario: Permite al usuario comunicarse con la computadora por medio de interfaces que se basan en comandos, interfaces que utilizan menús, e interfaces gráficas de usuario.
  2. Administración de recursos: Administran los recursos del hardware como la CPU, memoria, dispositivos de almacenamiento secundario y periféricos de entrada y de salida.
  3. Administración de archivos: Controla la creación, borrado, copiado y acceso de archivos de datos y de programas.
  4. Administración de tareas: Administra la información sobre los programas y procesos que se están ejecutando en la computadora. Puede cambiar la prioridad entre procesos, concluirlos y comprobar el uso de estos en la CPU, así como terminar programas.
  5. Servicio de soporte: Los Servicios de Soporte de cada sistema operativo dependen de las implementaciones añadidas a este, y pueden consistir en inclusión de utilidades nuevas, actualización de versiones, mejoras de seguridad, controladores de nuevos periféricos, o corrección de errores de software.

Controladores de Dispositivos

Los Controladores de Dispositivos son programas que permiten a otros programa de mayor nivel como un sistema operativo interactuar con un dispositivo de hardware.

Programas Utilitarios

Los Programas Utilitarios realizan diversas funciones para resolver problemas específicos, además de realizar tareas en general y de mantenimiento. Algunos se incluyen en el sistema operativo.

Software de Aplicación

El Software de Aplicación son los programas diseñados para o por los usuarios para facilitar la realización de tareas específicas en la computadora, como pueden ser las aplicaciones ofimáticas (procesador de texto, hoja de cálculo, programa de presentación, sistema de gestión de base de datos...), u otros tipos de software especializados como software médico, software educativo, editores de música, programas de contabilidad, etc.

Software de Programación

El Software de Programación es el conjunto de herramientas que permiten al desarrollador informático escribir programas usando diferentes alternativas y lenguajes de programación.

Este tipo de software incluye principalmente compiladores, intérpretes, ensambladores, enlazadores, depuradores, editores de texto y un entorno de desarrollo integrado que contiene las herramientas anteriores, y normalmente cuenta una avanzada interfaz gráfica de usuario (GUI).

Firmware

El firmware es un bloque de instrucciones de programa para propósitos específicos, grabado en una memoria de tipo no volátil (ROM, EEPROM, flash, etc.), que establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo de cualquier tipo. Al estar integrado en la electrónica del dispositivo es en parte hardware, pero también es software, ya que proporciona lógica y se dispone en algún tipo de lenguaje de programación. Funcionalmente, el firmware es el intermediario (interfaz) entre las órdenes externas que recibe el dispositivo y su electrónica, ya que es el encargado de controlar a ésta última para ejecutar correctamente dichas órdenes externas.

Encontramos firmware en memorias ROM de los sistemas de diversos dispositivos periféricos, como en monitores de video, unidades de disco, impresoras, etc., pero también en los propios microprocesadores, chips de memoria principal y en general en cualquier circuito integrado.

Muchos de los firmwares almacenados en ROM están protegidos por Derechos de Autor.

El programa BIOS de una computadora es un firmware cuyo propósito es activar una máquina desde su encendido y preparar el entorno para la instalación de un Sistema Operativo complejo, así como responder a otros eventos externos (botones de pulsación humana) y al intercambio de órdenes entre distintos componentes de la computadora.

En un microprocesador el firmware es el que recibe las instrucciones de los programas y las ejecuta en la compleja circuitería del mismo, emitiendo órdenes a otros dispositivos del sistema.

El firmware en hoy día

El firmware ha evolucionado para significar casi cualquier contenido programable de un dispositivo de hardware, no sólo código de máquina para un procesador, sino también configuraciones y datos para los circuitos integrados para aplicaciones específicas (ASICs), dispositivos de lógica programable, etc.

Periféricos de computador

La mayoría de los periféricos del computador son de hecho computadores de propósito especial. Mientras que los dispositivos externos tienen el firmware almacenado internamente, las modernas tarjetas de los periféricos de computadores típicamente tienen grandes partes de firmware que es cargado en el arranque por el sistema huesped, pues esto es más flexible. Dicho hardware por lo tanto puede no funcionar completamente hasta que el computador huesped le haya cargado el firmware indispensable, a menudo por medio del driver de dispositivo específico (o, más exactamente, por medio de un subsistema dentro del paquete del driver de dispositivo). Los modernos drivers de dispositivo también pueden exponer una interface directa de usuario para la configuración además de las llamadas/interfaces del sistema operativo o de las Interfaces de programación de aplicaciones (APIs).

Retos del firmware en los PC

En algún sentido, los varios componentes del firmware son tan importantes como el sistema operativo en un computador. Sin embargo, a diferencia de la mayoría de los sistemas operativos modernos, el firmware tiene raramente un mecanismo automático bien desarrollado para actualizarse a sí mismo para corregir los problemas de funcionalidad que son detectados después de que la unidad es despachada.

El BIOS es bastante fácil de actualizar en una PC moderna; los dispositivos como las tarjetas video o los módems confían en el firmware cargado dinámicamente por un driver de dispositivo y a menudo pueden así ser actualizados transparentemente a través de los mecanismos de la actualización del sistema operativo. En contraste, el firmware en dispositivos de almacenamiento es raramente actualizado; no están estandarizados los mecanismos para detectar las versiones del firmware y actualizarlas. Estos dispositivos por lo tanto tienden a tener un índice más alto de problemas de funcionalidad, comparado a otras partes de un moderno sistema de computación.

Lenguaje alto nivel

Un lenguaje de programación de alto nivel se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas.

En los primeros lenguajes de alto nivel la limitación era que se orientaban a un área específica y sus instrucciones requerían de una sintaxis predefinida. Se clasifican como lenguajes procedimentales. Otra limitación de los lenguajes de alto nivel es que se requiere de ciertos conocimientos de programación para realizar las secuencias de instrucciones lógicas. Los lenguajes de alto nivel se crearon para que el usuario común pudiese solucionar un problema de procesamiento de datos de una manera más fácil y rápida.

Por esta razón, a finales de los años 1950 surgió un nuevo tipo de lenguajes de programación que evitaba estos inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman de tercera generación o de alto nivel, en contraposición a los de bajo nivel o de nivel próximo a la máquina.

Leguaje simbólico, compilador e intérprete.

Los lenguajes de programación facilitan la tarea de programación, ya que disponen de formas adecuadas que permiten ser leídas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.

Los lenguajes de programación representan en forma simbólica y en manera de un texto los códigos que podrán ser leídos por una persona.

Los lenguajes de programación son independientes de las computadoras a utilizar.

Existen estrategias que permiten ejecutar en una computadora un programa realizado en un lenguaje de programación simbólico. Los procesadores del lenguaje son los programas que permiten el tratamiento de la información en forma de texto, representada en los lenguajes de programación simbólicos. Hay lenguajes de programación que utilizan compilador.

La ejecución de un programa con compilador requiere de dos etapas:

1) Traducir el programa simbólico a código máquina

2) Ejecución y procesamiento de los datos.

Otros lenguajes de programación utilizan un programa intérprete o traductor, el cual analiza directamente la descripción simbólica del programa fuente y realiza las instrucciones dadas.

El intérprete en los lenguajes de programación simula una máquina virtual, donde el lenguaje de máquina es similar al lenguaje fuente.

La ventaja del proceso interprete es que no necesita de dos fases para ejecutar el programa, sin embargo su inconveniente es que la velocidad de ejecución es más lenta ya que debe analizar e interpretar las instrucciones contenidas en el programa fuente.

Lenguaje de maquina

Es el sistema de códigos directamente interpretable por un circuito microprogramable, como el microprocesador de una computadora o el microcontrolador de un autómata . Este lenguaje está compuesto por un conjunto de instrucciones que determinan acciones a ser tomadas por la máquina. Un programa consiste en una cadena de estas instrucciones de lenguaje de máquina (más los datos). Estas instrucciones son normalmente ejecutadas en secuencia, con eventuales cambios de flujo causados por el propio programa o eventos externos. El lenguaje de máquina es específico de cada máquina o arquitectura de la máquina, aunque el conjunto de instrucciones disponibles pueda ser similar entre ellas.

Los circuitos microprogramables son sistemas digitales, lo que significa que trabajan con dos únicos niveles de tensión. Dichos niveles, por abstracción, se simbolizan con el cero, 0, y el uno, 1, por eso el lenguaje de máquina sólo utiliza dichos signos. Esto permite el empleo de las teorías del álgebra booleana y del sistema binario en el diseño de este tipo de circuitos y en su programación.

Claude Elwood Shannon, en su Analysis of Relay and Switching Circuits, y con sus experiencias en redes de conmutación, sentó las bases para la aplicación del álgebra de Boole a las redes de conmutación.

Una red de conmutación es un circuito de interruptores eléctricos que al cumplir ciertas combinaciones booleanas con las variables de entrada, define el estado de la salida. Este concepto es el núcleo de las puertas lógicas, las cuales son, por su parte, los ladrillos con que se construyen sistemas lógicos cada vez más complejos.

Shannon utilizaba el relé como dispositivo físico de conmutación en sus redes. El relé, a igual que una lámpara eléctrica, posee dos estados: 1 o 0, esto es, activado (encendido), o desactivado (apagado).

El desarrollo tecnológico ha permitido evolucionar desde las redes de relés electromagnéticos de Shannon a circuitos con tubos de vacío, luego a redes transistorizadas, hasta llegar a los modernos circuitos integrados cuyas cúspides lo forman los circuitos microprogramados.

Cargador de programas

Un cargador es un programa del sistema que realiza la función de carga, pero muchos cargadores también incluyen relocalización y ligado. Algunos sistemas tienen un ligador para realizar las operaciones de enlace, y un cargador separado para manejar la relocalización y la carga. Los procesos de ensamblado y carga están íntimamente relacionados.

Las funciones más importantes de un cargador son: colocar un programa objeto en la memoria e iniciar su ejecución. Si tenemos un cargador que no necesita realizar las funciones de ligado y relocalización de programas, su operación es muy simple, pues todas las funciones se realizan en un solo paso. Se revisa el registro de encabezamiento para comprobar se ha presentado el programa correcto para la carga (entrando en la memoria disponible). A medida que se lee cada registro de texto, el código objeto que contiene pasa a la dirección de memoria indicada. Cuando se encuentra el registro de fin, el cargador salta a al dirección especificada para iniciar la ejecución del programa cargado.

Programas fuentes

El concepto de "Programa Fuente" se relaciona de forma directa con los lenguajes de programación y las aplicaciones creadas, porque precisamente "Programa Fuente" describe el argumento escrito por el programador que da inicio al desarrollo de su obra de software.

De este modo, el paso siguiente está dado por la Compilación de lo escrito, de tal forma que la máquina sea capaz de entenderlo y "correrlo", dando lugar a un archivo ejecutable.

El "Código Fuente" no se inclina por el software libre o propietario, porque está destinado al programador que lo crea y modifica. Es por eso, que existen luego otras denominaciones, como Código Abierto (Open Source), el cual hace posible que el acceso al "Código Fuente" del programa no esté limitado a su autor. Es importante aclarar que Open Source y Free Software son dos áreas diferencias más allá de que compartan la virtud de mostrar el detrás de escena de una aplicación. La diferencia principal y más visible entre ambos movimientos, es que los programas Open Source pueden comercializarse.

-Código Fuente

Código Fuente También denominado fuente o texto fuente. Es el texto que contiene las instrucciones del programa, escritas en el lenguaje de programación.

-Fuente

En tipografía, se denomina fuente a cada familia de letras, incluyéndose números y demás signos, identificables por su diseño y características peculiares.

-Dirección Fuente

Dirección Fuente Dirección contenida en un paquete que indica la computadora que envió el paquete. En un cuadro de hardware, la dirección fuente debe ser una dirección de hardware.

-Programa

Un programa es una serie de instrucciones que le indican a la computadora cuáles son las tareas que tiene que realizar para lograr un fin específico.

-Programa Objeto

El lenguaje que utiliza el programador para diseñar los pasos a ejecutar por la computadora, para que sea entendible y mas fácil de utilizar por él, es muy similar al que utilizamos cotidianamente (lenguaje de alto nivel) y que es independiente del hardware en el que se va a utilizar.

Pero para que una computadora pueda funcionar, las instrucciones a seguir deben ser dadas en un lenguaje binario (compuesto por 0 y 1) que pueda ser interpretado y ejecutado por esta, que es el lenguaje máquina.

De esta manera, el Programa Objeto es aquel programa que resulta de la traducción del lenguaje fuente (lenguaje entendible por el ser humano) a un lenguaje máquina, es decir a aquel que es inteligible por la computadora.

Esta tarea es llevada a cabo por los programas intérpretes o compiladores. Los primeros, los intérpretes, realizan la traducción de manera tal que el lenguaje obtenido puede ser ejecutado directamente por la máquina. En cuanto a los compiladores, no realizan la traducción directa para que pueda ser ejecutable por la computadora sino que debe utilizar también un programa montador o enlazador, conocido como linker, que es el que realiza la acción final que permite que el programa objeto pueda ser ejecutado.

lunes, 11 de abril de 2011

Resumen de la unidad II

“Software y Hardware”

Introducción a la computación

Prof. Patricia Obregón


Siguiendo con los temas de la computación, en este caso dando una pequeña reseña o resumen sobre el software y el hardware de la unidad II de la materia podemos decir que los dos son muy diferente; para explicar un poco sobre estos dos términos, podemos decir que el software (parte suave) es el equipamiento lógico e intangible del computador. En otras palabras, el concepto de software alcanza a todas las aplicaciones informáticas, como los procesadores de textos, las plantillas de cálculo y los editores de imágenes, etc. El software es desarrollado mediante diferentes lenguajes de programación, que permiten controlar el procedimiento de una maquina.

Y el hardware (parte dura) es el conjunto de los componentes que conforman la parte física del computador case, disco duro, tarjeta madre, tarjetas de memorias, cableado, fuente de poder, tarjetas PSI, CPU, tarjetas de video, unidad de CD, unidad de DVD, monitor, mouse, teclado, impresora, cámara, cornetas, etc. A diferencia del software que refiere a los componentes lógicos.

Para concluir, tanto el software y el hardware son importantes ya que una con lleva al otro porque el hardware sin el software no funciona es solo un aparato sin funcionalidad.

Yanosky Pérez

C.I. 19.398.877

Semestre I

Software y hardware Unidad II

Software y hardware

Introducción a la computación

Prof. Patricia Obregón

Software

Se conoce como software al equipamiento lógico o soporte lógico de una computadora digital; comprende el conjunto de los componentes lógicos necesarios que hacen posible la realización de tareas específicas, en contraposición a los componentes físicos, que son llamados hardware.

Los componentes lógicos incluyen, entre muchos otros, las aplicaciones informáticas; tales como el procesador de textos, que permite al usuario realizar todas las tareas concernientes a la edición de textos; el software de sistema, tal como el sistema operativo, que, básicamente, permite al resto de los programas funcionar adecuadamente, facilitando también la interacción entre los componentes físicos y el resto de las aplicaciones, y proporcionando una interfaz para el usuario.

Clasificacion del software

Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, a los fines prácticos se puede clasificar al software en tres grandes tipos:

  • Software de sistema: Su objetivo es desvincular adecuadamente al usuario y al programador de los detalles de la computadora en particular que se use, aislándolo especialmente del procesamiento referido a las características internas de: memoria, discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel, herramientas y utilidades de apoyo que permiten su mantenimiento. Incluye entre otros:
    • Sistemas operativos
    • Controladores de dispositivos
    • Herramientas de diagnóstico
    • Herramientas de Corrección y Optimización
    • Servidores
    • Utilidades
  • Software de programación: Es el conjunto de herramientas que permiten al programador desarrollar programas informáticos, usando diferentes alternativas y lenguajes de programación, de una manera práctica. Incluye entre otros:
    • Editores de texto
    • Compiladores
    • Intérpretes
    • Enlazadores
    • Depuradores
    • Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma tal que el programador no necesite introducir múltiples comandos para compilar, interpretar, depurar, etc. Habitualmente cuentan con una avanzada interfaz gráfica de usuario (GUI).

  • Software de aplicación: Es aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios. Incluye entre otros:

Hardware

Hardware pertenece a todas las partes visibles de una computadora: sus elementos eléctricos, electrónicos, electromecánicos y mecánicos; sus cables, gabinetes o cajas, periféricos de todo tipo y cualquier otro elemento físico involucrado; contrariamente, el soporte lógico es intangible y es llamado software. El término es propio del idioma inglés (literalmente traducido: partes duras), su traducción al español no tiene un significado acorde, por tal motivo se la ha adoptado tal cual es y suena; la Real Academia Española lo define como «Conjunto de los componentes que integran la parte material de una computadora».El término, aunque es lo más común, no solamente se aplica a una computadora tal como se la conoce, ya que, por ejemplo, un robot, un teléfono móvil, una cámara fotográfica o un reproductor multimedia también poseen hardware (y software).

El término hardware tampoco correspondería a un sinónimo exacto de «componentes informáticos», ya que esta última definición se suele limitar exclusivamente a las piezas y elementos internos, independientemente de los periféricos.

La historia del hardware del computador se puede clasificar en cuatro generaciones, cada una caracterizada por un cambio tecnológico de importancia. Este hardware se puede clasificar en: básico, el estrictamente necesario para el funcionamiento normal del equipo; y complementario, el que realiza funciones específicas.

Un sistema informático se compone de una unidad central de procesamiento (CPU), encargada de procesar los datos, uno o varios periféricos de entrada, los que permiten el ingreso de la información y uno o varios periféricos de salida, los que posibilitan dar salida (normalmente en forma visual o auditiva) a los datos procesados.

Tipos de hardware

Una de las formas de clasificar el Hardware es en dos categorías: por un lado, el "básico", que abarca el conjunto de componentes indispensables necesarios para otorgar la funcionalidad mínima a una computadora, y por otro lado, el Hardware "complementario", que, como su nombre lo indica, es el utilizado para realizar funciones específicas (más allá de las básicas), no estrictamente necesarias para el funcionamiento de la computadora.

Así es que: Un medio de entrada de datos, la unidad de procesamiento (C.P.U.), la memoria RAM, un medio de salida de datos y un medio de almacenamiento constituyen el "hardware básico".

Los medios de entrada y salida de datos estrictamente indispensables dependen de la aplicación: desde el punto de vista de un usuario común, se debería disponer, al menos, de un teclado y un monitor para entrada y salida de información, respectivamente; pero ello no implica que no pueda haber una computadora (por ejemplo controlando un proceso) en la que no sea necesario teclado ni monitor, bien puede ingresar información y sacar sus datos procesados, por ejemplo, a través de una placa de adquisición/salida de datos.

Las computadoras son aparatos electrónicos capaces de interpretar y ejecutar instrucciones programadas y almacenadas en su memoria, ellas consisten básicamente en operaciones aritmético-lógicas y de entrada/salida. Se reciben las entradas (datos), se las procesa y almacena (procesamiento), y finalmente se producen las salidas (resultados del procesamiento). Por ende todo sistema informático tiene, al menos, componentes y dispositivos hardware dedicados a alguna de las funciones antedichas; a saber:

1. Procesamiento: Unidad Central de Proceso o CPU

2. Almacenamiento: Memorias

3. Entrada: Periféricos de Entrada (E)

4. Salida: Periféricos de salida (S)

5. Entrada/Salida: Periféricos mixtos (E/S)

Desde un punto de vista básico y general, un dispositivo de entrada es el que provee el medio para permitir el ingreso de información, datos y programas (lectura); un dispositivo de salida brinda el medio para registrar la información y datos de salida (escritura); la memoria otorga la capacidad de almacenamiento, temporal o permanente (almacenamiento); y la CPU provee la capacidad de cálculo y procesamiento de la información ingresada (transformación).

Un periférico mixto es aquél que puede cumplir funciones tanto de entrada como de salida, el ejemplo más típico es el disco rígido (ya que en él se lee y se graba información y datos).

Unidad central de procesamiento

La CPU, siglas en inglés de Unidad Central de Procesamiento, es la componente fundamental del computador, encargada de interpretar y ejecutar instrucciones y de procesar datos. En los computadores modernos, la función de la CPU la realiza uno o más microprocesadores. Se conoce como microprocesador a un CPU que es manufacturado como un único circuito integrado.

Un servidor de red o una máquina de cálculo de alto rendimiento (supercomputación), puede tener varios, incluso miles de microprocesadores trabajando simultáneamente o en paralelo (multiprocesamiento); en este caso, todo ese conjunto conforma la CPU de la máquina.

Las unidades centrales de proceso (CPU) en la forma de un único microprocesador no sólo están presentes en las computadoras personales (PC), sino también en otros tipos de dispositivos que incorporan una cierta capacidad de proceso o "inteligencia electrónica"; como pueden ser: controladores de procesos industriales , televisores, automóviles, calculadores, aviones, teléfonos móviles, electrodomésticos, juguetes y muchos más. Actualmente los diseñadores y fabricantes más populares de microprocesadores de PC son Intel y AMD; y para el mercado de dispositivos móviles y de bajo consumo, los principales son Samsung, Qualcomm y Texas Instruments.

Placa base formato ATX.

El microprocesador se monta en la llamada placa base, sobre el un zócalo conocido como zócalo de CPU, que permite las conexiones eléctricas entre los circuitos de la placa y el procesador. Sobre el procesador ajustado a la placa base se fija un disipador térmico de un material con elevada conductividad térmica, que por lo general es de aluminio, en algunos casos de cobre; éste es indispensable en los microprocesadores que consumen bastante energía, la cual, en gran parte, es emitida en forma de calor: En algunos casos pueden consumir tanta energía como una lámpara incandescente (de 40 a 130 vatios). Adicionalmente, sobre el disipador se acopla uno o dos ventiladores (raramente más), destinados a forzar la circulación de aire para extraer más rápidamente el calor acumulado por el disipador, y originado en el microprocesador. Complementariamente, para evitar daños por efectos térmicos, también se suelen instalar sensores de temperatura del microprocesador y sensores de revoluciones del ventilador, así como sistemas automáticos que controlan la cantidad de revoluciones por unidad de tiempo de estos últimos.

La gran mayoría de los circuitos electrónicos e integrados que componen el hardware del computador van montados en la placa madre.

La placa madre, también conocida como placa base o con el anglicismo board, es un gran circuito impreso sobre el que se suelda el chipset, las ranuras de expansión (slots), los zócalos, conectores, diversos integrados, etc. Es el soporte fundamental que aloja y comunica a todos los demás componentes: Procesador, módulos de memoria RAM, tarjetas gráficas, tarjetas de expansión, periféricos de entrada y salida. Para comunicar esos componentes, la placa base posee una serie de buses mediante los cuales se trasmiten los datos dentro y hacia afuera del sistema.

La tendencia de integración ha hecho que la placa base se convierta en un elemento que incluye también la mayoría de las funciones básicas (vídeo, audio, red, puertos de varios tipos), funciones que antes se realizaban con tarjetas de expansión. Aunque ello no excluye la capacidad de instalar otras tarjetas adicionales específicas, tales como capturadoras de vídeo, tarjetas de adquisición de datos, etc.

La tendencia en los últimos años es eliminar elementos separados en la placa base e integrarlos al microprocesador.

Memoria RAM

Del inglés Random Access Memory, literalmente significa "memoria de acceso aleatorio". El término tiene relación con la característica de presentar iguales tiempos de acceso a cualquiera de sus posiciones (ya sea para lectura o para escritura). Esta particularidad también se conoce como "acceso directo", en contraposición al Acceso secuencial.

La RAM es la memoria utilizada en una computadora para el almacenamiento transitorio y de trabajo (no masivo). En la RAM se almacena temporalmente la información, datos y programas que la Unidad de Procesamiento (CPU) lee, procesa y ejecuta. La memoria RAM es conocida como Memoria principal de la computadora, también como "Central o de Trabajo"; [14] a diferencia de las llamadas memorias auxiliares, secundarias o de almacenamiento masivo (como discos duros, unidades de estado sólido, cintas magnéticas u otras memorias).

Las memorias RAM son, comúnmente, volátiles; lo cual significa que pierden rápidamente su contenido al interrumpir su alimentación eléctrica.

Las más comunes y utilizadas como memoria central son "dinámicas" (DRAM), lo cual significa que tienden a perder sus datos almacenados en breve tiempo (por descarga, aún estando con alimentación eléctrica), por ello necesitan un circuito electrónico específico que se encarga de proveerle el llamado "refresco" (de energía) para mantener su información.

La memoria RAM de un computador se provee de fábrica e instala en lo que se conoce como “módulos”. Ellos albergan varios circuitos integrados de memoria DRAM que, conjuntamente, conforman toda la memoria principal.

Memoria RAM dinámica

Es la presentación más común en computadores modernos (computador personal, servidor); son tarjetas de circuito impreso que tienen soldados circuitos integrados de memoria por una o ambas caras, además de otros elementos, tales como resistencias y capacitores. Esta tarjeta posee una serie de contactos metálicos (con un recubrimiento de oro) que permite hacer la conexión eléctrica con el bus de memoria del controlador de memoria en la placa base.

Los integrados son de tipo DRAM, memoria denominada "dinámica", en la cual las celdas de memoria son muy sencillas (un transistor y un condensador), permitiendo la fabricación de memorias con gran capacidad (algunos cientos de Megabytes) a un costo relativamente bajo.

Las posiciones de memoria o celdas, están organizadas en matrices y almacenan cada una un bit. Para acceder a ellas se han ideado varios métodos y protocolos cada uno mejorado con el objetivo de acceder a las celdas requeridas de la manera más eficiente posible.

Memorias RAM con tecnologías usadas en la actualidad.

Entre las tecnologías recientes para integrados de memoria DRAM usados en los módulos RAM se encuentran:

* SDR SDRAM: Memoria con un ciclo sencillo de acceso por ciclo de reloj. Actualmente en desuso, fue popular en los equipos basados en el Pentium III y los primeros Pentium 4.

* DDR SDRAM: Memoria con un ciclo doble y acceso anticipado a dos posiciones de memoria consecutivas. Fue popular en equipos basados en los procesadores Pentium 4 y Athlon 64.

* DDR2 SDRAM: Memoria con un ciclo doble y acceso anticipado a cuatro posiciones de memoria consecutivas.

* DDR3 SDRAM: Memoria con un ciclo doble y acceso anticipado a ocho posiciones de memoria consecutivas. Es el tipo de memoria más actual, está reemplazando rápidamente a su predecesora, la DDR2.

Los estándares JEDEC, establecen las características eléctricas y las físicas de los módulos, incluyendo las dimensiones del circuito impreso.

Los estándares usados actualmente son:

* DIMM Con presentaciones de 168 pines (usadas con SDR y otras tecnologías antiguas), 184 pines (usadas con DDR y el obsoleto SIMM) y 240 (para las tecnologías de memoria DDR2 y DDR3).

* SO-DIMM Para computadores portátiles, es una miniaturización de la versión DIMM en cada tecnología. Existen de 144 pines (usadas con SDR), 200 pines (usadas con DDR y DDR2) y 240 pines (para DDR3).

Memorias RAM especiales

Hay memorias RAM con características que las hacen particulares, y que normalmente no se utilizan como memoria central de la computadora; entre ellas se puede mencionar:

* SRAM: Siglas de Static Random Access Memory. Es un tipo de memoria más rápida que la DRAM (Dynamic RAM). El término "estática" deriva del hecho que no necesita el refresco de sus datos. Si bien esta RAM no requiere circuito de refresco, ocupa más espacio y utiliza más energía que la DRAM. Este tipo de memoria, debido a su alta velocidad, es usada como memoria caché.

* NVRAM: Siglas de Non-Volatile Random Access Memory. Memoria RAM no volátil (mantiene la información en ausencia de alimentación eléctrica). Hoy en día, la mayoría de memorias NVRAM son memorias flash, muy usadas para teléfonos móviles y reproductores portátiles de MP3.

* VRAM: Siglas de Video Random Access Memory. Es un tipo de memoria RAM que se utiliza en las tarjetas gráficas del computador. La característica particular de esta clase de memoria es que es accesible de forma simultánea por dos dispositivos. Así, es posible que la CPU grabe información en ella, al tiempo que se leen los datos que serán visualizados en el Monitor de computadora.

De las anteriores a su vez, hay otros subtipos más.

Periféricos

Se entiende por periférico a las unidades o dispositivos que permiten a la computadora comunicarse con el exterior, esto es, tanto ingresar como exteriorizar información y datos.[10] Los periféricos son los que permiten realizar las operaciones conocidas como de entrada/salida (E/S). Aunque son estrictamente considerados “accesorios” o no esenciales, muchos de ellos son fundamentales para el funcionamiento adecuado de la computadora moderna; por ejemplo, el teclado, el disco duro y el monitor son elementos actualmente imprescindibles; pero no lo son un escáner o un plóter. Para ilustrar este punto: en los años 80, muchas de las primeras computadoras personales no utilizaban disco duro ni mouse (o ratón), tenían sólo una o dos disqueteras, el teclado y el monitor como únicos periféricos.

Dispositivos de entrada de información (E)

Teclado para PC inalámbrico.

Ratón (Mouse) común alámbrico.

De esta categoría son aquellos que permiten el ingreso de información, en general desde alguna fuente externa o por parte del usuario. Los dispositivos de entrada proveen el medio fundamental para transferir hacia la computadora (más propiamente al procesador) información desde alguna fuente, sea local o remota. También permiten cumplir la esencial tarea de leer y cargar en memoria el sistema operativo y las aplicaciones o programas informáticos, los que a su vez ponen operativa la computadora y hacen posible realizar las más diversas tareas. Entre los periféricos de entrada se puede mencionar: teclado, mouse o ratón, escáner, micrófono, cámara web , lectores ópticos de código de barras, Joystick, lectora de CD, DVD o BluRay (sólo lectoras), placas de adquisición/conversión de datos, etc.

Pueden considerarse como imprescindibles para el funcionamiento, (de manera como hoy se concibe la informática) al teclado, al ratón y algún dispositivo lector de discos; ya que tan sólo con ellos el hardware puede ponerse operativo para un usuario. Los otros son más bien accesorios, aunque en la actualidad pueden resultar de tanta necesidad que son considerados parte esencial de todo el sistema.

Impresora de inyección de tinta.

Dispositivos de salida de información (S)

Son aquellos que permiten emitir o dar salida a la información resultante de las operaciones realizadas por la CPU (procesamiento). Los dispositivos de salida aportan el medio fundamental para exteriorizar y comunicar la información y datos procesados; ya sea al usuario o bien a otra fuente externa, local o remota. Los dispositivos más comunes de este grupo son los monitores clásicos (no de pantalla táctil), las impresoras, y los altavoces. Entre los periféricos de salida puede considerarse como imprescindible para el funcionamiento del sistema, al monitor. Otros, aunque accesorios, son sumamente necesarios para un usuario que opere un computador moderno.

Dispositivos mixtos (E/S de información)

Piezas de un Disco duro.

Son aquellos dispositivos que pueden operar de ambas formas: tanto de entrada como de salida. Típicamente, se puede mencionar como periféricos mixtos o de Entrada/Salida a: discos rígidos, disquetes, unidades de cinta magnética, lecto-grabadoras de CD/DVD, discos ZIP, etc. También entran en este rango, con sutil diferencia, otras unidades, tales como: Tarjetas de Memoria flash o unidad de estado sólido, tarjetas de red, módems, tarjetas de captura/salida de vídeo, etc.

Si bien se puede clasificar al pendrive (lápiz de memoria), memoria flash o memoria USB o unidades de estado sólido en la categoría de memorias, normalmente se los utiliza como dispositivos de almacenamiento masivo; siendo todos de categoría Entrada/Salida.

Los dispositivos de almacenamiento masivo también son conocidos como "Memorias Secundarias o Auxiliares". Entre ellos, sin duda, el disco duro ocupa un lugar especial, ya que es el de mayor importancia en la actualidad, en el que se aloja el sistema operativo, todas las aplicaciones, utilitarios, etc. que utiliza el usuario; además de tener la suficiente capacidad para albergar información y datos en grandes volúmenes por tiempo prácticamente indefinido. Los servidores Web, de correo electrónico y de redes con bases de datos, utilizan discos rígidos de grandes capacidades y con una tecnología que les permite trabajar a altas velocidades como SCSI incluyendo también, normalmente, capacidad de redundancia de datos RAID; incluso utilizan tecnologías híbridas: disco rígido y unidad de estado sólido, lo que incrementa notablemente su eficiencia. Las interfaces actuales más usadas en discos duros son: IDE, SATA, SCSI y SAS; y en las unidades de estado sólido son SATA y PCI-Express ya que necesitan grandes anchos de banda.

La pantalla táctil (no el monitor clásico) es un dispositivo que se considera mixto, ya que además de mostrar información y datos (salida) puede actuar como un dispositivo de entrada, reemplazando, por ejemplo, a algunas funciones del ratón o del teclado.

Hardware gráfico

El hardware gráfico lo constituyen básicamente las tarjetas gráficas. Dichos componentes disponen de su propia memoria y unidad de procesamiento, esta última llamada unidad de procesamiento gráfico (o GPU, siglas en inglés de Graphics Processing Unit). El objetivo básico de la GPU es realizar los cálculos asociados a operaciones gráficas, fundamentalmente en coma flotante, [16] liberando así al procesador principal (CPU) de esa costosa tarea (en tiempo) para que éste pueda efectuar otras funciones en forma más eficiente. Antes de esas tarjetas de vídeo con aceleradores por hardware, era el procesador principal el encargado de construir la imagen mientras la sección de vídeo (sea tarjeta o de la placa base) era simplemente un traductor de las señales binarias a las señales requeridas por el monitor; y buena parte de la memoria principal (RAM) de la computadora también era utilizada para estos fines.

Dentro de ésta categoría no se deben omitir los sistemas gráficos integrados (IGP), presentes mayoritariamente en equipos portátiles o en equipos prefabricados (OEM), los cuales generalmente, a diferencia de las tarjetas gráficas, no disponen de una memoria dedicada, utilizando para su función la memoria principal del sistema. La tendencia en los últimos años es integrar los sistemas gráficos dentro del propio procesador central. Los procesadores gráficos integrados (IGP) generalmente son de un rendimiento y consumo notablemente más bajo que las GPU de las tarjetas gráficas dedicadas, no obstante, son más que suficiente para cubrir las necesidades de la mayoría de los usuarios de un PC. Actualmente se están empezando a utilizar las tarjetas gráficas con propósitos no exclusivamente gráficos, ya que en potencia de cálculo la GPU es superior, más rápida y eficiente que el procesador para operaciones en coma flotante, por ello se está tratando de aprovecharla para propósitos generales, al concepto, relativamente reciente, se le denomina GPGPU (General-Purpose Computing on Graphics Processing Units).

La Ley de Moore establece que cada 18 a 24 meses la cantidad de transistores que puede contener un circuito integrado se logra duplicar; en el caso de los GPU esta tendencia es bastante más notable, duplicando, o aún más, lo indicado en la ley de Moore. Desde la década de 1990, la evolución en el procesamiento gráfico ha tenido un crecimiento vertiginoso; las actuales animaciones por computadoras y videojuegos eran impensables veinte años atrás.