qué es una computadora

15
¿Qué es una computadora? Una computadora es un dispositivo capaz de realizar cálculos y tomar decisiones lógicas a velocidades de millones (incluso miles de millones) de veces más rápidas que los humanos. Por ejemplo, muchas de las computadoras personales actuales pueden realizar miles de millones de sumas por segundo. Una persona con una calculadora podría requerir toda una vida para completar el mismo número de operaciones que una poderosa computadora realiza en un segundo. (Puntos a considerar; ¿cómo sabría que una persona realizó los cálculos de manera conecta? ¿Cómo sabría que la computadora lo hizo de manera correcta?) ¡Las supercomputadoras actuales más rápidas pueden realizar miles de millones de sumas por segundo! ¡Y en los laboratorios de investigación se encuentran otras que pueden realizar billones de instrucciones por segundo! Las computadoras procesan los datos bajo el control de conjuntos de instrucciones llamadas programas de cómputo. Estos programas de cómputo guían a la computadora a través de conjuntos ordenados de acciones especificados por personas llamadas programadores de computadoras. Una computadora está compuesta por varios dispositivos (tales como el teclado, el monitor, el “ratón”, discos, memoria, DVD, CD-ROM y unidades de procesamiento) conocidos como hardware. A los programas de .cómputo que se ejecutan dentro de una computadora se les denomina software. En años recientes, los costos de las piezas de hardware han disminuido de manera espectacular, al punto de que las computadoras persona les se han convertido en artículos domésticos. Por desgracia, los costos para el desarrollo de programas se incrementan de manera constante conforme los programadores desarrollan aplicaciones más complejas y poderosas, sin que exista una mejora significativa en la tecnología para el desarrollo de software. En este libro aprenderá métodos comprobados para el desarrollo de software que están ayudando a las empresas a

Upload: jeremias-lopez-de-leon

Post on 28-Sep-2015

212 views

Category:

Documents


0 download

DESCRIPTION

z

TRANSCRIPT

Qu es una computadora?Una computadora es un dispositivo capaz de realizar clculos y tomar decisiones lgicas a velocidades de millones (incluso miles de millones) de veces ms rpidas que los humanos. Por ejemplo, muchas de las computadoras personales actuales pueden realizar miles de millones de sumas por segundo. Una persona con una calculadora podra requerir toda una vida para completar el mismo nmero de operaciones que una poderosa computadora realiza en un segundo. (Puntos a considerar; cmo sabra que una persona realiz los clculos de manera conecta? Cmo sabra que la computadora lo hizo de manera correcta?) Las supercomputadoras actuales ms rpidas pueden realizar miles de millones de sumas por segundo! Y en los laboratorios de investigacin se encuentran otras que pueden realizar billones de instrucciones por segundo! Las computadoras procesan los datos bajo el control de conjuntos de instrucciones llamadas programas de cmputo. Estos programas de cmputo guan a la computadora a travs de conjuntos ordenados de acciones especificados por personas llamadas programadores de computadoras. Una computadora est compuesta por varios dispositivos (tales como el teclado, el monitor, el ratn, discos, memoria, DVD, CD-ROM y unidades de procesamiento) conocidos como hardware. A los programas de .cmputo que se ejecutan dentro de una computadora se les denomina software. En aos recientes, los costos de las piezas de hardware han disminuido de manera espectacular, al punto de que las computadoras persona les se han convertido en artculos domsticos. Por desgracia, los costos para el desarrollo de programas se incrementan de manera constante conforme los programadores desarrollan aplicaciones ms complejas y poderosas, sin que exista una mejora significativa en la tecnologa para el desarrollo de software. En este libro aprender mtodos comprobados para el desarrollo de software que estn ayudando a las empresas a controlar e incluso a reducir sus costos (programacin estructurada, mejoramiento paso a paso, uso de funciones, programacin basada en objetos, programacin orientada a objetos, diseo orientado a objetos y programacin genrica).Organizacin de computadorasIndependientemente de la apariencia fsica, casi siempre podemos representar a las computadoras mediante seis unidades o secciones lgicas'.1. Unidad de entrada. sta es la seccin receptora de la computadora. Obtiene informacin (datos y programas de cmputo) desde varios dispositivos de entrada y pone esta informacin a disposicin de las otras unidades para que la informacin pueda procesarse. La mayor parte de la informacin se introduce a travs del teclado y el ratn. La informacin tambin puede introducirse hablando con su computadora, digitalizando las imgenes y mediante la recepcin de informacin desde una red, como Internet.2. Unidad de salida. sta es la seccin de embarque de la computadora. Toma informacin que ya ha sido procesada por la computadora y la coloca en los diferentes dispositivos de salida, para que la informacin est disponible fuera de la computadora. La mayor parte de la informacin de salida se despliega en el monitor, se imprime en papel, o se utiliza para controlar otros dispositivos. Las computadoras tambin pueden dar salida a su informacin a travs de redes, tales como Internet.3. Unidad de memoria. sta seccin funciona en la computadora como un almacn de acceso rpido, pero con una capacidad relativamente baja. sta retiene la informacin que se introduce a travs de la unidad de entrada, de manera que la informacin pueda estar disponible de manera inmediata para pro cesarla cuando sea necesario. La unidad de memoria tambin retiene la informacin procesada, hasta que la unidad de salida pueda colocarla en los dispositivos de salida. Con frecuencia, a la unidad de memoria se le llama memoria o memoria principal.4. Unidad aritmtica y lgica (ALU). sta es la seccin de manufactura de la computadora. Es la responsable de realizar clculos tales como suma, resta, multiplicacin y divisin. Contiene los mecanismos de decisin que permiten a la computadora hacer cosas como, por ejemplo, comparar dos elementos de la unidad de memoria para determinar si son iguales o no.5. Unidad central de procesamiento (CPU). sta es la seccin administrativa de la computadora; es quien coordina y supervisa la operacin de las dems secciones. La CPU le indica a la unidad de entrada cundo debe grabarse la informacin dentro de la unidad de memoria, le indica a la ALU cun do debe utilizarse la informacin de la unidad de memoria para los clculos, y le indica a la unidad de salida cundo enviar la informacin desde la unidad de memoria hacia ciertos dispositivos de salida. Muchas de las computadoras actuales contienen mltiples unidades de procesamiento y, por lo tanto, pueden realizar mltiples operaciones de manera simultnea (a estas computadoras se les conoce como multiprocesadoras).6. Unidad secundaria de almacenamiento. ste es el almacn de alta capacidad y de larga duracin de la computadora. Los programas o datos que no se encuentran en ejecucin por las otras unidades, normalmente se colocan dentro de dispositivos de almacenamiento secundario (tales como discos) hasta que son requeridos de nuevo, posiblemente horas, das, meses o incluso aos despus. El tiempo para acceder a la informacin en almacenamiento secundario es mucho mayor que el necesario para acceder a la de la memoria principal, pero el costo por unidad de memoria secundaria es mucho menor que el correspondiente a la unidad de memoria principal.Evolucin de los sistemas operativosLas primeras computadoras eran capaces de realizar solamente una tarea o trabajo a la vez. A esta forma de operacin de la computadora a menudo se le conoce como procesamiento por lotes (batch) de un solo usuario. La computadora ejecuta un solo programa a la vez, mientras procesa los datos en gmpos o lotes. En estos primeros sistemas, los usuarios generalmente asignaban sus trabajos a un centro de cmputo que los introduca en paquetes de tarjetas perforadas. A menudo tenan que esperar horas, e incluso das, antes de que sus resultados impresos regresaran a sus escritorios. Los sistemas de software denominados sistemas operativos fueron desarrollados para hacer ms fcil el uso de la computadora. Los primeros sistemas operativos administraban la suave transicin entre tareas. Esto minimiz el tiempo necesario para que los operadores de computadoras pasaran de una tarea a otra, y por con siguiente increment la cantidad de trabajo, o d flujo de datos, que las computadoras podan procesar. Conforme las computadoras se volvieron ms poderosas, se hizo evidente que un proceso por lotes para un solo usuario rara vez aprovechaba los recursos de la computadora de manera eficiente, debido al tiempo que se malgastaba esperando a que los lentos dispositivos de entrada/salida completaran sus tareas. Se pens que era posible realizar muchas tareas o trabajos que podran compartir los recursos de la computadora y lograr un uso ms eficiente de sta. A esto se le conoce como multiprogramacin. La multiprogramacin significa la opera cin simultnea de muchas tareas dentro de la computadora (la computadora comparte sus recursos entre los trabajos que compiten por su atencin). En los primeros sistemas operativos con multiprogramacin, los usuarios an tenan que enviar sus trabajos mediante paquetes de tarjetas perforadas y esperar horas o das por sus resultados. En la dcada de los sesenta, muchos grupos de la industria y de las universidades marcaron los rumbos de los sistemas operativos de tiempo compartido. El tiempo compartido es un caso especial de la multiprogra macin, en el cual, los usuarios acceden a la computadora a travs de terminales', por lo general, dispositivos compuestos por un teclado y un monitor. En un tpico sistema de cmputo de tiempo compartido puede haber docenas o incluso cientos de usuarios compartiendo la computadora al mismo tiempo. La computadora en realidad no ejecuta los procesos de todos los usuarios a la vez. sta hace el trabajo tan rpido que puede proporcionar el servicio a cada usuario varias veces por segundo. As, los programas de los usuarios aparentemente se ejecutan de manera simultnea. Una ventaja del tiempo compartido es que el usuario recibe respuestas casi inmediatas a las peticiones, en vez de tener que esperar los resultados durante largos periodos, como en los comienzos de la computacin.Como programar en c/c++ y javaMicroprocesadores para Computadoras Tipo PCEl primer microprocesador que se dise y comercializ fue el 4004 de Intel, en 1971. Slo tena capacidad para realizar algunas operaciones matemticas sencillas, mediante el manejo de una palabra de 4 bits y el acceso a unos cuantos niveles de memoria (1 nibble = 4 bits), pero su presencia en el mercado, marc el inicio de una verdadera revolucin en el mundo de la electrnica y la informtica (de hecho, en ese sencillo circuito integrado de 16 termina- les se reuna un poder de clculo equivalente al de una computado- ra de miles de dlares de los aos 60). As, el uso de computadoras que utilizan microprocesadores cada vez ms poderosos, compactos y baratos, se ha ampliado a casi todas las actividades humanas, as se ha constituido en una potente palanca de desarrollo. En la prctica, la revolucin de los microprocesadores se ha sus- tentado en dos grandes pilares:1) En las tcnicas de fabricacin de los circuitos integrados, diminutas pastillas de silicio que contienen en su interior miles o millones de transistores conecta- dos entre s para formar un arreglo lgico. En la actualidad, se ha reducido el tamao de los transistores grabados sobre la oblea de silicio, desde varios micrmetros de dimetro hasta desembocar en los modernos microprocesadores que usan tecnologa de 0,35 micrones. Incluso, se est experimentando para reducir este parmetro a 0,25 micrones o menos. Este avance ha permitido fabricar circuitos cada vez ms complejos, poderosos y veloces a costos decrecientes.2) En el esquema de trabajo del microprocesador, donde per- mite sustanciales modificaciones en su arquitectura interna y en su soporte lgico. As, los microprocesadores con una sola lnea de ejecucin y una escasa variedad de instrucciones permitidas, han sido perfecciona- dos. Ahora son innovadores dispositivos que poseen mltiples ramas de ejecucin, circuitos predictores de operaciones, bloques de memoria cach interna, coprocesador matemtico incorporado en la estructura del mismo chip, etc. Por lo anterior, ahora se puede adquirir una mquina muy pode- rosa (unas 100 veces ms rpida que una XT original, e incluso ms) por la misma cantidad de dinero que costaba una computadora personal de principio de los aos 80, lo que a la vez ha favorecido su masificacin entre los pequeos usuarios. Los elementos que contribuyeron a la rpida expansin de la plataforma PC son muchos y muy variados, pero es indudable que la piedra angular en la que descansa la popularidad y podero de estas mquinas radica en los microprocesadores, ncleo principal en donde se realiza la mayor parte del proceso de datos en una computadora. Es por ello que incluimos este apndice, donde hacemos un recuento de las caractersticas de los microprocesadores usados en la plataforma PC.Como funciona un microprocesadorEl microprocesador que compone la unidad central de procesa- miento de la computadora, o CPU, es su cerebro, su mensajero, su maestro y su comandante. Todos los dems componentes (la RAM, el disco rgido, el monitor, etc.) estn solamente para establecer el contacto entre el procesador y el usuario. Reciben sus datos, los pasan al procesador para su manipulacin y luego se presentan los resultados. En la mayora de las PC actuales, la CPU no es el nico microprocesador ya que existen coprocesadores en placas acelera- doras de video para Windows y placas de sonido, que preparan los datos que se deben mostrar y los datos de sonido para aliviar a la CPU de parte de su carga. Tambin hay procesadores especiales, como los del interior del teclado, que tratan seales procedentes de una secuencia de teclas presiona- das, realizan tareas especializadas para abastecer de datos a la CPU u obtenerlos desde ella, etc. En esta nota, veremos cmo realmente funciona el microprocesador.El procesador de alto desempeo comnmente utilizado en la actualidad es el chip Pentium (la versin III es la ms empleada) de Intel. En un chip de silicio de aproximadamente una pulgada cuadrada (un cuadrado de aproximadamente 2,5cm de lado), el Pentium encierra 3,1 millones de transistores o diminutas llaves electrnicas. Todas las operaciones del Pentium se realizan por seales que conectan o desconectan diferentes combinaciones de estas llaves. En las computadoras, los transistores se usan para representar 0 y 1, los dos nmeros que pertenecen al sistema de numeracin binaria. Estos 0 y 1 se conocen comn- mente como bits. Varios grupos de estos transistores forman los sub- componentes del Pentium. La mayora de los componentes del Pentium estn proyectados para mover rpidamente datos dentro y fuera del chip y asegurar que las partes del Pentium no que- den inactivas porque aguardan ms datos o instrucciones. Estos componentes reciben el flujo de datos y de instrucciones para el procesador, interpretan las instrucciones de manera que el procesador pueda ejecutarlas y devuelven los resultados a la memoria de la PC. Lo ideal es que el procesador ejecute una instruccin con cada oscilacin de reloj del computador, que regula la velocidad con que el sistema funciona. El Pentium ostenta evoluciones, comparado con su antecesor, el procesador 80486 de Intel, que garantizan que los movimientos de datos y de instrucciones a travs del Pentium se harn lo ms rpidamente posible. Una de las modificaciones ms importantes est en la Unidad Lgico-Aritmtica (ULA). Imagine a ULA como un tipo de cerebro dentro del cerebro. La ULA realiza todos el trata- miento de datos que contengan enteros, o sea: nmeros enteros como 1, 23, 610,234 o -123. El Pentium es el primer procesador de Intel que tiene dos ULA, de manera que procesa dos conjuntos de nmeros al mismo tiempo. Como el 486, el Pentium posee una unidad de clculo por separado, optimizada para tratar nmero en punto fluctuante, es decir: nmeros con fracciones decimales como 1,2; 35,8942; 0,317 o -93,2. Otra diferencia significativa sobre el 486 es que el Pentium recibe datos a 64 bits por vez, mientras que la va de datos del 486 es de 32 bits. En tanto el 486 posee una rea de almacenamiento llamada de cache, que contiene 8 kilobytes de, el Pentium posee dos memorias caches de 8k. Una para los datos y otra para los cdigos de las instrucciones, ambas proyectadas para garantizar que la ULA est constantemente abastecida con los datos de las instrucciones que precisa para hacer sus tareas. En muchas operaciones, el Pentium ejecuta un programa dos veces ms rpidamente que el 486. Pero el potencial completo del Pentium no se aprovecha en su totalidad, a menos que el programa se haya creado especialmente para usar las caractersticas del procesador Pentium.

Damos a continuacin, las referencias correspondientes a la fi- gura 4. 1) Una parte del Pentium, llamada unidad de interface con el bus o barra (BIU), recibe los datos y los cdigos de instrucciones de memoria de acceso aleatorio (RAM) de la computadora. El procesador est conectado a la RAM a travs de los circuitos de la placa madre de la PC, conocidos como bus, palabra de origen ingls. Los datos se trasladan hacia el procesador a 64 bits por vez. 2) La unidad que acta de interface con el bus enva datos y cdigos por dos vas separadas que reciben, cada una, 64 bits por vez. Una va conduce la unidad de almacenamiento de 8k, o cache, usa- dos para los datos. La otra va conduce una cache idntica, usada exclusivamente para el cdigo que indica al procesador lo que har con los datos. Los cdigos y datos permanecen en las dos caches hasta que el procesador los precise.3) Mientras el cdigo aguarda en su cache, otra parte de la CPU, llamada unidad de previsin de desvo inspecciona las instrucciones y determina cul de las dos unidades lgico-aritmticas (ULA) los tratar ms eficazmente. Esta inspeccin garantiza que una de las ULA no quede esperando mientras la otra termina de ejecutar una instruccin. 4) El almacenamiento temporario de pre bsqueda de instrucciones recupera el cdigo identificado por la unidad de presin y la unidad de decodificacin traduce el cdigo de programa como instrucciones que la ULA entender. 5) Si es preciso procesar nmeros de punto fluctuante -nmeros con fracciones decimales, como 23,7- pasarn a un procesador interno especializado, llamado unidad de punto fluctuante. 6) En el interior de la unidad de ejecucin, dos unidades lgico- aritmticas procesan exclusiva- mente todos los datos de enteros. Cada ULA recibe instrucciones de hasta 32 bits cada vez de la unidad de decodificacin.Cada ULA procesa sus propias instrucciones y usa simultnea- mente datos levantados del cache de datos, desde una especie de borrador electrnico llamado de registros. 7) Las dos unidades lgico- aritmticas y la unidad de punto fluctuante envan los resultados de su procesamiento para el cache de datos. El cache de datos enva los resultados hacia la unidad de interface con el bus que, a su vez, enva los resultados a la RAM.Los elementos que forman una PCSe puede decir que una computadora es una coleccin sin vida de placas metlicas y plsticas, cables y pedacitos de silicio. Al prender la mquina con la tecla Encender, una pequea corriente elctrica -de 3 a 5 volt de tensin, aproximadamente desencadena una serie de fenmenos para que dicho conjunto de elementos que permaneca como un exagerado peso muerto, cobre mgicamente, vida. Ya encendida, la PC inicia un ciclo bastante simple; un sensor primitivo verifica el funcionamiento de las partes instaladas, como si fuera un paciente que se recupera de un coma y desea comprobar si sus brazos y piernas responden eficazmente, pero no puede ni levantarse. Una PC es un conjunto de pie- zas muertas que recobra vida cuando se la pone en marcha, y es capaz de ejecutar una tarea de acuerdo con las instrucciones da- das por el operador.Una vez que se ha terminado el proceso de inicializacin, la PC no hace algo til, algo por lo que merezca juzgrsela "inteligente". Cuando mucho, recin encendida la PC est en condiciones de trabajar con inteligencia con la ayuda de un operador -entendemos aqu por inteligencia una forma del sistema operacional que otorga una estructura existencial primitiva-. Luego se debe poner en marcha un software aplicativo, es decir, programas que instruyen a la PC sobre cmo realizar tareas rpida- mente o con ms exactitud de la que lograramos nosotros. No todos los tipos de computa- doras deben pasar por este tortuoso renacimiento luego del encendido. Muchas computadoras recobran vitalidad total en cuanto estn encendidas; la cuestin es que a muchas de este tipo no las consideramos como tales, como por ejemplo las calculadoras, el encendido electrnico del auto, el temporizador del horno a microondas o el programador compacto de video- casete, los cuales tambin son computadoras. La diferencia con la gran caja que hay sobre su mesa est en las conexiones fsicas. Las computado- ras construidas para realizar apenas una tarea -en la que son muy eficientes, por cierto tienen conexiones fijas. Autotest de funcionamientoLuego de encendida la PC, para funcionar debe ejecutar un sistema operacional, pero antes de hacerlo precisa asegurarse que todos los componentes de hardware (partes mecnicas, elctricas y electrnicas que permiten la comunicacin entre el procesador central o unidad de procesamiento y el exterior) estn operando y que la CPU (unidad central de procesa- miento) y la memoria estn funcionando correctamente. De esto se ocupa el autotest de contacto o POST (power-on self test, en ingls). Lo primero que hace el POST, cuando encendemos la computa- dora, es comunicarnos cualquier problema de los componentes. Cuando el POST detecta un error en el monitor, en la memoria, en el teclado o en algn otro componen- te bsico, lo informa desplegando un mensaje en el monitor o, si el monitor es parte del problema, con una serie de bips. En general los bips no resultan tan claros como los mensajes en pantalla, para indicar errores. Avisan, en forma general, sobre la direccin del componente con problemas. La ejecucin de un bip mientras se cargan los comandos de DOS significa que el POST ha testeado todos los componentes. Pero cualquier otra combinacin de bips cortos o largos anuncia problemas. Tambin la ausencia total de bips indica algn problema.Para saber si existe algn problema de hardware o configuracin de partes, al encender una PC se ejecuta un programa de auto- testeo. Por medio de sonidos (bips) o mensajes en pantalla, el operador puede saber si existen problemas o errores.

La Placa Madre de la PCCOMO RECONOCER LOS ALCANCES DE UNA PLACA MADRE (MOTHERBOARDS)Todas las computa- doras personales PC o compatibles poseen lo que se denomina "Placa Madre" que es el corazn de la computa- dora, donde se alojan entre otras cosas, el microprocesador y los "slots" o conectores para colocar las diferentes placas que componen el sistema. Dentro de la placa madre existe "almacenado un cdigo de identificacin", llamado cdigo fuente, que es por intermedio del cual se establecen todas las comunicaciones internas. Existe gran cantidad de placas madre las cuales se las identifica por una "cadena de smbolos (nmeros y letras) que poseen un significado especfico.El propsito de este captulo es que Ud. se familiarice con los principales componentes de una computadora y sepa interpretar los cdigos identificatorios.Cadenas de identificacin de BIOS AMILa Placa Madre (del tipo AMI) personaliza el cdigo en ROM para un sistema en particular. La empresa fabricante de las placas no vende el cdigo fuente para el fabricante de la computadora. El fabricante de computadoras queconstruye las PC a partir de determinadas placas madre (muchas ve- ces llamado fabricante OEM) debe obtener cada versin nueva a medida que estn disponibles. Dicho de otra manera, la placa viene con su cdigo, si un armador, revendedor o fabricante de PC utiliza una placa sin licencia y no tiene el cdigo fuente, es posible que se encuentre en problemas. Ahora bien, los fabricantes OEMs no precisan o no desean cualquier versin desarrollada del cdigo fuente. Cuando se enciende la computadora, la cadena de identificacin del BIOS se presenta en la parte superior izquierda de la pantalla. Esta cadena nos da informaciones valiosas sobre cul es la versin del BIOS utilizada (cul es la versin de cdigo fuente empleado, en funcin de la placa madre con la cual se este operando), dando adems, informacin sobre ciertos parmetros que son determinados por la configuracin de la mquina.La cadena principal de identificacin de la BIOS (Cadena de ID N1) es presentada por informacin de la BIOS de la AMI durante el POST (Auto Test o conexin, Power On Self- Test) en el ngulo superior izquierdo de la pantalla, abajo del mensaje copyright. Dos cadenas adicionales de identificacin del BIOS (las Cadenas de ID N 2 y 3) pueden ser pre- sentadas por el BIOS Hi-Flex de la AMI presionando la tecla Insert durante el POST. Estas cadenas adicionales de identificacin muestran las opciones que estn instaladas en el BIOS. El formato general de la cadena N1 de identificacin del BIOS para las versiones ms antiguas del BIOS AMI se muestra en la tabla 1. Cabe aclarar que dicha cadena de identificacin posee 4 bloques de caracteres separados por un "-". El primer bloque es de tres caracteres, el segundo bloque tiene cuatro, el tercer bloque posee 6 y el ltimo bloque se compone de dos caracteres. La representacin de caracteres es:"ABBB-NNNN-mmddyy-KK"Por ejemplo, supongamos que al poner en marcha una PC antigua, verifica que en la parte superior de la pantalla aparece el cdigo:SNET-0135-04/11/92/01Dicho cdigo est diciendo que la placa madre es del tipo 286 (un poco vieja, no?) de C&T que fue licenciada bajo el nmero 0135 el 11 de abril de 1992 y que emplea la versin 01 del teclado. En la tabla 2 se dan los datos que identifican la cadena de identificacin de placas BIOS tipo Hiflex de AMI, que corresponden a placas madre ms recientes (si bien siguen siendo antiguas). Para que tenga una idea, son la mayora de las placas madre que ingresaron al pas hasta mediados de este ao (aunque se siguen detectando placas de este tipo en computadoras supuestamente sin uso pero a bajo precio).