Historia y Evolución de la PC – Jairo Uparella
Historia y Evolución de la PC – Jairo Uparella
Historia y Evolución de la
PC
Historia y Evolución de la PC – Jairo Uparella
Historia y Evolución de la
PC Jairo Uparella Prólogo y Revisión Técnica de
Alberto Newball Howard Suboficial A.R.C. – USA Navy Technical Assistant. Instructor del Centro de Entrenamiento Naval de Bolívar. Gerente de la División de Ingeniería de COMPUSISCA S.A.
Historia y Evolución de la PC – Jairo Uparella
No está permitida la reproducción parcial o total de este libro, ni su tratamiento informático, ni la transmisión de ninguna forma o por cualquier medio, ya sea electrónico, fotocopia o cualquier otro sin el permiso de los titulares del Copyright. Historia y Evolución de la PC Jairo Uparella ISBN 958-33-0388-7
[email protected] Copyright © 1996 – Soft & Easy del Caribe Ltda. Copyright © 2008 – Jairo Uparella E.U. – 3Dium - Ed.corregida para Internet Todos los derechos reservados CARTAGENA – COLOMBIA 2008 Diagramación, diseño de carátula e ilustraciones de Jairo Uparella Todos los derechos reservados Impreso por CASA EDITORIAL Cartagena D.T. y C. Colombia.
Historia y Evolución de la PC – Jairo Uparella
En mis primeros 10 años con la PC, dedicado a Maria Paulina mi hija, a mi madre y a mis hermanos.
Historia y Evolución de la PC – Jairo Uparella
Contenido Agradecimientos Prólogo Prefacio Introducción
i iii vii xi
Capítulo 1 Constitución de la XT El chip C.P.U. Constitución de la Motherboard Memorias y otros elementos de la XT El ROM-BIOS El coprocesador matemático Buses y conexiones Conexión de la Impresora Fuente de Voltaje Teclado Conjunto de Chips Resumen
1 1 3 4 5 5 6 6 8 10 10 11
Capítulo 2 Constitución de la AT286 El chip 80286 La Motherboard Memorias y el modo real Chips en la RAM Los SIMMs El Modo-Protegido y la Memoria Extendida Memoria Expandida Direccionamiento de la AT 286 Mapa de Memoria ¿Porqué ROM en RAM? Supuesto Direccionamiento del 286 Programas de Utilería El Código ASCII
13 13 13 15 16 17 18 18 19 22 24 25 27 30
Historia y Evolución de la PC – Jairo Uparella Chipsets y el bus ISA DMAs, IRQs, y Direcciones IOs DMAs Interrupciones IRQs El Stack de Interrupciones Más programas Direcciones IOs Velocidad y Tiempo CMOS y Jumpers. La Configuración de la AT 286 POST y Checkpoints Sonido
32 35 35 37 38 42 43 47 50 52 55 55
Capítulo 3 Constitución de la 386 El Chip 386SX La Motherboard Los Chipsets El Chip 386DX La Motherboard El Modo 386-Mejorado Memorias Cachés Organización de las Cachés Criterio de Escritura El Modo-Virtual 86 y el Modo-Protegido Memoria Virtual Los Archivos Swaps Direccionamiento con Memoria Virtual Las Multitareas y el Firmware
57 58 58 59 60 60 61 63 64 65 66 67 69 69 71
Capítulo 4 Constitución de la AT 486 El Chip 486SX La Motherboard El Chip 486DX FlashBIOS Actualizaciones El Chip 486DX2 El Bus Local Bus Mastering
73 74 74 75 77 77 77 78 79
Historia y Evolución de la PC – Jairo Uparella
VL-BUS El Chip 486DX4
80 82
Capítulo 5 Constitución del Pentium El Pentium Chipsets Arquitectura Superescalar y los Pipelines Predicción Dinámica de
El Bus mezanine PCI Pentium P6 Otra vez a empezar
83 84 84 84 85 91 95 96
Capítulo 6 Los Periféricos de la PC El Controlador de Hardware El Controlador de Software Monitores, una historia para ver Resolución y Píxel Configuración Constitución del Monitor El Monitor a Color Formación de Colores La Paleta, la combinación de Colores Dot Pitch Otras Características Frecuencia Horizontal Refresco Vertical Ancho de Banda Controladores o Adaptadores de Video El Adaptador VGA RAM de video Características Adicionales de los Monitores Entrelazados Sincronización Múltiple de Frecuencia Capacidad Autoswitching Distorsiones De Caracteres a Bitmaps Los Monitores Verdes Otros Estándares
97 97 98 99 100 101 103 103 104 106 107 108 108 108 109 109 110 111 111 112 112 112 113 114 119 119
Historia y Evolución de la PC – Jairo Uparella
Capítulo 7 Impresoras, la tecnología de llevar un punto al papel Impresora de Matriz de Puntos Programación de la Impresora Secuencias de Escape Impresoras de Tecnología Láser Las Señales Otras Características Impresoras Láser de Color Del ASCII a los Fonts ¿Tipos o Fonts? Truetype El lenguaje POSTSCRIPT y el Spool de la Impresora Dibujando Fonts Impresoras de Chorro de Tintas Otras Características
121 122 123 123 126 127 129 130 131 131 131 133 134 135 136
Capítulo 8 Drives y Discos La Evolución de los Medios Magnéticos Diskettes, tecnología magnética Estructura Inicial Otras Características Tamaño Densidad Datos en Memoria Asignación de Drives El Drive y Conectores Instalación FORMAT.COM y el formato de Diskettes ¿Cómo se calcula la Capacidad de los Diskettes? Sálvele la vida a un diskette ¿Qué tanto resisten los diskettes? El Disco Duro Configuración en el CMOS Dar Formato a un Disco Duro Formato a Bajo Nivel Factor de Interpolación Partición
139 139 140 140 142 142 142 143 145 145 147 147 147 148 149 152 152 153 153 154 155
Historia y Evolución de la PC – Jairo Uparella Formato a Alto-Nivel Atributos de Archivos Clusters ¿Cómo se calcula la capacidad de los discos duros? Densidad y la Codificación Historia de las Interfaces El Adaptador Anfitrión SCSI Paquete de Terminación de Resistores IDE EIDE Fragmentación
155 157 158 158 158 160 160 163 164 166 167
Capítulo 9 El Láser y la Multimedia Las Tarjetas de Sonido y el CD-ROM La Tarjeta de Sonido Configuración Elementos de la Tarjeta de Sonido El CD-ROM ¿Cómo se lee información del CD? Los Estándares y la Transferencia de Datos Los Libros Trabajando con los Archivos .WAV
169 169 170 171 171 173 174 175 176 176
Capítulo 10 El Módem y el Fax/Módem La Transmisión de datos ¿Quién entiende a los BAUDIOS? Transmisiones HAYES AT Command Set Panel Frontal del MODEM Conexión a la PC La Tarjeta y su Configuración Historia de los Estándares V.34 Fax/Módem
177 177 178 179 180 180 181 181 182 183 183
Historia y Evolución de la PC – Jairo Uparella
Capítulo 11 La Administración de la PC AUTOEXEC.BAT CONFIG.SYS Instalación del MS/DOS Ayuda del MS/DOS Instalando Windows 3.1
185 187 189 191 192 193
Capítulo 12 La Conexión a Tierra El Regulador de Voltaje
195 197
Apendices APENDICE A – Evolución del MS/DOS APENDICE B – BIOS POST – Checkpoints APENDICE C – Código de Errores APENDICE D – Registros CMOS, RTC y Otros APENDICE E – Discos Duros en CMOS APENDICE F – Comandos AT APENDICE G – Interrupciones de la PC APENDICE H – Chips Referenciados en este libro
199 201 203 205 207 209 211 217
Bibliografía
233 235 243
Glosario Índice
Historia y Evolución de la PC – Jairo Uparella
Figuras e Ilustraciones Fig.# 1 – CPU 8088 2 – Motherboard 8088 / 86 3 – Distribución de Chips en RAM 4 – Conector DB25, Paralelo, DB9 y Centronics 5 – Fuente de Poder de 200 W 6 – Conector de Teclado 7 – CPU 80286 8 – Motherboard 286 9 – Chips de la RAM 10 – SIMMs 11 – Modo de Direccionamiento del 286 12 – Supuesto Direccionamiento del 286 en Extendida 13 – Constitución del Bus ISA 14 – Chip 82C37A 15 – Chip 82C59A 16 – Ubicación de Dirección en el Stack 17 – Menú de Configuración CMOS 18 – Chip 386SX 19 – Chip 386DX 20 – Chips de Memorias Caché 21 – Formato de Dirección Lineal de 32-bits 22 – Proceso de Paginación en el 386DX 23 – Chip 80486SX 24 – Chip 80486DX 25 – Chip 80486DX2 26 – Slot EISA 27 – Slot VL-BUS 28 – Constitución del VESA Local BUS 29 – El Chip Pentium 30 – Arquitectura Interna del Pentium 31 – Pentium de 3.3V (Visto por debajo) 32 – Slots PCI de 32 y 64-bits 33 – Constitución del Bus PCI por bloques 34 – Constitución del Bus PCI de 64-bits 35 – Tarjeta Multi-IO 36 – CRT Color 37 – Dot Pitch – Trinitron 38 – Adaptador VGA
Historia y Evolución de la PC – Jairo Uparella
39 – Impresora de Matriz de Puntos 40 – Impresora Láser 41 – Impresora Láser Color 42 – Impresora INK-JET 43 – Distribución Magnética de un Diskette 44 – Drive, Cable y Conector 45 – Conexión de Diskette y Disco Duro 46 – Conexión SCSI 47 – Configuración de Jumpers SCSI con Paridad 48 – Paquete de Terminación de Resistores 49 – Conexión IDE 50 – Configuración Master / Slave IDE 51 – Conexión EIDE 52 – Disco Fragmentado 53 – Constitución de una Tarjeta de Sonido 54 – CD-ROM 55 – Lectura en CD-ROM 56 – MODEM 57 – Tarjeta Fax / MODEM 58 – Conexión a Tierra 59 – Regulador de Voltaje
Historia y Evolución de la PC – Jairo Uparella
Indice de Tablas Tabla.# 1 – Conector Serial de 25 Pines 2 – Conector Paralelo de 25 Pines 3 – Conector Serial de 9 Pines 4 – Conector de la Fuente de Poder 5 – Mapa de Memoria en Modo-Real 6 – Espacios de Memoria de Video y Shadowing 7 – Mapa de Memoria con Direccionamiento a Extendida 8 – Caracteres del ASCII no imprimibles 9 – DMAs y Direcciones de Registro de Páginas 10 – Interrupciones Hardware 11 – Direcciones IO Típicas en una PC 12 – Nomenclatura de Elementos de la Motherboard 13 – Jumpers 14 – Errores reportados por el BIOS 15 – Distribución del Formato Lineal de 32-bits 16 – Pines del Pentium 17 – Significado de pines del Bus PCI 18 – Formación de Colores 19 – Formatos Usuales de Colores 20 – Conector VGA de 15 pines 21 – Frecuencias Comunes de Resoluciones 22 – Caracteres por Línea 23 – Algunas Órdenes de Secuencias de Escape 24 – Caracteres Independientes de Impresión 25 – Paralelo Bi-Tronic 26 – Serial RS-422A 27 – Algunas Fuentes True-Type 28 – Tipos de Caracteres POSTSCRIPTS 29 – Tipos Escalables – Bitmaps PCL 30 – Formatos de Diskettes 31 – Entrada del Directorio 32 – Atributos de Archivos 33 – Registro del Sistema de Archivos 34 – Codificación MFM y RLL 35 – Conectores y Jacks en el Bracket de Metal 36 – Conector del MODEM 37 – Leds del Módem
Historia y Evolución de la PC – Jairo Uparella
Indice de Programas Prog.# 1 – Scanner de Memoria Segmentada 2 – Para Obtener fecha del BIOS 3 – Scanner del Teclado de la PC 4 – KeyCrazy.BAS 5 – Los 224 caracteres imprimibles del ASCII 6 – Scanner de las Principales Interrupciones de la PC 7 – Obtención del Segmento de una Interrupción 8 – Localización del Movimiento del Mouse en Memoria 9 – Localización de Rutinas del Mouse 10 – Pulsos de Reloj 11 – Scanner de Direcciones IO 12 – Generador Simulador de Caracteres 13 – Detector de Video 14 – Colores Básicos 15 – Simulación de Generación de un Bitmap 16 – Copy & Paste de Bitmap 17 – Generador de Caracteres para Monitor e Impresora 18 – Simulador de Generación de Font Escalable 19 – DEBUG y parámetros ROM de Diskettes 20 – Reconocimiento del Drive Activo
Historia y Evolución de la PC – Jairo Uparella
Agradecimientos Un agradecimiento especial a: Oscar Santos B. Gerardo Araujo P. Germán Mendoza D. Carlos Ferriol D. Omar Barrios A.
Humberto Rueda A. Orlando Martínez P. Eladio Uparela M. Juan C. Otoya G. …
A mi esposa Adriana Garavito R. quien se tomó el trabajo de procesar electrónicamente este libro para que fuese nuevamente publicado.
Realmente tengo mucho que agradecer a las personas que por su espíritu de cooperación hicieron posible la recopilación de toda esta información y a aquellas que me han ayudado desde hace mucho a seguir este camino: Alberto Newball Howard, Gerente de Ingeniería de Compusisca S.A., quien me facilitó las motherboards, drives, tarjetas, cables y, lo más importante, su apoyo todo el tiempo. Juan Carlos Otoya, Gerente de Compusisca S.A. y todo el personal que labora en Compusisca S.A. que de una u otra forma han colaborado en la realización de mis trabajos. Pablo Troconis, quien me dejó entrar al cuarto de San Alejo en Compusisca. Oscar Teheran, Oswaldo Aguirre de EL PERIODICO de Cartagena, Carlos Peñaranda, a quienes les debo la producción de mis libros. Oswaldo Armella, Ingeniero de Sistemas a quien le debo de por vida mis primeros conocimientos. Gloria Burbano de Herrera, mi Jefe en la Financiera, quien me dejaba pasar horas y domingos en la AT 286. Beatriz Castell de Dueñas, Directora del Colegio Mayor de Bolívar y Juan Dáger Nieto, Secretario General, quienes me permitieron enseñar. i
Historia y Evolución de la PC – Jairo Uparella
A Juan Carlos Mantilla, Decano de Ingeniería de Sistemas, Sofía Trillos, Roberto Gómez, a los profesores Adolfo Gordillo, Giovanny Vasquez, Dario Valencia, Oscar Acuña, y mis amigos, Edwin J.Ruiz, Ever Hernandez C., Hernando Tarón y Luz Mery Valdéz de la Corporación Universitaria Tecnológica de Bolívar, quienes apoyaron y colaboraron en este proyecto. A mis amigos Iliana Restrepo, Juan Pablo Rico, Jorge Fernández, Karím Romero, Jose Mario Ojeda, Gonzalo Garzón, Juan Carlos Torres y Mauricio Venckeleer. También quiero agradecer por su especial y sincero gesto de apoyo al Capitán Gustavo Pérez, Capitán Marta Pineda, Teniente Alejandro Mejía, Teniente Mauricio Cubides y a todo el personal de Sistemas de la Escuela Naval en Manzanillo. A Martha E. de Vellojín, Gerente de Mini-Micro, Rodrigo Navarro, Gerente de Sistemas Especializados y su esposa Diana. Maria Modesta Aguilera y Manuel Marrugo de American Business School, Marta Luján, Gerente Apelcar de Bolívar. Mirta Lozano y a todos los de la sección de personal del Banco de la Republica. A mis apreciables amigas Margarita Sorock quién supervisa mi inglés junto a Amnerys Barrientos, quién además hace la corrección lingüística e idiomática de mis libros. A mis dos colaboradores en la revista, Daniel Padilla y Frantz Pacheco. To Ian W. Slade, Peter Cohen, Paul Thompson, Veronica Mansur, Mauricio Ramos and Mr. Elcco Sixma, wherever you may be, and everybody in the Shell Petroleum Company and HOCOL SA, my special thanks for everything you did. Thanks for teaching me how to make a project real but above all how to be patient.
Jairo Uparella
ii
Historia y Evolución de la PC – Jairo Uparella
Prólogo Parecería una tarea fácil la revisión del libro preparado por mi amigo Jairo, documento que en una forma amplia y clara, hace una recopilación acertada de la información de 10 años de historia de las PCs. Leerlo da la sensación de estar viviendo de nuevo cada una de las etapas en que afortunadamente muchos tuvimos el privilegio de observar y vivir y que se sucedieron desde la aparición del primer chip 8088, hasta el poderoso Pentium. Aquellos que no la vivieron, de igual manera se deleitarán por el conocimiento histórico que éste representa. Tarea difícil para muchos, pero fácil para una persona como Jairo, que no se detiene en la investigación, es inquieto, se mantiene motivado y lo más importante, no se conforma hasta llegar al fondo de las cosas y esto fue lo que encontré en la información revisada, redacción de mucha pulcritud, adecuada para todas las personas con o sin conocimientos técnicos en la materia y muy especialmente servirá como guía para estudiantes.
iii
Historia y Evolución de la PC – Jairo Uparella
Conozco a Jairo desde hace unos nueve años. Es la persona que siempre está actualizada y esto quizá lo motiva siempre a propiciar las tertulias para hablar del tema obligado, Software y Hardware. Debo confesar que cumplida la tarea de su lectura puedo afirmar, prescindiendo en cuanto sea posible de toda consideración de amistad, que quien se interese verdaderamente por conocer la historia de las PCs, va a encontrar este libro de valor incalculable. Agradezco sinceramente la oportuna lectura que me obligó a hacer el autor y fue la oportunidad de consolidar la imagen de él como un conocedor de las PCs.
Alberto Newball Howard
iv
Historia y Evolución de la PC – Jairo Uparella
Prefacio Son muchas las noticias que a diario se leen en la prensa sobre el mundo de la Informática.- Japón obtiene grandes ganancias en electrónica, se fusionan NOVELL y WordPerfect, IBM compra a LOTUS, Salió Windows 95, etc, etc. - Es un mundo en el que los protagonistas son los productores competitivos, pero quien realmente lo vive es el usuario final y yo soy uno más. Todo empezó cuando me asignaron como encargado de la AT 286 de IBM, utilizada en las transacciones contables de una empresa financiera. Eso fue exactamente en el año de 1985. La IBM había finalizado desde hace mucho la producción de PCs 8088, que permanecieron en el mercado Colombiano alrededor de 2 años. Otros modelos de 8088 (las de otros fabricantes), duraron más de 6 años.
v
Historia y Evolución de la PC – Jairo Uparella
El MS/DOS 3.10, era el sistema operacional monousuario que corría en las XTs (tecnología 8088). Esto era raro porque las versiones 3.x del MS/DOS fueron desarrolladas para ATs (tecnología 80x86). Esto debió ser por la compatibilidad con el 80286 y poder así ofrecer servicios avanzados en XTs. La verdad es que en ese entonces no sabía que William Gates y Paul Allen habían desarrollado al MS/DOS (Microsoft / Disk Operating System) y que fue vendido a la IBM para comercializarlo como IBM/DOS. No me explicaba porqué se hablaba en esa época de la máquina de Babbage, de Von Newman y de su familia en todas las instituciones educativas del país, que tuvieran microcomputadoras. Tampoco tenía ni la más remota idea de que el DR/DOS de la Digital Research, fuera el primer Sistema Operativo en pasar la barrera de los 640K; que el 8086 de 16-bits salió primero que el 8088 de 8-bits y antes del 80286 existía el 80186, el cual no fue tan popular como el 8086, que la primera computadora portátil pesaba 12 kilos, el XENIX era un sistema multiusuario variante del UNIX creado por Microsoft y el 80386 y el CD-ROM ya existían. En ese tiempo, se hablaba del “ábaco”… y me imagino cuantos profesores “rajaron” a sus estudiantes por no saber que el señor Pascal y los chinos tenían que ver con las computadoras. En ese entonces no teníamos ni la más remota idea de qué era la OOP (Object Oriented Programming) – Programación Orientada a Objetos, tecnología de software utilizada en la creación de programas para Apple LISA y el Macintosh. Pero 10 años más tarde, al parecer no se ha logrado mucho. A pesar de que nos encontramos en la era de los 32-bits y 64-bits, no dejamos de hablar del chip Z-80 de Zilog, el 8085 de Intel de 8-bits y desafortunadamente, todavía existen libros en el mercado sobre estas arquitecturas. Creo que si nos olvidáramos un poco de estas tecnologías y nos acercáramos por lo menos, a los 16-bits, nos daríamos cuenta que llegar a los 32-bits se nos hará un poco más fácil.
vi
Historia y Evolución de la PC – Jairo Uparella
Acerca de este libro En las siguientes líneas haremos un recorrido de 10 años de historia, desde la aparición de una de las primeras PCs de escritorio, la 8088 hasta el poderoso Pentium, con el fin de que reorganicen sus ideas y obtengan sus propias conclusiones sobre la producción y tecnología aplicada a las PCs o microcomputadoras. La teoría encontrada aquí es mínima y está más bien orientada hacia lo práctico, para facilitar su comprensión, por lo que puede variar un poco con respecto a otros libros, al igual que las fechas, las cuales hacen referencia a la época en que tuve conocimientos de ellas. En cuanto a las nomenclaturas de elementos o componentes, hago referencia a las PCs que adquirí y a otras que me prestaban para el propósito de éste libro, por lo que no se hace referencia a un modelo de PC en especial. Los temas son consecutivos y demostrativos, por lo que no se debe detener la lectura si hay algo nuevo o de poca comprensión. Es fácil aplicar todo esto a la PC que se tenga en casa u oficina y al modelo de la misma, si se tiene en cuenta que el libro está dividido de acuerdo con cada modelo y los temas de un capítulo pueden ser aplicados como base teórica en otros, por ejemplo, el tema de memorias y SIMMs es tratado en el capítulo de la AT 286, lo que prácticamente no varía en el Pentium, sino en pocos aspectos que son de fácil manejo para usted, como el tamaño, cantidad de chips, etc. Los programas pueden ser amoldados a cualquier otro lenguaje diferente de QBASIC, que utilicé por ser el que la mayoría de usuarios posee en el directorio DOS, y no necesita . En este libro no se pretende enseñar a programar. Los programas presentados aquí sólo están orientados para conocer internamente las localizaciones de subrutinas y otros procesos en la PC y algunos son simuladores de procesos para la comprensión de temas, las cuales tendrán que ser tratados con instrucciones de llamada a subrutinas como CALL ABSOLUTE de QBASIC, o utilizar instrucciones JMP, CALL o INT en Assembler, lo que no hace parte del tema del libro.
vii
Historia y Evolución de la PC – Jairo Uparella
Los temas están relacionados con la línea de hardware de tecnología CISC (Complex Instruction Set Computer) de los microprocesadores de Intel y aplicaciones de la línea IBM ™, Microsoft ™ en la PC.
Jairo Uparella Enero de 1996
viii
Historia y Evolución de la PC – Jairo Uparella
Introducción Olvídese de la historia de las microcomputadoras, esa que le enseñaron en el colegio y la repasaron en la universidad. La historia de la PC se divide en dos: A.D.W. y D.D.W. Esto significa, Antes de Windows y Después de Windows. Antes de Windows el propósito era llevar toda una computadora a un escritorio. Era sencillo programar, entender su funcionamiento basado en esquemas que hacían un ligero análisis del comportamiento de cada elemento de la PC y, por supuesto, el dominio sobre ella era absoluto. Rápidamente nos amoldábamos a lo que era un lenguaje de programación, un compilador y un Sistema Operativo. Las bases de datos era el principal producto final acompañado de algunos gráficos vectoriales, a pesar de lo que más se benefició con la llegada de la PC fue la contabilidad. ix
Historia y Evolución de la PC – Jairo Uparella
Se hablaba del teclado, monitor o “pantalla”, unidad de discos, unidad de procesos y la impresora. La cantidad de programadores que aparecieron en el mercado vieron con acierto un futuro asegurado. Los temas principales se mantenían alrededor de los archivos, registros, lenguajes de programación como el BASIC y COBOL, el ASCII y la compilación. Después de Windows, podríamos decir que acontece la verdadera “Revolución de la Informática” para dar inicio a nuevas tecnologías que sobrepasan la barrera del futuro. La necesidad de conocer más íntimamente a una microcomputadora, creció. La cantidad de términos nuevos cambió el concepto “sencillo” de manejo de las PCs, el número de programadores se freno reduciéndose en un 90% o más, debido a la cantidad de software que aparece en el mercado con mayor especialidad que los producidos en casa. Ya no hay ciencia de la informática, sino mercado de la Informática, originado principalmente por la guerra de chips y software. Muchos productos aparecen como juguetes adaptables a las PCs y no como tecnologías avanzadas y por supuesto paradójicamente, ha sido la clave para el éxito que han tenido en ventas. Ahora se habla más de buses, interrupciones, modo-protegido, memoria extendida. SIMMs, multitareas, Plug & Play, etc., términos que veremos en los capítulos siguientes. Otros se refieren al software bajo Windows como el Drag & Drop, WYSIWYG, OLE, DDE, OOP, etc. Todo es cuestión de familiarizarse con esta terminología. Cada término tiene un significado corto pero preciso, lo que hace posible entenderlo sin tanto esfuerzo. Describen en sí, el concepto práctico de un proceso o elemento, relacionando mucho de ellos entre sí o integrándolos en uno solo, esté último con significado propio e independiente.
x
Historia y Evolución de la PC – Jairo Uparella
La pregunta que quizá pudiera hacerse el lector, es ¿Por qué debo aprender sobre el interior de una PC? Para ser sincero yo también me hago la misma pregunta, y cuando quiero buscar una respuesta recuerdo una frase que escuché “Si quieres entender a un ser humano, debes saber cómo piensa”. Bueno mi comparación puede ser censurada, pero he visto a muchos enojarse frente a una PC cuando ésta no responde como esperaban.
xi
Historia y Evolución de la PC – Jairo Uparella
Capítulo
1
Constitución de la XT El Chip C.P.U. En el principio apareció la PC de IBM (1981 A.D.W, claro está). El chip CPU (Central Processing Unit) 8088, posee 40 patas, DIP (Dual-in Line Package), 8 de ellas para los datos, y trabaja a una máxima de 8 MHz (megahertz). Creado por Intel, es adoptado por productores de las máquinas más baratas llamadas “Clones” (Palabra vieja de biología, utilizada en ciencia ficción que significa “duplicado”) y se les llamó de arquitectura XT. El número entero positivo máximo que puede representar es 65,535 (2 multiplicado 16 veces e incluyendo al 0) con su de 16-bits, a pesar de tener un de 8-bits.
1
Historia y Evolución de la PC – Jairo Uparella
El 8086 difiere solamente en la ruta de datos que es de 16-bits, es decir, el doble del 8088, pero los conceptos a tratar en este capítulo, son aplicables a cualquiera de los dos. La velocidad de ejecución está dada en el orden de los 0.3 MIPs (300,000 Instrucciones por segundos).
Fig.#1- Unidad Central de Procesos 8088 Este chip reside en la tarjeta más grande de la XT, denominada “motherboard” o “systemboard” o simplemente en castellano, tarjeta madre. En ella se puede encontrar insertada una tarjeta del tipo “riser” (pronúnciese “raizer”) la que se inserta verticalmente para tarjetas de expansión acopladas horizontalmente y tiene a su vez 4 ranuras o conectores llamados “Slots de Expansión” para adaptar las tarjetas horizontales denominadas frecuentemente “Interfaces”. Por ejemplo, las tarjetas de controlador del disco duro, módem y otras. Los conectores de los puertos Serial y Paralelo, se encuentran haciendo parte de los circuitos de la tarjeta madre, al igual que los circuitos de video y teclado. Aclaremos de una vez por todas, que la palabra interface, es utilizada para designar una tarjeta o circuito de acoplamiento físico en las motherboards o un puerto, pero su real significado corresponde al estándar o a la norma de adaptación o integración a bajo-nivel entre dos circuitos independientes. Por otra parte, , Interface o Interfaz, es lo mismo. 2
Historia y Evolución de la PC – Jairo Uparella
Fig.#2- Motherboard 8088/86
Constitución de la Motherboard No todas las motherboards son tarjetas comunes de bakelita constituidas por una lámina de cobre a cada lado donde se graban sus circuitos impresos y donde se montan los integrados y unidades. Algunas están compuestas de varias capas de cobre separadas por material o fibra plástica y que sirven como aisladores de ondas de radio-frecuencias (señales parásitas) o simplemente como punto a tierra. Para verificar esto, se corto el extremo de una tarjeta motherboard vieja 286. Era como partir una lámina de triple. Varias capas realmente formaban la consistencia de la motherboard y es imposible saber qué elementos o unidades la utilizan (lógicamente que integrados y unidades que la atraviesan) pero se puede apreciar que ocupa la motherboard completa. 3
Historia y Evolución de la PC – Jairo Uparella
Memorias y otros elementos de la XT También encontramos sobre esta gran tarjeta los bancos e hileras de chips que conforman la memoria central llamada RAM (Random Access Memory). Esta RAM es direccionable hasta 1MB (megabyte) debido a 20-bits que forman la dirección física, de los cuales, 640K son utilizados para las aplicaciones o programas y el Sistema Operativo. El resto, 384K son utilizados por programas del sistema de la XT. El direccionamiento es una capacidad y cualidad de la CPU, con la ayuda de un Sistema Operativo en la que puede tener acceso a más memoria (mapas de memoria) que la física disponible.
Fig.#3- Distribución de Chips de Memoria RAM
La XT que se utilizó como material de referencia para este libro, posee 3 hileras de 9 chips, referenciados como D41256C-12. El 12 al final, indica que el tiempo de acceso de estas memorias es de 120 nanosegundos. Todo esto indica que tenía exactamente 768K RAM en Chips. 4
Historia y Evolución de la PC – Jairo Uparella
Realmente son 8 Chips (de 1- bit) por hilera (1 banco); el chip noveno es para la verificación de registro de los datos en RAM. Se le conoce como Chip de “Paridad” que significa por decirlo así “Comparación de par o impar”. Por ejemplo, para el código 01101101, la detección de paridad en memoria indica que es impar, debido a que tiene 5 unos en la cifra. Si un valor llegase a cambiar, el detector o comparador de paridad indicaría error.
El ROM-BIOS El otro tipo de memoria que seguro usted ha escuchado mencionar o que ya conoce, es el chip ROM (Read Only Memory) – Memoria Sólo Para Lectura – de 40K Bytes, que contiene un programa inmodificable, llamado BIOS (Basic Input / Output System) – Sistema Básico de Entrada y Salida – que es el encargado de manejar todo lo relacionado con el funcionamiento interno de la PC y donde el Sistema Operativo y programas obtienen información para ejercer funciones de control.
El Coprocesador Matemático También encontramos un socket para conectar al coprocesador matemático y que son CPUs que amplifican la potencia de representación interna de números, reflejado más que todo en la notación de decimales (reales). El Coprocesador de la época era el 8087 de 10 MHz del tipo DIP de 40 patas como el 8088. La verdad es que un microprocesador no trata números reales como creemos, es más no sabe lo que son números reales. Para generar e interpretar reales se utilizan muchas operaciones enteras hasta obtener un real satisfactorio. Esta es una de las razones de porqué existen los coprocesadores.
5
Historia y Evolución de la PC – Jairo Uparella
Buses y Conexiones La conexión por varías líneas en la motherboard entre la CPU y otros elementos como los slots de expansión se les denominó buses. Este nombre debió ser asignado por la relación con ruta o transporte. La primera arquitectura para buses se denomino AT de 8-bits. (Ver Constitución de la ISA Fig.# 13) La conexión del drive de diskettes se hacía por medio de un cable tipo cinta o listón gris que presentaba una línea roja en el extremo y que llega al conector marcado en la motherboard con 1. Posee 34 conductores según la XT que se conserva funcionando y totalmente desarmada. (Ver figura # 44). El controlador de diskettes es un chip del tamaño del 8088 referenciado como D765AC, pero realmente es un 8645. En un slot de expansión se puede conectar una tarjeta del controlador de disco duro del tipo ESDI (Enhanced Small Driver Interface) y era el estándar de la época. Utilizaba un cable de 34 conductores y otro de 20. El listón de 34 es utilizado para señales de control de disco y el de 20 es utilizado para datos. El disco duro en referencia es el ST–225 de 20MB. La ESDI tiempo después, no dio resultado.
Conexión de la Impresora Una impresora se puede conectar a la XT, por medio de un cable de 25 conductores en el puerto paralelo, al conector DB25 hembra o del tipo Centronics. La transmisión de datos se hace por paquetes o grupos simultáneos de 8-bits, a diferencia de impresoras y dispositivos que se conectan al puerto serial, bajo la norma RS-232C, por donde pasan los datos bit por bit, como el modem (modulador / demodulador), utilizando el conector DB25 macho.
6
Historia y Evolución de la PC – Jairo Uparella
Fig.#4- Conector DB25 Serial, Paralelo, DB9 y del Tipo Centronics
PIN 1 2 3 4 5 6 7 8 9 10 11 12 13
Fn
O I O I I I
Nombre
PIN
GND chasis Transmite datos Recibe datos Borrado para envío Limpia para envío Datos Preparados GND Detección de portadora nc nc nc nc nc
14 15 16 17 18 19 20 21 22 23 24 25
Tabla #1- Conector Serial de 25 Pines
7
Fn
O I
Nombre nc nc nc nc nc nc Terminal datos nc Alarma Indicadora nc nc nc
Historia y Evolución de la PC – Jairo Uparella
PIN
Fn
Nombre
PIN
Fn
Nombre
1 2 3 4 5 6 7 8 9 10 11 12 13
IO IO IO IO IO IO IO IO IO I I I I
Strobe D0 D1 D2 D3 D4 D5 D6 D7 Reconocimiento Ocupado Fuera de papel Selector
14 15 16 17 18 19 20 21 22 23 24 25
O I O O
Autofeed Error Inicia Impresora Selecciona Entrada GDN GDN GDN GDN GDN GDN GDN GDN
Tabla #2- Conector Paralelo de 25 Pines
PIN
Nombre
1 2 3 4 5 6 7 8 9
Detección de portadora Recepción de datos Transmisión de datos Terminal de datos listo GND Datos preparados Solicitud para envío Listo para emitir Indicador circular
Tabla #3 - Conector Serial de 9 pines
Fuente de Voltaje El conector de la fuente de poder que llega a la motherboard y suministra el voltaje y corrientes necesarias, está formado por doce líneas así: 8
Historia y Evolución de la PC – Jairo Uparella
LINEA
VALOR
COLOR
1 2 3 4 39665 9 0-12
PowerGood + 5 V DC + 12 V DC - 12 V DC Tierra - 5 V DC + 5 V DC
Blanco Rojo Azul Amarillo Negro Gris Rojo
AMP.
10 A 2.5 A 0.25 A 0.3 A
Tabla #4- Conector de Fuente de Poder
En todas las PCs podemos decir que el valor de 5V DC es utilizado por circuitos lógicos o chips y el valor de 12 V DC, para trabajos pesados como por ejemplo los motores paso a paso de los drives de discos. La línea Power Good, indica por medio de una señal (bips) que el valor de entrada en las líneas no es correcto.
Fig.#5- Fuente de Poder de 200W 9
Historia y Evolución de la PC – Jairo Uparella
Teclado El teclado internamente está constituido por un chip denominado 8749 sobre un circuito largo, que recibe pulsos hasta convertirlos en códigos o datos, que posteriormente serán enviados a la PC a través del cable.
1. Reloj 2. Datos 3. NC 4. GND 5. +VDC
Fig.#6- Conector de teclado
Conjunto de Chips La XT estaba compuesta de otros chips de los que poco se habla y son tan importantes como la CPU misma. Se dice que la CPU controla todo.... pues no es así! Existe un chip en la motherboard de la XT que tiene control en el sistema con referencia 82C11, implementador de puerto I/O y maneja entre otras cosas el puerto paralelo. Otro chip es el de comunicaciones seriales referenciado como INS8250N-B al que simplemente llamaremos 8250, comúnmente conocido como UART (Universal Asynchoronous Receiver / Transmiter) y maneja el puerto serial. Otros chips de importancia son el controlador de diskettes 8645, el chip 6845, que maneja el CTR (Cathode-Ray Tube) del monitor y en otros modelos, el PPI 8255 que es el controlador programable de periféricos.
10
Historia y Evolución de la PC – Jairo Uparella
Resumen “Las PCs no han variado mucho desde que se creo la XT”. Sí, así es. Lo descrito anteriormente son las bases para comprender el hardware actual de las PCs. Creo que lo único que queda por hacer es o bien describir detalladamente el sistema de la PCs o decir de una vez por todas que las 486 y Pentium son las mismas pero con unas mejoras impresionantes. OK, haré las dos cosas y ya dije lo segundo. Cuando se conoce a una ciudad por primera vez y se regresa a ella en 10 años, notamos enseguida que se le han construido puentes, calles, casas, edificios, pero ante todo, sigue siendo la misma ciudad. Ahora saben a que me refiero. La XT trabajaba con el sistema MS/DOS 3.10. Una serie de órdenes internas contenidas en un gran procesador de comandos llamado COMMAND.COM, como DIR, DEL, CLS, CD, MD entre otras y una serie de órdenes en disco como FORMAT.COM, DISKCOPY.COM y otros de extensión EXE. En ese entonces estaba al frente de los lenguajes, el GW-BASIC 3.20 y el BASICA para programación libre y el flamante COBOL para programación estructurada y que ahora ha sido orientado a objetos. PASCAL y C tomaban la delantera. Se dice que el MS/DOS está estructurado en C. Algunos programas para el manejo interno de la PC, como dar formato a diskettes nacieron o fueron desarrollados en BASIC, lenguaje incrustado en chip ROM, que era en realidad el software dominante antes de la creación de un verdadero Sistema Operativo. Mr Gates y Mr Allen, desarrollaron un entorno que manejara la PC y soportara otros lenguajes y en general cualquier otra aplicación. Podríamos decir que en 1975 con el BASIC en chips, se inició Microsoft. En 1976, Gary Kildall, creador del DR/DOS, le hizo frente a la competencia hecha por Microsoft. Desafortunadamente para Kildall, el MS/DOS, fue adoptado por IBM. Kildall fue el creador del primer Sistema Operativo para microcomputadoras denominado CP/M (Control Program for Microcomputers), con cierta similitud y en el cual se basa el MS/DOS. En 1971 Kildall era funcionario de Intel. 11
Historia y Evolución de la PC – Jairo Uparella
Resumiendo tenemos una PC, un lenguaje de programación como BASIC o C y un Sistema Operativo como el MS/DOS. Aquí empieza la tarea de superar velocidades, direccionar máxima memoria, la búsqueda del sistema perfecto, multitareas y optimizar otros factores. La creatividad tiene que superar los conceptos tecnológicos, para llegar a constituir la verdadera microcomputadora... ¿Cuál será? En ese entonces se decía que “Las XT no duraron mucho en el mercado por que las empresas productoras ganaban mucho dinero y no podían representar las cifras de ganancias en pantalla”. Esto tiene algo de cierto. Lo que creció realmente fueron los programas o el software y esto hizo que los productores de microcomputadoras mejoraran las PCs, cuyos dispositivos tendían cada día a ser más pequeños. Empezaba el año de 1985.
12
Historia y Evolución de la PC – Jairo Uparella
Capítulo
2
Constitución de la AT 286 El Chip 80286 Aquí nace la AT 286 propiamente dicha y se mencionarán a continuación las características de la CPU 286 y otros elementos, basados en los descritos anteriormente con respecto a las XTs: -130,000 transistores (un poquito más caliente) -1 MIPs -PLCC Y PGA (Plastic Leadless Chip Carrier – Pin Grid Array) – 68 pines - de 16-bits -Bus de Direcciones de 16-bits - Máxima 20 MHz -Máximo direccionamiento en RAM 16MB
Motherboard -Coprocesador 80287 (un 2 en la mitad del 8087) – PGA -El resto es lo mismo, excepto que el número de elementos fue duplicado por ser todo a 16-bits
13
Historia y Evolución de la PC – Jairo Uparella
Fig.#7- C.P.U. 80286 El Sistema Operativo utilizado era el MS/DOS 3.30 y fue entonces cuando se desató el uso de aplicaciones como LOTUS 123, WordPerfect, dBASE III, AutoCad 2.5, SuperCALC 4.0, Novell Netware 2.5, WordStar 4.0, etc, bajo DOS por supuesto, donde concluiría la historia antes de Windows.
Fig.#8- Motherboard 286
14
Historia y Evolución de la PC – Jairo Uparella
Memorias y el Modo-Real Creado el 286 se busca administrar el máximo rango de memoria direccionable que ahora llega a los 16MB. Aquí empieza la verdadera complicación de la constitución de la PC. Lo ideal sería que el direccionamiento se pudiera dar en forma planar, es decir que la cantidad de RAM a direccionar, fuera igual a la cantidad de RAM en chips. También se utilizan los SIMMs (Single In-Line Memory Modules), que hacen lo posible para soportar el direccionamiento y extender propiamente a la RAM, pero la realidad es que no se utilizaban 16 MB para los trabajos de la época. Casi todas las AT 286 existentes tenían un poco menos de 1MB en Chips RAM, por lo que la mayoría de aplicaciones y programas trabajan en modo-real. Aunque no se sabe por qué se le llamó modo-real, a este modo de operación, es ante todo aceptable y a mi juicio se debe a que el “mecanismo” de acceso a memoria no tiene que solicitar tantos permisos ni pasar por otros modos, para llegar a la posición de memoria deseada; lo que primero busca es lo que realmente encuentra. Pero... ¿Cómo es que 640K, 1MB o 4MB en chips y por direccionar 16 MB? Esto se consigue con administradores de memoria o con el desarrollo de ciertos trucos, para hacer creer que se posee más memoria de la que realmente se tiene en el sistema. Extender la memoria es un efecto difícilmente controlado. Si el 286 puede direccionar 16MB, ¿cuántos chips de 256K de 4-bits se necesita para cubrir este rango? Aproximadamente 192 chips, los que utilizarían una tarjeta de 96 x 10 cms, más larga que la motherboard o por medio de poderosos SIMMs, y aún así ocupa mucho espacio. Empecemos entonces por conocer su constitución.
15
Historia y Evolución de la PC – Jairo Uparella
Chips en la RAM La RAM en la AT 286 que utilizo como estudio, tiene 4 chips (2 x banco) referenciados como 53C256LS-80. No son 800 nanosegundos, sino 80. Esto es lo malo de las referencias de chips. Además, tiene 8 chips (4 x banco) referenciados como 53C104AP-80. Los primeros 4 chips, son exactamente chips de 256K de 1-bit y los 8 restantes son chips de 256K de 4-bits. Entonces, los 4 primeros trabajan a un-bit y los otros a un-nibble (4-bits). Si no tenemos en cuenta los 4 primeros chips, diríamos que esta AT posee 8 chips x 256K x 4-bits / 8-bits = 1024K, para K=1024 tenemos 1,048,576 Bytes, o 1 MB. Los chips que no se contaron, simplemente son los de paridad.
Fig.#9- Chips de la RAM
Todos estos chips son del tipo DRAM (Dynamic RAM) y tiene la característica de gastar poca potencia y a diferencia de las SRAM (Static RAM) que sí gastan mucha potencia, el sistema no se ve obligado a “recordarles” que datos poseen.
16
Historia y Evolución de la PC – Jairo Uparella
Un electrónico podría definir exactamente lo que significa “Memory Refresh”.
Los SIMMs Si se deseaba ampliar la memoria o extenderla, se insertaban SIMMs en los bancos siguientes para tal propósito. Eran modulos de 30 pines de 80 nanosegundos DRAM, de 9-bits.
Fig.#10-SIMMs
Dos módulos de 256K de 1-bit, permiten en un banco, ampliar hasta 512K. Cuatro módulos (2 bancos) amplían hasta 1 MB. Con 2 módulos de 1 MB, se extienden hasta 2 MB. Cuatro módulos de 1 MB permiten extender hasta 4 MB, lo máximo en esta AT. Con un módulo de 1MB no se puede extender a 1 MB, puesto que para ocupar un banco entero, se necesitan dos SIMMs.
17
Historia y Evolución de la PC – Jairo Uparella
El Modo-Protegido y la Memoria Extendida Si aumentó la capacidad de la CPU, por ende tenía que crecer el número de líneas de los buses. La tecnología ISA se encargó de dar soporte a los dispositivos y software que trabajan a 16-bits, pero esto no fue lo más impactante de la época. El 286 ofrecía su modus operandi, denominado modo-protegido, convirtiéndose éste, en un tema que inclusive hasta hoy se sigue y se seguirá tratando. El modoprotegido en sí es un modo en que la CPU con la ayuda de una tabla de direcciones controlada por un sistema operativo, evita que dos programas se encuentren en los espacios de memoria extendida, asignados a los mismos. El 286 en modo-protegido, no podía pasar a modo-real y había que hacer un reset a la máquina, como si estuviera trabada. Este modo es más bien utilizado por chips como el 386, 486 y Pentium.
Memoria Expandida Algo parecido a la memoria extendida se había hecho con las tarjetas de memoria expandida, EMS, que podían direccionarse hasta 8 o 16 MB y se les denominó LIMs (por convenios entre LOTUS, Intel y Microsoft) y lo que hacían era expandir memoria convencional a través de un marco de páginas, tratando de pasar la barrera de los 640K. Quedarán en la historia, ya que para Sistemas Operativos como el OS/2, Windows y aplicaciones futuristas, no tiene funcionalidad, a menos que simulen expandida en extendida, como lo requieren muchos programas actuales. Cada marco o frame de página es un segmento de 64K que ocupaba cierto espacio entre el rango de los 768K y el Megabyte. Además, sólo los programas elaborados para manejar EMS o LIM, pueden hacer uso de esta facultad.
18
Historia y Evolución de la PC – Jairo Uparella
Cuando aparecieron en el mercado programas administradores de EMS (Expanded Memory Specification) y XMS (Extended Memory Specification), para el 286 era demasiado tarde, a pesar de que existían modelos con capacidad para soportar EMS. La memoria extendida direccionable y el modo-protegido del 286, sólo sirvieron como referencias para futuros chips.
Direccionamiento de la AT 286 El direccionamiento de memoria en el 286 se refleja a manera de segmentos, lo que no es ventajoso. Con la orden DUMP del DEBUG del MS/DOS (si se tiene XTREE, mejor) se pueden apreciar estas divisiones, de 16 segmentos desde 0000 hasta F000, cada una con 64K Bytes (65536 bytes). Todos los programas cargados como el COMMAND. COM, drivers o controladores en software, se pueden observar en estos segmentos tanto en Hexadecimal, Instrucciones de máquina o Assembler y ASCII. El siguiente programa en QBASIC permite leer los denominados “parágrafos” de la memoria para asignación de segmento y desplazamiento.
‘Scanner de memoria ‘ ‘(C) Jairo Uparella ‘ ‘CLS DIM H(16) DO WHILE (PASO=0) INPUT “SEGMENTO (65535)”;S IF S<0 OR S>65535 THEN BEEP ELSE PASO = 1 CLS
19
Historia y Evolución de la PC – Jairo Uparella
LOOP PASO = 0 DO WHILE (PASO = 0) INPUT “DESPLAZAR DESDE: (< 65535)”;DS IF DS < 0 OR DS > 65535 THEN BEEP ELSE PASO = 1 CLS LOOP CLS TITLE$ = “-------------- MAPA DE DIRECCIONES ----------------“ TITLE2$= “ 0 1 2 3 4 5 6 7 8 9 A B C D E F” PRINT TITLE$ PRINT TITLE2$ PRINT DEF SEG = S FOR L = DS TO 65535 COLOR 7,0 IF C = 0 THEN PRINT HEX$(S);”:”HEX$(L);TAB(12); I = PEEK(L) C=C+1 IF I <=15 THEN PRINT “0”; HEX$(I);” “; ELSE PRINT HEX$(I);” “; H(C)=I IF C = 16 THEN COLOR 7,0 PRINT “ “; FOR C=1 TO 16 IF ASC(CHR$(H(C)) >=32 THEN PRINT CHR$(H(C)); ELSE PRINT”.”; NEXT PRINT CHR$(13); C=0 LIN=LIN + 1 END IF IF LIN = 20 THEN K$ = INPUT$(1) LIN=0; CLS PRINT TITLE$ PRINT TITLE2$ PRINT END IF NEXT END
Prog.# 1- Programa Scanner de Memoria Segmentada
20
Historia y Evolución de la PC – Jairo Uparella
Tengamos en cuenta lo siguiente: Apuntemos por ejemplo a la dirección 0004:0500; es la misma dirección 0003:0510; y a su vez, 0002:0520, pero la verdadera es la que tiene segmento y desplazamiento 0000:0540. La razón, es debido a la forma de direccionar del 8086. El segmento es sometido a un proceso de desplazamiento de bits (multiplicado por 10) y luego se suma al registro desplazamiento de la dirección. Al hacer esto, todos concuerdan o apuntan a la misma dirección, 00540.
21
Historia y Evolución de la PC – Jairo Uparella
Fig.#11- Modo de Direccionamiento del 286
Mapa de Memoria El Sistema Operativo puede asignar a la aplicación o programa un rango de memoria donde ejecutarse, primero porque obtiene el permiso de la CPU y segundo porque lee un mapa de memoria donde va marcando los espacios que entrega.
RANGO
DECIMAL
HEXADECIMAL
0K1K54K69K247K-
1K 54K 69K 247K 640K
00000 00400 0D800 11400 3DC00
640K768K960K-
768K 960K 1M
A0000 C0000 F0000
PROGRAMA
TIPO
003FF 0D7FF 113FF 3DBFF 9FFFF
BIOS DOS TSRs Programas Datos
Espacio De Memoria Convencional
BFFFF EFFFF FFFFF
Video RAM EMS ROMs, Buffers
Espacio De Memoria Reservada
Tabla #5- Mapa de Memoria en Modo-Real
22
Historia y Evolución de la PC – Jairo Uparella
El rango entre 00000 y A0000, es decir 0 a 640K, son espacios de la memoria convencional propiamente dicha, o la del modo-real, donde se ejecutan aplicaciones bajo DOS, TSRs (Terminate & Stay Resident), es decir que se quedan en memoria sin que uno los vea, accionados por teclas, o como los detestables virus, que al parecer en esa época eran ya muy conocidos. El siguiente rango va desde los 640K al Megabyte, A0000 a FFFFF y es ocupado por tarjetas de video, Red y otras, a la vez que Buffers o memorias temporales de interrupciones y en general de dispositivos. De aquí en adelante, hasta las 16MB es utilizada por aplicaciones que requieren de memoria extendida. Pero las ATs 286 no utilizaban los 16 MB, es decir no trabajaban en modo-protegido con direcciones físicas de 24-bits según la teoría, para llegar a los 16,777,216 Bytes, sino que se comportaban como unas perfectas 8086 que direccionaban hasta 1,048,576 Bytes con formato físico de 20-bits (5 nibbles).
Miremos ahora el rango ocupado por el video:
VIDEO
HEXADECIMAL
ESPACIO
SHADOWING
ESPACIO
MDA
B0000-B1000
4K
CGA
B8000-BC000
16K
EGA
A0000-BFFFF
128K
C0000-C3FFF
16K
VGA
A0000-BFFFF
128K
C0000-C5FFF
24K
Tabla #6- Espacios de Memoria de Video y Shadowing
23
Historia y Evolución de la PC – Jairo Uparella
Entre los 640K y los 768K, eran asignados a los estándares MDA (Monochrome Display Adapter), CGA (Color Graphics Adapter) y EGA (Enhanced Graphics Adapter). Cuando se instalaba un monitor EGA, los espacios para CGA o MDA eran desactivados. Obsérvese que el EGA ocupa mayor espacio que el asignado para CGA o MDA.
¿Por qué ROM en RAM? La velocidad y la ubicación en RAM permiten que el BIOS entre otros, sea tratado como un programa normal y de fácil acceso, lo que mejora considerablemente el rendimiento del equipo. El proceso de reubicar el ROM de video y BIOS en RAM se le conoce como SHADOWING. Claro que al activar el shadowing, hay que hacer lo siguiente: Desactivar el EMS o reubicarlo, para evitar conflictos. Bajo Windows sólo es necesario reubicar el ROM de ciertos dispositivos, puesto que el shadowing del BIOS es innecesario.
‘Lectura de fecha del BIOS ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = &HF000 PRINT “Fecha-BIOS” FOR i = 0 TO 7 v = PEEK(&HFFF5 + i) PRINT CHR$(v) NEXT END
Prog.# 2- Programa para obtener Fecha del BIOS
24
Historia y Evolución de la PC – Jairo Uparella
Supuesto Direccionamiento del 286 Pero supongamos que podemos direccionar los 16 MB ofrecidos por la teoría del 286. Un sistema operativo asigna espacios de memoria en extendida con el modo-protegido activado. La máxima dirección que puede acceder es FFFFFF de 24-bits. El segmento base de 16-bits es desplazado a la izquierda (multiplicándolo por 10) y antes de sumarlo al offset, apunta a un directorio de 64-bits (LDT – Local Table Descriptor) donde se encuentra parte de la nueva dirección correspondiente al nuevo segmento y que sumado ahora sí, al desplazamiento base u offset, obtenemos una dirección física de 24bits o 6 nibbles.
Fig.#12- Supuesto Direccionamiento del 286 en Extendida
El direccionamiento del 286 en extendida, lo podemos comparar con una proyección de cine, en la forma en que metros y metros de película, se pueden ver en una pantalla de medida fija. O metros y metros de cinta magnética de un VHS, en un cuadro de TV de 14”.
25
Historia y Evolución de la PC – Jairo Uparella
Si asignamos a una película 12 cuadros por segundo, el efecto es cámara lenta, pero si asignamos 24 cuadros por segundo, el efecto es cámara normal. Podríamos decir que sí se reduce el tiempo de acceso de las memorias y se aumenta la frecuencia en Megahertcios de la CPU y buses (que no son las mismas), no tendríamos que aumentar considerablemente la cantidad de chips en RAM. Pero esto es sólo una teoría que en la práctica puede crear un caos. Si su AT requiere que las memorias sean de tantos nanosegundos, esto hay que respetarlo. El sistema esta “matemáticamente” configurado para trabajar con valores casi exactos. Esta es otra de las razones de porque los microcomputadoras desplazan microcomputadoras. Lo ideal es reducir el tiempo de ciclo para acelerar procesos o reducir el tiempo en que una Interrupción (como los IRQs que veremos más adelante) gasta en realizar su trabajo, quienes denotan la verdadera condición de velocidad en la PC. La inquietud ahora es saber por qué habría de aumentar la cantidad en chips. En RAM todo se ejecuta más rápido y si hay suficientes chips, muchos y grandes programas pueden “correr”, pero lo cierto es que habrá desperdicio de espacios. Si el Sistema Operativo no da un buen soporte a la distribución en la memoria física, se generarán errores.
26
Historia y Evolución de la PC – Jairo Uparella
RANGO DECIMAL
0k 1K 54K 69K -
HEXADECIMAL
PROGRAMA TIPO
1K 54K 69K 247K
00000 00400 0D800 11400
003FF 0D7FF 113FF 3DBFF
BIOS DOS TSRs Progs
247K - 640K
3DC00
9FFFF
Datos
640K - 768K 768K - 960K 960K - 1M
A0000 C0000 F0000
BFFFF EFFFF FFFFF
Video RAM EMS ROMs, Buffers
1M - 16M
A00000
FFFFFF
Espacio De Memoria Convencional
Espacio De Memoria Reservada
Memoria Extendida
Tabla #7- Mapa de Memoria con Direccionamiento a Extendida
Programas de Utilería El siguiente programa utiliza el segmento &H40 y desplazamiento &H17 es decir, dirección 0000:0417 ó 0040:0017, con lo que se obtienen de memoria, los valores de las teclas manejables por las rutinas del ROM-BIOS y que puede ser amoldado a cualquier programa:
‘Programa lector de teclado ‘Por combinación de carácter ASCII ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = &H40 POKE &H17,0 ‘Switch de teclas DO UNTIL (K$ = CHR$(13))
27
Historia y Evolución de la PC – Jairo Uparella
TECLA = PEEK (&H17) ‘Lectura de tecla ‘Teclas automáticas IF TECLA% = 1 THEN IF TECLA% = 2 THEN IF TECLA% = 4 THEN IF TECLA% = 8 THEN
LOCATE LOCATE LOCATE LOCATE
1,1: 1,1: 1,1: 1,1:
PRINT PRINT PRINT PRINT
“Shift-Der” “Shift-Izq” “Control” “Alternate”
‘Teclas estilo switch IF TECLA% = 16 THEN LOCATE 1,1: PRINT “Scroll” IF TECLA% = 32 THEN LOCATE 1,1: PRINT “Num Lock” IF TECLA% = 64 THEN LOCATE 1,1: PRINT “Caps Lock” ‘Combinaciones IF TECLA% = 17 IF TECLA% = 18 IF TECLA% = 20 . . . IF TECLA% = 48 IF TECLA% = 96 . .
THEN LOCATE 1,1: PRINT “Shift-Scroll” THEN LOCATE 1,1: PRINT “Shift-Scroll” THEN LOCATE 1,1: PRINT “Ctrl-Scroll”
THEN LOCATE 1,1: PRINT “Num+Scroll” THEN LOCATE 1,1: PRINT “Caps+Num”
‘Otras teclas especiales, evitan cruzar números y cursor IF K$ = CHR$(0)+“H” THEN LOCATE 2,1: PRINT “Curs-Up” IF K$ = CHR$(0)+“M” THEN LOCATE 2,1: PRINT “Curs-Rht” IF K$ = CHR$(0)+“P” THEN LOCATE 2,1: PRINT “Curs-Dwn” IF K$ = CHR$(0)+“K” THEN LOCATE 2,1: PRINT “Curs-Lft” IF K$ = CHR$(0)+“R” THEN LOCATE 2,1: PRINT “Insert” IF K$ = CHR$(0)+“G” THEN LOCATE 2,1: PRINT “Home” IF K$ = CHR$(0)+“I” THEN LOCATE 2,1: PRINT “Page Up” IF K$ = CHR$(0)+“S” THEN LOCATE 2,1: PRINT “Delete” IF K$ = CHR$(0)+“O” THEN LOCATE 2,1: PRINT “End” IF K$ = CHR$(0)+“Q” THEN LOCATE 2,1: PRINT “Page Down” ‘ ‘De F1 a F12 reemplazar letra por ; < > ? @ A B C D á å ‘Otras teclas son del código ASCII K$ = INKEY$ TECLA%=0 LOOP END
Prog.# 3- Programa Scanner del Teclado de la PC
28
Historia y Evolución de la PC – Jairo Uparella
Si la instrucción POKE &H17,0 se sustituye por POKE &H17,32 se enciende automáticamente el led NUM-LOCK. Lo mismo puede ocurrir para otras teclas que el usuario estime conveniente. El siguiente programa “enloquece” al teclado y al monitor.
‘Programa KEYCRAZY.BAS ‘ ‘ON/OFF LEDS DEL KEY PAD NUMÉRICO ‘ ‘(C) Jairo Uparella ‘ CLS RANDOMIZE TIMER DEF SEG = &H40 DO UNTIL (K$ = CHR$(27)) POKE &H17,0 X = INT(RND * 3 + 1) IF X = 1 THEN POKE &H17,32 SOUND 100,2 END IF IF X = 2 THEN POKE &H17,64 SOUND 500,2 END IF IF X = 3 THEN POKE &H17,16 SOUND 1000,2 END IF car = INT(RND * 255 + 1) Px = INT(RND * 80 + 1) Py = INT(RND * 24 + 1)
29
Historia y Evolución de la PC – Jairo Uparella
LOCATE Py, Px PRINT CHR$(car) K$ = INKEY$ LOOP END
Prog.# 4- KEYCRAZY.BAS
El código ASCII La línea PRINT CHR$(car), en el Prog.#2, imprime cualquier carácter del código ASCII (American Estandard Code for Information Interchange), el código que contiene 32 caracteres de control de una PC y 224 caracteres que son enviados a impresora y monitor. El circunflejo ^, significa tecla Ctrl.
30
Historia y Evolución de la PC – Jairo Uparella
HEX
0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 A 11 B 12 C 13 D 14 E 15 F 16 10 17 11 18 12 19 13 20 14 21 15 22 16 23 17 24 18 25 19 26 1A 27 1B 28 1C 29 1D 30 1E 31 1F ^ = Ctrl
^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
SIM CODIGO DE CONTROL
SIGNIFICADO
@ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _
Nulidad Comienzo encabezado Comienzo de texto Fin de texto Fin de Transmisión Investigación Recibido positivo Bip Tecla Retroceso Tab horizontal Avanza una línea Tab vertical Avanza una página Enter Desplazamiento hacia afuera Desplazamiento hacia adentro ESC para enlace de datos Control dispositivo 1 Control dispositivo 2 Control dispositivo 3 Control dispositivo 4 Recibido negativo DEL sincrónico Bloque fin de transmisión Cancela datos Fin del medio Sustitución Tecla ESC Separador de archivos Separador de grupo Separador de registro Separador de unidad
NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US
Null Start of Heading Start of Text End of Text End of Transmit ion Enquiry Acknowledge Beep Back Space Horizontal Tab Line Feed Vertical Tab Form feed Enter Shift Out Shift In Data Link Escape Device Control 1 Device Control 2 Device Control 3 Device Control 4 Not Acknowledge Synchrony DLE End Transm Block Cancel End of Media Substitution Escape File Separator Group Separator Record Separator Unit Separator
Tabla #8- Caracteres del ASCII No Imprimibles
31
Historia y Evolución de la PC – Jairo Uparella
El siguiente programa crea una tabla de los 224 caracteres imprimibles del ASCII.
‘Programa Tabla ASCII ‘ ‘ ‘(C) Jairo Uparella ‘ CLS FOR i = 32 TO 255 ‘Número de elementos a$ = CHR$(i%) PRINT USING “###”;i%; PRINT “ “; a$; “ “; NEXT END
Prog.# 5- Los 224 Caracteres Imprimibles del ASCII
Chipsets y el Bus ISA La AT 286, utiliza como controlador de teclado un P8042H de Intel, al que simplemente podemos llamar 8042. Estos controladores son chips ROMs que tienen incrustado un programa como el BIOS para la interpretación de pulsos (bits) de cada tecla y poder representar el ASCII. Como controlador del sistema de memorias se utiliza un chip referenciado como F80C235 – 12 y tiene la particularidad de manejar EMS (Expanded Memory Specification). Como chip de reloj, tiene un 82C54 y un oscilador de 14.318 Mhz. Un par de chips referenciados como 82C37A controlan los DMAs (Dynamic Memory Access) o Acceso Dinámico a Memoria y 2 chips 82C59A que controlan los IRQs (Interrup Request)s que es también controlador del bus ISA, clave para atender a los diferentes dispositivos conectados a la PC.
32
Historia y Evolución de la PC – Jairo Uparella
Si usted tiene una AT 286 y la desarma para conocerla internamente, existe cierta o poca posibilidad de que las referencias de los chips sean iguales a los mencionados, pero sus funciones deben ser las mismas. A todos estos chips se les denomina “Chipsets”. Lo que no hacia parte de esta motherboard era al chip UART, el controlador de video, el conector de 34 pines de diskette, los conectores serial, paralelo y otros elementos que se encontraban en la motherboard de la XT. Todos estos fueron integrados en tarjetas de expansión, acopladas a los slots. Ahora la AT 286 posee 8 slots de expansión tipo ISA, divididos así: 2 de 8-bits y 6 de 16-bits de 8 MHz y rata de transferencia de 4 MB por segundo. Esta última tecnología llega a 94 líneas, es decir 36 líneas más, de las 62 que poseía la ISA de 8-bits.
33
Historia y Evolución de la PC – Jairo Uparella
GND RESET +5V IRQ 2/9 -5V DRQ 2 -12V 0 WS +12V GND -S MEM W -S MEM R -IOW -IOR -DACK 3 DRQ 3 -DACK 1 DRQ 1 REFRESH CLOCK IRQ 7 IRQ 6 IRQ 5 IRQ 4 IRQ 3 -DACK 2 T/C BALE +5V OSC 14.3 MHz GND -MEM CS 16 -I/O CS 16 IRQ 10 IRQ 11 IRQ 12 IRQ 15 IRQ 14 -DACK 0 DRQ 0 -DACK 5 DRQ 5 -DACK 6 DRQ 6 -DACK 7 DRQ 7 +5V -MASTER GND
IO CHCK (NMI) D7 D6 D5 D4 D3 D2 D1 D0 -IO CH RDY AEN Validation A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 -SBHE A23 A22 A21 A20 A19 A18 A17 -MEM R -MEM W D8 D9 D10 D11 D12 D13 D14 D15
Fig.#13- Constitución del Bus ISA
34
Historia y Evolución de la PC – Jairo Uparella
DMAs, IRQs y Direcciones IOs Además de las direcciones ROMs, están los DMAs, IRQs y las Direcciones IOs que pueden ser más conflictivos que los espacios de memoria asignados a ROMs, precisamente por manejar mayor número de dispositivos. En términos generales, los Chipsets son las Unidades IOs que muchos confunden con el término periférico. Si a la CPU la definen como el cerebro del computador, las Unidades IOs, conforman el Sistema Nervioso del mismo. Son chips de soporte dedicado, residentes en la motherboard. En términos formales, los chipsets evitan el ruido o señales parásitas, identifican direcciones, interpretan órdenes, permiten la adaptación física de los requisitos de un periférico y temporizan la transferencia de datos basados en el reloj de buses. La XT trabajaba con chipsets del mismo estilo pero con sólo 8-bits.
DMAs Con los chips 82C37A, podemos seleccionar los DMAs (por software), de acuerdo con el bus ISA. Cada Chip soporta 4, para un total de 8 DMAs en cascada, donde el DMA(4) sirve de canal con los DMAs 0,1,2 y 3 y asignárselo a un dispositivo, puede crear conflictos. En el setup CMOS, o configuración de la PC que podemos al momento del booting o arranque, se seleccionan los estados de espera para intercambio de información. El segundo chip DMA (82C37A) al igual que el segundo chip IRQ (82C59A), se adicionaron cuando la ISA pasó de 8-bits a 16-bits. Los nuevos DMAs son ahora el 4, 5, 6 y 7, utilizados para acelerar datos de entrada y salida con respecto a la memoria del sistema, manteniendo comunicación directa entre un dispositivo y la RAM sin intervención de la CPU, la que es forzada a liberar los buses, suministrar las direcciones y señales de control a la memoria. Cada línea DMA transfiere datos en bloques de 64 KB de 8-bits y de 128 KB de 16-bits hacia los espacios de los 16 MB.
35
Historia y Evolución de la PC – Jairo Uparella
Fig.#14- Chip 82C37A
Canal DMA
Dirección IO
0 8-bit Disponible 1 8-bit Disponible 2 8-bit Controlador Diskette 3 8-bit Disponible 4 Cascada 5 16-bit Disponible 6 16-bit Disponible 7 16-bit Disponible Refresh
087h 083h 081h 082h 08Bh 089h 08Ah 08Fh
Tabla #9- DMAs y Direcciones de Registro de Página
36
Historia y Evolución de la PC – Jairo Uparella
Los DMAs son asignados internamente de acuerdo con el registro de página DMA en direcciones IOs, que requieren procesos rápidos como backups, acceso a diskettes, impresiones y otros. Por medio de estos canales, se puede lograr que un proceso sea más rápido que los procesos realizados entre la CPU y el dispositivo. En las XTs, el DMA(0) era utilizado para el “refresh” de las memorias. En las ATs, está libre y el trabajo de refresh de memorias se dejó a otros circuitos.
Interrupciones En una PC, todo es interrupción. La mínima tarea que puede atender la CPU, está dirigida en primera instancia por una interrupción, las cuales pueden ocurrir en cualquier momento. Podemos tratar cuatro tipos de interrupciones a nivel general: Las tres primeras, una del tipo Hardware y dos del tipo Software. Las de hardware, se refiere a señales de efectos mecano-eléctricos, como pulsar una tecla, un tick de reloj, rotar discos, accionar la salida y entrada de datos en los puertos, o solicitud de interrupción generadas por una tarjeta en un slot de expansión. Las del tipo Software están bajo la coordinación del DOS por una parte y del BIOS por otra, quienes ofrecen los respectivos servicios (subrutinas) al momento de la interrupción, como por ejemplo lectura y escritura en discos, crear o abrir archivos, accionar TSRs, obtener fecha, hora etc., como servicios del DOS y por otra parte, video, comunicaciones, impresión y otros servicios del BIOS. Un cuarto tipo de interrupción, que puede incluirse en el tipo Hardware, son las generadas por la propia CPU, como la interrupción presentada cuando aparece el mensaje “División By Zero” u otros. Las del tipo hardware son reconocidas como líneas IRQs (Interrupt Request Lines).
37
Historia y Evolución de la PC – Jairo Uparella
La forma práctica en assembler para acceder una interrupción, es previamente asignando los valores a los registros del procesador y posteriormente llamando a la interrupción. No se pueda crear una nueva interrupción. Pero crear subrutinas para una interrupción o reasignarlas al vector directamente si es posible. Toda persona que programe en cualquier lenguaje de alto nivel, las utiliza revestidas con órdenes fáciles de recordar como OPEN, REWRITE, para abrir un archivo en C y PASCAL respectivamente y que corresponden a la función 3Dh de la INT 21h de servicios del DOS. La Tecla [SysReq] System Request que viene en el teclado AT tiene un número de función fijo pero su utilidad, variable, ya que es una interrupción reprogramable haciendo llamada a INT 15h función 85. Unix y pocos sistemas hacen uso de esta tecla.
IRQs Los chips de los IRQs 82C59A, que trabajan en cascada, es decir el primer chip (maestro), amplía los niveles de IRQs del 8 al 15 o sea el segundo chip (esclavo) por la puerta o IRQ 2. Son 16 IRQs pero una PC realmente puede soportar máximo 64 niveles de IRQs. Cuando un programa desea acceder el primer controlador o controladores IRQs, lo puede hacer con una llamada o dirección 20h, para el chip maestro y con llamada a dirección A0h, para el segundo o esclavo (Véase Tabla de Direcciones IOs).
38
Historia y Evolución de la PC – Jairo Uparella
Fig.#15- Chip 82C59A
Estos chips pueden permitir que un programa utilice sus funciones internas y de aquí los verdaderos nombres técnicos PICs (Programmable Interrups Controller)s. con tecnología LSI ( Scale Integrator).
Prioridad
Vector
H 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
02h 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 70h 71h 72h 73h 74h 75h 76h 77h
Interrupción NMI Reloj Alarma Teclado Cascada IRQ 8/15 COM 2,4 COM 1,3 Libre Controlador de Diskette LPT1 RTC Libre Libre Libre Libre Coprocesador Disco Duro Libre
Tabla #10- Interrupciones Hardware 39
Historia y Evolución de la PC – Jairo Uparella
La CPU atiende a cada IRQ en un tiempo de aproximadamente 20 milisegundos (Time Slacing). Un dispositivo suministra la dirección de interrupción a la CPU y el control se transfiere a la rutina del dispositivo. NMI (No-Maskarable Interrupt) tiene prioridad de interrupción más alta (Hi – Priority). Su función es detener los procesos a nivel general debido a fallas de corriente o errores de sistema considerables como “Memory Error”. Esta señal puede ser controlada por el puerto 70h (Direcciones IO). A las IRQs se le define como líneas de Interrupción en muchos casos, pero su definición exacta consiste en una señal de petición o solicitud por parte de una tarjeta (más bien del chip controlador del dispositivo) dirigida a la CPU. Lo que se hace prácticamente es interrumpir a la CPU para obligarla a que atienda en un mínimo de tiempo a un dispositivo presente. Son normalmente 16 interrupciones (0-15) con derechos preferentes, es decir el IRQ 0 tiene mayor prioridad que el IRQ 15. La CPU lee los buffers o porciones de memoria de los dispositivos (drivers), para así dar atención a cada uno de ellos. El IRQ 5 esta libre en la mayoría de las ATs. Al igual que los DMAs, no se deben cruzar, es decir no se deben asignar el mismo IRQ a dos dispositivos, lo que acarrea la paralización del sistema. Cada tarjeta trae sus propios Jumpers o Switches para la correcta configuración de la misma y a partir de ellas es donde se hace la asignación de IRQs. El siguiente programa en Qbasic permite obtener las direcciones de las primeras 70 interrupciones localizadas en la Tabla de Vectores de Interrupción. Esta tabla ocupa los primeros 1024 Bytes de memoria baja y combina interrupciones Hardware y de servicios del DOS y del BIOS.
40
Historia y Evolución de la PC – Jairo Uparella
‘Programa Scanner de Direcciones de Interrupciones ‘ ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = 0 TITLE$ = “ INT HEX DESPLAZ. DIRECCION “ + CHR$(13) PRINT TITLE$ FOR L C D PRINT PRINT PRINT
= 0 TO 70 = C + 1 = l * 4 L; TAB(10); HEX$(L); TAB(20); HEX$ (D); TAB(30); FOR I = 3 TO 0 STEP -1 X = PEEK (D+I) IF X <=15 THEN PRINT “0”; HEX$(X); ELSE PRINT HEX$(X); IF I = 2 THEN PRINT “:”;
NEXT PRINT IF C = 20 THEN K$ = INPUT$(1) C = 0 CLS PRINT TITLE$ END IF NEXT END
Prog.# 6- Scanner de las Principales Interrupciones de la PC
41
Historia y Evolución de la PC – Jairo Uparella
La Estructura del programa anterior, nos permite tener en cuenta otro concepto. El segundo bucle o FOR está en forma descendente para la lectura de la dirección. Esto es debido a la forma de cómo la PC guarda la dirección del buffer de una interrupción en una pila o STACK.
El Stack de Interrupciones Un stack es un grupo de registros de memoria y como su traducción lo indica, es una pila que tiene una forma particular de almacenar sus datos: Los primeros en entrar, son los últimos en salir. Siempre se ha comparado con una pila de platos de cocina, que para llegar a los que están más cerca de la mesa hay que tomar los de arriba. Por esto se les denomina registros de memoria LIFO (Last In, First Out)- Para programadores en bajo-nivel, reconocerían esto como almacenamiento en Stack del DS:IP, en el SS:SP (Stack Segment:Stack Pointer) con el fin de que el monitoreo del sistema operativo pueda encontrarlos en la siguiente vuelta, cuyos datos son introducidos por la orden PUSH y obtenidos por la instrucción POP. En la sección “Administración de la PC”, se complementa el tema de Stacks.
Entrada
0040:0017 0
Almacenamiento Orden de Salida en el Stack 4 3 2 1
17 00 40 00
0040:0017 4 3 2 1
Fig.#16- Ubicación de Dirección en el Stack.
42
Historia y Evolución de la PC – Jairo Uparella
Más Programas Siempre que usted observe un dispositivo de la PC, relaciónelo directamente con su contraparte en software. Todos estos recursos son administrados por un driver o controlador del sistema de Entrada y Salida. Me refiero al IO.SYS que se encuentra escondido en el sector de arranque de un disco, acompañando al MSDOS.SYS que es el controlador de sistemas de archivos del DOS y con ellos el BIOS de la ROM que contiene los subprogramas de las interrupciones. El COMMAND.COM es el procesador de órdenes o comandos. Las interrupciones son prácticamente la fuente de datos especiales individuales e independientes para los drivers, y en general para todo tipo de programa codificado en nivel bajo, medio o alto y son los elementos mínimos que pueda acceder una PC. (Véase Apéndice G, Interrupciones de la PC). El siguiente programa puede ser modificado para que entregue el segmento donde se encuentra la subrutina de una interrupción, sólo con indicar el número de la misma.
‘A los programas sólo se les entrega el número ‘de la Interrupción ‘Definición de Segmento de Interrupción ‘ ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = 0 interrupt = 51’ Interrupción del Mouse h$ = HEX$(interrup) d = interrup * 4 d$ = HEX$(d) PRINT interrup, h$, d$ FOR i = 3 TO 2 STEP -1
43
Historia y Evolución de la PC – Jairo Uparella
x = PEEK (d + i) PRINT HEX$ (x) NEXT END
Prog.# 7- Obtención del Segmento de una Interrupción
El valor que genere, puede ser tomado como el segmento base de la ubicación de la subrutina, en este caso la del mouse, cargado por un driver.
‘Dirección tomada de Int 51 (33h) del Mouse y ‘driver del MOUSE.COM cargado en COMx IRQ x entregada ‘por el programa lector del segmento ‘ ‘ ‘(C) Jairo Uparella ‘ DEF SEG =&H105E ‘Segmento tomado del stack en 0000:00CC PRINT “ X Cx Y Cy Botón ” DO UNTIL (K$ = CHR$ (13)) FOR I = &H93E TO &H942 ‘Desplazamientos X = PEEK (I) PRINT USING “ NEXT LOCARE 2,1 K$=INKEY$ LOOP
###”; X;
END
Prog.# 8- Localización de Movimiento del Mouse en Memoria
44
Historia y Evolución de la PC – Jairo Uparella
El programa permite obtener 255 valores para cada coordenada X y Y del mouse, y el valor del Click – Derecho y del Click – Izquierdo. Obviamente el driver MOUSE.COM estaba en memoria, en el segmento de la localización de memoria que el programa lector de Interrupciones entregó. Este programa varía de acuerdo con el driver de mouse que se ésta utilizando y de la dirección depositada en 0000:00CC. Con este programa podemos darnos cuenta que el mouse de tres botones permite asignación de ocho combinaciones de botones. Muchos productores de PCs traen sus propias subrutinas para la ejecución de la INT 51(33H). El siguiente programa es una demostración del acceso a la memoria, con la que se obtiene el mismo segmento y el offset o desplazamiento del programa. Para más información acerca del mouse y sus funciones, refiérase al texto que trae el diskette de instalación. ‘Localización de rutinas del Mouse ej:MOUSE.COM ‘ ‘Instalador de GMOUSE.COM (C) Genios Mouse Driver ‘ CLS DEF SEG = 0 ‘Localiza Segmento mseg = PEEK (51 * 4 + 2) + 256 * PEEK(51 * 4 + 3) PRINT HEX$(mseg) ‘Localiza Offset mouse = 2 + PEEK(51*4) + 256 * PEEK(51* 4 + 1) PRINT HEX$(mouse) DEF SEG = mseg ‘Define segmento (ej:&H105E) del stack en 0000;00CC ‘ ‘Llamada a rutina ‘o localización exacta de movimientos…
Prog.# 9- Localización de Rutinas del Mouse
45
Historia y Evolución de la PC – Jairo Uparella
El reloj es uno de los elementos que constantemente está en movimiento, y sus códigos se obtienen por medio de la interrupción 8 (8h), desplazamiento 0020. El siguiente programa, muestra una sección de la memoria, donde el reloj está registrando sus pulsos. ‘Dirección tomada de Int 8 (8h) del reloj ‘ ‘Movimiento Interno del Reloj ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = &HE90 DO UNTIL (K$ = CHR$(13)) FOR i = &H710 TO &H750 X = PEEK(i) PRINT HEX$(X); “ “; NEXT LOCATE 1,1 K$ = INKEY$ LOOP END
Prog.# 10- Pulsos del Reloj.
46
Historia y Evolución de la PC – Jairo Uparella
Direcciones IOs Las direcciones de puertos IOs, se utilizan tanto para las líneas de componentes de la motherboard (reloj, teclado, discos, puerto serial y paralelo, etc) como para las tarjetas insertadas en los slots de expansión). Cada elemento o tarjeta se le asigna un puerto o dirección donde pueda comunicarse con la CPU. Si se asignó definitivamente la dirección 378h-37Fh al puerto de impresora LPT1, esta dirección no debe asignarse a otro elemento, puesto que generaría un cruce y por ende la paralización del sistema. Por esto se dice a veces que la tarjeta no sirve, dándose un falso diagnóstico. El bloque de direcciones de puertos IOs, es un mapa de direcciones que está separado de la memoria principal, por lo que tienen un tratamiento diferente. Los ATs utilizan 16 Líneas de direcciones para acceder dispositivos, es decir 65536 puertos, pero los productores insisten en dejar sólo 1024 ya que este número es suficiente. Se pueden dispositivos en memoria principal en vez de registros IOs pero esto puede crear dolores de cabeza. Se puede crear fácilmente un programa diagnostico que lea el puerto y si tiene un valor asignado en él, indica la presencia de un dispositivo. El siguiente programa permitió conocer el mapa de puertos IO y saber además que la tarjeta adaptada para un video monocromático y que carecía de manuales, trabajaba en modo gráfico, comparando los datos generados en pantalla con la tabla siguiente de Direcciones IO.
47
Historia y Evolución de la PC – Jairo Uparella
Direcciones IOs XTs
ATs
004 – 00F 020 – 021 040 – 043 060 – 063
000 – 01F 020 – 03F 040 – 05F
080 – 083 0A0 – 0A1
200 – 20F
2F8- 2FF
378 – 37F 380 – 38F 3B0 – 3BF 3D0 – 3DF 3F0 – 3F7 3F8 – 3FF
060 – 06F 070 – 07F 080 – 09F 0A0 – 0BF 0C0 – 0DF 0F0 – 0FF 1F0 – 1F8 200 - 207 238 – 23F 258 – 25F 278 – 27F 2B0 – 2DF 2E8 – 2EF 2F8 – 2FF 300 – 30F 320 – 32F 378 – 37F 380 – 38F 3A0 – 3AF 3B0 – 3BF 3BC – 3BF 3D0 – 3DF 3E8 – 3EF 3F0 – 3F7 3F8 – 3FF
Utilizado por DMA 8237 #1 IRQ 8259 #1 Reloj 8253-XTs, 8254 ATs PPI 8255 XTs Controlador 8042 Teclado AT NMI de AT Registro de página DMA 74LS612 NMI de XT IRQ 8259 #2 DMA 8237 #2 Coprocesador AT Controlador Disco Duro AT Joystick Mouse LIM LPT2 EGA COM4 COM2 LAN Ethernet Controlador Disco Duro XT LPT1 SDLC – Comunicaciones BIsincrónicas BSC – Comunic. Bisincrónicas Primarias Adaptador Monocromático LPT3 Adaptador Gráfico Color COM3 Controlador de Diskettes COM1
Tabla #11- Direcciones IOs Típicas en una PC
48
Historia y Evolución de la PC – Jairo Uparella
Es probable que no aparezca ningún valor en el puerto 378h de LPT1, pero si en 278h para LPT2. De todos modos sin problema apuntará a la impresora asignada en LPT1. Los valores resaltados en la salida de datos del programa a pantalla, indica la presencia de un dispositivo en el puerto.
‘Programa Scanner de Direcciones de Puertos IO ‘ ‘ ‘(C) Jairo Uparella ‘ CLS DIM H(16) TITLE$ = “------------ MAPA DE PUERTOS IO ------------“ TITLE2$=”0 1 2 3 4 5 6 7 8 9 A B C D E F“ PRINT TITLE$ PRINT TITLE2$ PRINT FOR L = 0 TO 1024 + 15 COLOR 7,0 IF C=0 THEN PRINT HEX$(L); TAB(10); I = INP(L) C = C + 1 IF I = 0 OR I = 255 THEN COLOR 7,0 ELSE COLOR 0,15 IF I <= 15 THEN PRINT “0”; HEX$(I); “ “; ELSE PRINT HEX$(I); “ “; H(C) = I IF C = 16 THEN PRINT CHR$(13); C=0 LIN = LIN + 1 End if If LIN = 17 THEN K$ = INPUT$(1) LIN = 0: CLS
49
Historia y Evolución de la PC – Jairo Uparella
PRINT TITLE$ PRINT TITLE2$ PRINT END IF NEXT END
Prog.# 11- Programa Scanner de Direcciones IOs
La mayoría de manuales de driver de dispositivos, sugiere la sintaxis para la asignación de los recursos del sistema, como DMAs o Dirección IO o, en su defecto, los asignan previa y automáticamente, evitando al usuario la difícil configuración de la PC, excepto para los IRQs de tarjetas de dispositivos. El usuario, en gran parte, sólo se limita a corroborar que la asignación fue correcta y, en caso de presentarse algún conflicto, poder detectarlo fácilmente.
Velocidad y Tiempo Otro conflicto entre los elementos de la AT, se presentan con respecto a los estados de espera mencionados. Un estado de espera (WaitState) es el período de respuesta de las memorias con respecto a la CPU, período en que debe terminar sus ciclos normalmente. En éste caso nos referiremos a los estados de esperas adicionales. Los problemas radican en que primero que todo, un estado de espera se añade, debido al tiempo de carga o de proceso de lectura o escritura de las memorias, que es diferente al tiempo de acceso o direccionamiento, y lo segundo, es que esto las hace más lentas. El tiempo de carga de los chips mencionados de la AT 286, 53C256LS-80, es 65 nanosegundos y el de acceso es de 80 nanosegundos. Un ciclo de máquina (Período=1/frecuencia) debe ser igual (o casi) al tiempo de acceso más el tiempo de carga (80ns + 65ns), es decir 145 nanosegundos.
50
Historia y Evolución de la PC – Jairo Uparella
La RAM debe responder en 2 períodos o ciclos. Para la AT 286 que tiene una frecuencia de 12 MHz, un ciclo o período sería igual a 83.3 nanosegundos, pero como son dos ciclos, necesitamos un total de 166.6 ns, lo que se puede comparar con los 145 ns del ciclo de respuesta de las memorias. Debido a que el tiempo de ciclo requerido es mayor que los 145 ns ofrecidos, se agregan estados de espera (en el SETUP CMOS) para tratar de alcanzar los 166,6 ns y completar los ciclos de respuesta de la memoria. Si le agregamos un estado de espera, es decir, 1 ciclo o período más, lo que corresponde a 83.33 x 3 = 249.9 ns, habrá tiempo de sobra para ciclos de 145 ns, lo que hace más lentos los procesos. Una solución a éste problema se dio con la salida del 386. Estamos acostumbrados a llamarle velocidad del computador a los magahertcios que aparecen en la parte frontal de la unidad central del sistema. –Claro que no está mal- pero veamos esto: Llamemos Ticks a cada ciclo. La AT de 24 MHz realmente alcanza una velocidad de 24 millones de ticks por segundos, es decir 12 millones de tick-tacks por segundo. Nadie piensa en esto cuando se habla de velocidad. El valor de 12 MHz es lo que aparece en el display de la parte frontal del sistema utilizando un oscilador de 24 MHz.
51
Historia y Evolución de la PC – Jairo Uparella
CMOS y Jumpers La Configuración de la AT 286 La Configuración de la AT no sólo dependía de archivos como el CONFIG.SYS u otro parecido. Cuando se presionaba la tecla DEL en la solicitud hecha antes de la carga del DOS, obteníamos la configuración correspondiente al CMOS (Common Metal-Oxide Semiconductor) – Semiconductor de óxido de metal común. El CMOS (HM6818A o 146818), es un chip especial susceptible de estática (muchos males de desconfiguración empezaban aquí) y funciona como EPROM (Eraseable Programmable ROM) – ROM programable y modificable – con registros para la configuración de la PC. El programa SETUP que reside en el BIOS, permite la selección de fecha, hora, diskettes, discos duros, EMS, rango de paginación EMS y shadowing entre otros, en un total de 64 bytes. El menú en pantalla del SETUP en éste chip reemplazó a los Dip-Switchs de la XT. La pila recargable NiCD de 3.6V con una duración de 10 años, mantiene los datos en los registros del CMOS. Si esta pila se descarga se pierde la configuración.
52
Historia y Evolución de la PC – Jairo Uparella
CMOS SETUP(C) Copyright 1985-1990, American Megatrends Inc.,
Date (mm/day/year) Time (hour/min/sec)
: Fri, Dec 29 1995 : 10 : 14: 36
Base memory size : 640KB Ext. Memory size : 1024 KB
Floppy Drive A:
: 1.44MB 3.5"
Numeric processor : Not Installed
Floppy Drive B:
: Not Installed
Hard disk C: type Hard disk D: type
: 47 = USER TYPE 1011 : Not Installed
Primary Display
: Colos 80 x 25
Keyboard
: Installed
BIOS Shadow option
: Main BIOS
Cyln
Head
WpCom
Lzone
Sect
Size
15
0
0
22
163MB
Sun
Mon
26
27
28
3
4
10
Scratch RAM Option
Tue Wed
Thu
Fri
Sat
29
30
1
2
5
6
7
8
9
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
PARITY Option EMS I/O ENABLE EMS Star address RELOCATE Options:Monochrome, Color 40 x 25 VGA or EGA, Color 80 x 25, Not Installed ESC = Exit, = Select, PgUp / PgDn = Modify
Fig.#17- Menú de Configuración CMOS
No se debe generalizar conceptos con respecto a las ATs, en cuanto a jumpers y conectores de configuración y sus funciones. Estos jumpers y conectores realmente indican al sistema, qué camino tomar para llegar a ofrecer servicios óptimos a los dispositivos en la motherboard comúnmente. J puede venir de la palabra Joint, que significa Unión o Conector, como la de parlantes, leds, baterías, fuentes, etc.., que en total son más de 15. JP si es el término correcto de Jumper y a diferencia de los Joints, los Jumpers son seleccionables. La siguiente tabla ayuda a reconocer elementos en la motherboard. Entre paréntesis encontramos otras posibilidades de nomenclaturas:
53
Historia y Evolución de la PC – Jairo Uparella
NOMENCLATURA
J JP CN U CX CY C R D Q RP X OSC L
FUNCION
Unión o conector sin opciones Puente o Jumper. Unión con opciones de configuración (JS) Conector. Lo mismo que J Unidad o elemento, chip, Slot (SL), SIMM (M) Condensador electrolítico (TC, K) Condensador cerámico de poliéster Condensador cerámico o lenteja Resistencia Diodo, Zener Transistor Paquete de resistencias Cristal – Temporizador RTC Oscilador – Temporizador CPU o Buses Inductancia
Tabla #12- Nomenclatura de Elementos en la Motherboard
La siguiente descripción de Jumpers puede variar de PC en PC.
NOMENCLATURA
JP1 JP2 JP3 JP4 JP5 JP6 JP7
FUNCION
Led de Turbo Switch Reset Switch Turbo (8 MHz o 12 MHz) Reloj Reservado por el sistema Tipo de Monitor Mono/Color Selector PowerGood
Tabla #13- Jumpers
54
Historia y Evolución de la PC – Jairo Uparella
POST y Checkpoints En el momento de carga o booting de la PC, el BIOS carga un programa de pruebas conocido como POST (Power On-Selft Test), que se aprecia cada vez que se enciende la PC. Hace un recorrido por los principales puntos (Checkpoints) de funcionamiento de la PC. En el Apéndice B encontrará una lista completa y actualizada del recorrido sobre checkpoints.
Bips
1 2 3 4 5 6 7 8 9
Falla o error
Refrescamiento DRAM Circuito de Paridad RAM Base de 64K Temporizador CPU Controlador de Teclado Error Modo-Virtual Memoria ROM BIOS CHECKSUM
Tabla #14- Errores Reportados por el BIOS
Sonido Obviamente la tecnología del sonido no podía faltar en la PC. La orden SOUND de Qbasic puede emitir muchos tonos a través del speaker o parlante de la PC. A continuación la lista de los valores de las frecuencias de cada nota de 3 octavas con lo que usted (si está inclinado por la música) podrá componer melodías de piano, con tiempos, bemoles, sostenidos y octavas, pero antes recuerde que la orden SOUND tiene el siguiente formato:
55
Historia y Evolución de la PC – Jairo Uparella
SOUND n,t Donde n es el valor que representa la frecuencia de la nota, y t el tiempo.
Nota C C# D D# E F F# G G# A A# B C C# D D# E F F#
Do Do# Re Re# Mi Fa Fa# Sol Sol# La La# Si Do Do# Re Re# Mi Fa Fa#
Valor n
Nota
262 277 294 311 330 349 370 392 415 440 466 494 523 554 587 622 650 698 740
G G# A A# B C C# D D# E F F# G G# A A# B C
Valor n Sol Sol# La La# Si Do Do# Re Re# Mi Fa Fa# Sol Sol# La La# Si Do
56
784 831 880 932 988 1047 1108 1174 1244 1300 1396 1480 1568 1662 1760 1864 1976 2094
Historia y Evolución de la PC – Jairo Uparella
Capítulo
3
Constitución de la AT 386 El inicio de una nueva era. A Windows ya le habían encontrado cierta similitud con el “Finder” de los Macintosh. Se pensaba que así era mejor manejar archivos y directorios, éstos últimos denominados “carpetas”. En ese entonces no se tendía a creer que era por la búsqueda de una arquitectura que soportara multitareas. Claro Windows trabaja como un conmutador de tareas que permitía que una aplicación corriera en primer plano, pero las que están en background, quedaban paralizadas. Justamente, lo que hace el Dosshell de la Versión 4.0 de MS /DOS. Para todos, Windows era sólo un programa o aplicación con nuevos efectos visuales, pero no un programa que pudiera manejar elementos de hardware y tener control sobre ellos. El 286 fue un gran procesador. Pero todo seguía creciendo. La velocidad, ese factor que incide tanto en nuestras vidas se volvía cada vez más exigente.
57
Historia y Evolución de la PC – Jairo Uparella
Antes se dijo que el 8086 había salido primero al mercado que el 8088, pues bien el 80386SX de 16-bits salió posteriormente al 386DX de 32-bits. Esto se debió simplemente para buscar compatibilidad con el 286. Empezaba el año de 1986.
El chip 386SX Pero fue 1988, el año del 386SX. Un chip con un registro de 32-bits pero con una ruta de datos de 16 – bits. Muchos de los chipsets, o casi todos los que conforman la 286, dan soporte a este chip de 25 MHz. Veamos cuáles son sus características: - 275,000 Transistores (más caliente que el 286) - 1,4 MIPs (Millones de Instrucciones por Segundo) - SM (Surface Mount) – Montaje Superficial de 100 pines - de 32-bits - Bus de Direcciones de 16-bits - Máxima 25 MHz - Máximo direccionamiento en RAM 16Mbytes
La Motherboard - Coprocesador 80387 para SX (el 3 reemplaza al 2) – PLCC. - El resto es lo mismo, excepto que la RAM como la conocíamos antes (chips en bancos) ahora viene totalmente en SIMMs. El MS/DOS es el 3.30, la ISA pasó de 12 a 32-bits, al espacio de memoria reservada (640-1MB), se les denominó UMA (Upper Memory Area) o Area de Memoria Superior y aparecen los drives y diskettes de 3.5” y el mouse o ratón.
58
Historia y Evolución de la PC – Jairo Uparella
Fig.#18- Chip 386SX
Posiblemente usted dirá, “pero si yo tengo un 286 con mouse y diskettes de 3.5”. Fíjese lo que son las cosas del mercado. Estos dispositivos aparecieron cuando el 286 estaba en su furor y el 8088 se comercializaba aún, a los que se les podía configurar con lo mismo. Estrategias de ventas. Para ese entonces y para terminar de completar, Microsoft y la IBM, lanzan al OS/2, el sistema operacional para el 386 que trabaja en extendida, cuando Windows apenas empezaba saber lo que era esto. El VGA sustituyó al EGA en 1987 y el 286 soporta VGA.
Chipsets Los chipsets de la 286, como el 82C37A y el 82C59A, fueron integrados en chips independientes referenciados con otros códigos pero seguían siendo internamente, lo mismo, como el i82343 para DMAs y el i82344 para IRQs. La i no significa integrado, sino Intel. Claro que hasta hoy se sigue utilizando las primeras nomenclaturas o códigos. El chip reloj es el 82C54 y el teclado el 8042.
59
Historia y Evolución de la PC – Jairo Uparella
El Chip 386DX Cuando se volvió a hablar del 386, se hizo con referencia 80386DX y si trae nuevas y mejores características. - 275,000 Transistores (ya dijimos lo caliente que se pone) - 1,4 MIPs - SM (Surface Mount) – Montaje Superficial de 132 pines - <Bus de datos> de 32-bits - Bus de Direcciones de 32-bits - Máxima 25 MHz - Máximo direccionamiento en RAM 4 GB (4,294´967,295).
La Motherboard - Coprocesador 80387 para DX – PGA - El resto es lo mismo, excepto que ahora las aplicaciones de 16-bits tienen una verdadera PC de 32-bits.
Fig.#19- Chip 80386DX
60
Historia y Evolución de la PC – Jairo Uparella
Por un descubrimiento en los cálculos con la dirección A20 del 286, sobre 1 MegaByte, el 386 y chips siguientes ofrecen un espacio de memoria extendida de 64K, direccionable en modo-real. Se le denominó HMA (High Memory Area) ó Area de Memoria Alta, espacio controlado por el manejador de memoria HIMEM.
El Modo-386 Mejorado Pero esto no era lo más impactante de la época. El 386 ofrecía un modus operandi llamado modo-386 Mejorado (386-Enhanced), un modo en el que Windows accede la capacidad de la memoria “virtual”, lo que pareciera que se utilizara más memoria que la física disponible. WINA20.386 permite que Windows sea ejecutado en éste modo. La memoria virtual es prácticamente un proceso que sirve para controlar todo el espacio de direcciones que ofrecía el 386DX. El 386SX, a pesar de tener una vía de direcciones de 16-bits, tenía todas las capacidades para acceder memoria virtual. El proceso consiste en la transferencia de datos (a manera de páginas) de tareas que se encuentran en los archivos swaps o de intercambio en el disco duro hacia la RAM, pasando por la CPU con la ayuda de las memorias “Caches” que tienen un funcionamiento algo similar. Este proceso al que se denominó Paginación, también se le conoce como “Swapping”. Pero no se exploto realmente al 100% toda esta tecnología en la 386DX como podríamos creer; Windows y DOS, no soportan programas en el espacio de 4Gbytes, debido a que todos eran software de 16-bits en un chip avanzado de 32-bits y para esto se necesita un Sistema Operativo y aplicaciones de 32-bits
61
Historia y Evolución de la PC – Jairo Uparella
Las multitareas son las primeras beneficiadas con la memoria virtual, pero muy poco se trataron en el 386, excepto sistemas de la familia IBM como el OS/2. En esta época también nace el concepto de modo-virtual 86. Un modo en el que el procesador 386, puede ejecutar aplicaciones DOS, con protección a memoria (modo-protegido del 386), haciéndolos diferentes a programas DOS que se ejecutan en modo-real. Con la memoria virtual, dijimos que también aparecieron las mencionadas memorias “Cachés” y que sí son memorias físicas del tipo SRAM, pues aceleran el proceso de transferencia de datos entre la CPU y la memoria RAM y también entre dispositivos y memoria (sirviendo como buffers o memorias temporales). Las Cachés permiten en sí, que la CPU encuentre información inmediata, que proviene lentamente de la RAM y acelerar el proceso de la memoria virtual, que por naturaleza es demasiado lento. Aquí empieza la verdadera complejidad de la Informática, puesto que con la llegada de Windows 3.1, MS/DOS 5.0, los procesos están encaminados a la real administración interna de una computadora a nivel memorias, donde no sólo intervienen unas cuantas órdenes en el AUTOEXCEC.BAT y en el CONFIG.SYS, sino del manejo independiente de dispositivos y su comportamiento en la RAM, asignación de Interrupciones, reubicación y selección de drivers o controladores en software. Tengamos en cuenta que MS/DOS sólo trabaja en modo-real y no utiliza para nada la memoria extendida, mientras que Windows, es un entorno gráfico (paralelo, para no decir bajo DOS) de 16-bits, que alterna entre el modo-real y el modo-protegido del 386. Habíamos visto además, que cuando un chip CPU necesita acceder a la RAM, lo hacia en dos ciclos de máquinas y que adicionar estados de espera, era perder tiempo y el rendimiento de la máquina se reducía casi en un 50%.
62
Historia y Evolución de la PC – Jairo Uparella
Fueron varios los proyectos que se realizaron en búsqueda del aumento de la velocidad de la PC y evitar agregar estados de espera.
Memorias Cachés Esperar a que las memorias completaran su ciclo para entregar o recibir datos de la CPU era algo que si la PC hablara, de eso se habría quejado. ¿Por qué simplemente no se pone un elemento que tenga disponibles los datos de la RAM justamente en el momento que la CPU los requiera sin estado de espera y cuando la CPU esté procesándolos, este elemento intercambie nuevos datos con la RAM? Las estáticas RAM (SRAMs), vinieron a elaborar ese trabajo. Ya habíamos dicho que se les llamó Cachés y simplemente trabajan como un buffer entre la RAM y la CPU. No vale la pena explicar los dos proyectos anteriores para evitar estados de espera, puesto que no ofrecieron el rendimiento y funcionamiento esperado. El chipset F82C235 es el encargado de dirigir y controlar la información que va y llega a las memorias SRAM. La configuración de las SRAM es muy similar a las DRAM, las de la memoria principal.
63
Historia y Evolución de la PC – Jairo Uparella
Un 386DX, posee por lo general 2 bancos de 4 chips cada uno, de 8K de 8-bits o de 32K de 8-bits, de 20 ns, dando como resultado configuraciones variables de acuerdo con la necesidad que se tenga con el equipo, 64K, 128K o 256K de SRAM. Un noveno chip, de 15 ns, verificador de errores, se les conoce como chip TAG y su valor está estipulado por la capacidad total de las SRAM.
Fig.#20- Chips de Memorias Caché
El modo particular en que operan los cachés, hacen de ellas un tema interesante dividido en dos secciones – organización y criterio de escritura – de acuerdo con la constitución de registros pero no es necesario conocerlas internamente para comprender su funcionalidad.
Organización de los Cachés La organización de los cachés está dada por la forma de <proyección> de la memoria, bien sea en forma directa o por asociación de grupos. Proyección Directa (Direct Mapped) – la memoria principal es dividida en bloques y asigna una línea de caché a cada bloque o división de la RAM. 64
Historia y Evolución de la PC – Jairo Uparella
No ha sido una solución a considerar, puesto que ha presentado problemas en multitareas, debido a la carga dinámica (Trashing) de las caché entre tareas y el rendimiento es deficiente, soportando duros trabajos. Organización Asociativa de Grupos – Se asignan múltiples líneas a cada bloque de memoria así: Organización Asociativa de 2 vías (Two Way Set Associative): Cada dirección en RAM, ocupa uno de dos espacios en las caché, pero el problema éstas deben buscar dónde hizo la asignación. Organización Asociativa de 4 vías (Four Way Set Associative): Cada dirección en RAM, corresponde a 4 espacios o líneas en el caché, lo que es una ventaja, porque reduce el trabajo de carga dinámica.
Criterio de Escritura Según el criterio de escritura, puede ser directa, con buffer o de contraescritura.
Escritura Directa (Write- Through): Actualiza los datos tanto de RAM como los de las caché. Escritura con Buffer (Write-Buffer): Demora prácticamente la escritura hasta que la CPU dirija su atención a otro proceso, permitiendo así la escritura del contenido del buffer a memoria. Contraescritura (Write-Back): La RAM se actualiza sólo cuándo los datos en la memoria caché son desplazados.
65
Historia y Evolución de la PC – Jairo Uparella
El Modo-Virtual 86 y el Modo-Protegido Modo-Virtual 86, así se denomino a la forma de ejecutar (emular) un programa en memoria extendida cuyas direcciones relativas están más bien predispuestas para ser procesadas en modo-real. Las nuevas direcciones suministradas por un Sistema Operativo basadas en las direcciones relativas del programa original, relacionan al programa con el modo-protegido, permitiéndole que esté sea tratado en memoria extendida, con todas las facultades de protección a memoria que el 386 ofrece con sus 32-bits. En otras palabras un programa que se elaboró en la 8088, 8086 ó 286, puede ser ejecutado en un 386, el cual es tomado por un Sistema Operativo, que lo “virtualiza” ofreciéndole un nuevo espacio de direcciones donde ejecutarse. Si se intenta ejecutar un nuevo programa de estas máquinas, se le asigna un nuevo espacio donde hacerlo, formando así en conjunto con el primero, un proceso de multitareas. Las multitareas no es la ejecución de dos, tres o cuatro programas al mismo tiempo, como se piensa, sino de grupos o bloques de códigos, tomados de uno o varios programas. Ahora, si estamos analizando la ortografía del documento en pantalla en un procesador de texto, podremos esperar la impresión de otro documento, pero al mismo tiempo de verificar la ortografía, realmente como se dice ¿podremos seguir introduciendo caracteres al documento? o ¿tendríamos que esperar que un proceso finalice? Si intentáramos ahora crear un programa para acceder a un driver de dispositivo en extendida como el mouse o video, tendríamos que utilizar las direcciones físicas generadas por el Sistema Operativo, donde reside el código, pero el modo-protegido, no sólo está restringido para los programas y aplicaciones.
66
Historia y Evolución de la PC – Jairo Uparella
En el software actual y del futuro el control para acceder a los dispositivos no será tarea de usuarios, por lo que nuevas órdenes harán está misión, sin necesidad de que el programador las tenga que desarrollar. Estas órdenes, tienen la capacidad de trabajar en un proceso de memoria virtual, en modo-protegido, en modo-virtual 86, acceder a la memoria extendida (o expandida), con lo que el modo-real pasará a la historia.
Memoria Virtual Habíamos dicho que el proceso de llevar y traer páginas del disco a memoria y viceversa, se le conoce como “swapping” lo que toma un tiempo como en los cachés, denominado “tiempo de trashing”, indicando el intercambio dinámico de páginas. Aclaremos que una página es un grupo de códigos cuya longitud es estipulada por el Sistema Operativo y que hacen parte de un programa. No podemos desviar nuestra atención de las multitareas cuando se habla de memoria virtual, puesto que una PC que no tenga asignado el uso de la memoria virtual prácticamente da inicios de que trabaja emulando el modo-real es decir, en modo-virtual 86 con una aplicación a la vez. Pero también es cierto que la memoria virtual es necesaria para ser utilizada por grandes aplicaciones que requieran un espacio considerable de memoria, sin necesidad de compartirla con otra aplicación, puesto que el volumen del programa y datos (sobre todo éstos) significa mayor número de páginas a tratar.
67
Historia y Evolución de la PC – Jairo Uparella
Una sola aplicación que maneje grandes formatos de archivos gráficos como TIFF u otros de su estilo, requiere gran cantidad de memoria en el orden de los megabytes y si la asignación de la memoria virtual es incorrecta, es más factible que se presente un Fallo de Protección General (GPF) o Error Irrecuperable de Aplicación (UAE), lo que tiende a paralizar el sistema o en algunos casos a violar la integridad del mismo. La paginación en el proceso de la memoria virtual es algo que está en constante movimiento desde que de enciende la PC, llevando y tomando páginas de programas para su ejecución o salida del proceso. El tiempo de transferencia está dado por la relación entre la memoria virtual y la memoria real. Si la memoria virtual posee una asignación demasiado grande con respecto a la memoria real, tendería a paralizar todos los procesos, por lo que la asignación de la memoria virtual debe ser más una asignación automática del sistema que de un usuario. Tiempo de Transferencia = memoria virtual / memoria real de páginas Esta es una relación matemática que se está refiriendo más que todo al tiempo que gasta en llevar las páginas que se encuentran en el disco a la RAM sin tener en cuenta otros factores. Lo cierto es que si asignamos más chips en la RAM, la formula dice que el tiempo del proceso tiende a reducirse y si se asigna mucho de espacio de memoria virtual, el sistema tiende a paralizarse o volverse muy lento. Resumiendo, los objetivos prácticos de la memoria virtual son evitar el fraccionamiento o segmentación de la memoria, permitir la emulación de maquinas virtuales y el uso de recursos en un sistema de red.
68
Historia y Evolución de la PC – Jairo Uparella
Los Archivos SWAPS Con lo que se tiene en RAM y DISCOS, se asigna entonces lo que se tendrá en virtual. Esta si es la verdadera ley. 386SPART.PAR (ReadOnly Hidden) son los archivos permanentes utilizados por Windows 3.1 ó 3.11 en el proceso swapping se hace a través del archivo WIN386.SWP. Cuando se seleccionaba memoria virtual con asignación permanente, se tenía acceso a las capacidades de Acceso de disco de 32-bits, siempre y cuando el disco duro, permitiera (por compatibilidad) estas características, lo que beneficiaba a aplicaciones de 16-bits bajo DOS en el proceso de multitareas.
Direccionamiento con Memoria Virtual El 386DX, está facultado de igual forma de direccionamiento que la del 286 con una ligera diferencia que empieza cuando el segmento es sometido a un “descriptor” de 32-bits, que interpreta la dirección relativa de 16-bits y sumada al “offset” o desplazamiento de 16-bits, se obtiene una dirección de 32-bits. Pero ésta no es la dirección absoluta a obtener; podríamos decir que ésta es una dirección lineal de 32-bits, pero el 386DX está obligado a pasar por otro proceso, que conocemos como memoria virtual. Proceso éste que nos genera realmente la dirección física de la localización de páginas en la RAM. La memoria virtual requiere más de 300K de memoria extendida (XMS) para llevar a cabo su proceso. Una forma de entender el proceso de memoria virtual, es comparándolo con un “kinetoscopio” cuya “manivela” no para de girar con el fin de pasar fotos (estáticas) y verlas en movimiento.
69
Historia y Evolución de la PC – Jairo Uparella
En el 386DX sucede lo mismo. Una vez se activa el proceso de paginación (con la carga de Windows o activación del modoprotegido), no se detiene hasta que se apague el equipo. La dirección lineal de 32-bits está dividida de la siguiente manera:
Fig.#21- Formato de Dirección Lineal de 32-bits
BITS
10-bits 10-bits 12-bits
ASIGNACION
1024 directorios de bloques de páginas 1024 bloques de páginas de directorios 4096 páginas por bloque en directorios
Tabla #15- Distribución del Formato Lineal de 32-bits
Hay un total de 32-bits y el proceso utiliza un rango de 1024 x 1024 x 4096 direcciones diferentes, lo que corresponde al espacio de 4 Gigabytes (4,294´967,295 Bytes). Un registro especial del chip 386DX, sirve como indicador del movimiento de páginas y constantemente está señalado un índice que indica el directorio de páginas que se esta utilizando.
70
Historia y Evolución de la PC – Jairo Uparella
Fig.#22- Proceso de Paginación en el 386DX
Las Multitareas y el Firmware Una forma fácil de conocer el funcionamiento de las multitareas, es comparándola con las interrupciones. Las interrupciones están enumeradas, catalogadas por prioridad y se conoce su ubicación en memoria en el momento en que se requiera de su uso. El proceso de acceso a una tarea es análogo al de una interrupción, pero no lo mismo. El “firmware”, un viejo concepto modernizado, hace posible que varios programas sean ejecutados “a la vez” o por lo menos hacernos creer que es así. Si queremos ubicar el concepto de firmware, lo debemos tratar como un termino entre la programación a bajo nivel y alto nivel, dirigido a estructuras de códigos tanto de hardware como de software.
71
Historia y Evolución de la PC – Jairo Uparella
Obviamente, la mezcla de interrupciones con las multitareas constituye la “vitalidad” de todo el complejo sistema que ahora debe soportar la CPU, los chipsets y la memoria. En el momento en que se hace un llamado a una tarea, se le asigna un número de prioridad con el fin de que el Sistema Operativo, cuando haya atendido a otras tareas, pueda ubicarla con facilidad y proseguir al proceso de las secuencias de tareas, donde se originó la interrupción. Para cada tarea ocurre lo mismo. No se debe confundir este término, con programa. Se puede decir que un programa o varios programas se ejecutan por asignación y distribución de tareas. Las tareas pueden “colgarse” (término utilizado para designar la paralización o error generado por una tarea) y, cuando esto sucede, sufre las consecuencias el programa cuyos códigos hagan parte de la tarea en proceso.
72
Historia y Evolución de la PC – Jairo Uparella
Capítulo
4
Constitución de la AT 486 El 386 era un chip perfecto para una arquitectura de 32-bits, con todas las facultades de protección que un chip puede ofrecer, soportado por un sistema completo de administración de memoria. Pero esto no era suficiente para hacer que la ejecución de procesos en general sea más rápida. Habíamos dicho que las interrupciones en general denotan la verdadera condición de velocidad en la PC. Según la ley de MOORE, Intel estará en condiciones de generar un nuevo chip cada 18 meses, duplicando el número de transistores (densidad) con respecto al chip anterior, incluyendo el espacio donde están ubicados. El 386 contenía 275,000 transistores en 1,5 micras (1.5E- 06 ó 0,0000015 metros). Si se consiguiese duplicarlo, el número de instrucciones por segundo a ejecutar sería mayor.
73
Historia y Evolución de la PC – Jairo Uparella
El Chip 486SX En el año de 1991 se introduce el 486SX. Un chip con un registro y ruta de datos de 32-bits al igual que el 386DX. Todos los chipsets que conformaban la AT 386 dan soporte a este chip de 25MHz. Veamos cuales son sus características:
- 1.200,000 Transistores en 1.0 micras - 20 MIPs - PGA (Pin Grid Array) de 168 pines - de 32-bits - Bus de Direcciones de 32-bits - Máxima 25 MHz - Máximo direccionamiento en RAM 4 GB
Motherboard -Coprocesador 80487 para SX (un 486DX que desactiva al 486SX) -El resto es lo mismo, excepto que el chip 80486SX fue más allá de los límites de la tecnología. Internamente trae un caché de 8Kbytes y un coprocesador o unidad de punto flotante (FPU). Y no importando que estas cachés hayan aparecido posteriormente a las caches de chips SRAM, se les denominó L1 Cachés (Level 1) o de Nivel 1 y a las anteriores, L2 Cachés (Level 2), de Nivel 2. El coprocesador fue introducido en el chip 486SX, pero no está activado, tarea que cumple externamente el 80487 PGA.
74
Historia y Evolución de la PC – Jairo Uparella
Fig.#23- Chip 80486SX Inexplicablemente, los términos de líneas SX y DX, fueron aplicados a la integración de coprocesadores internos en chip. El 386SX, presenta también estos términos y no ofrecía esta tecnología. La definición que pudiéramos dar a estas siglas puede corresponder a la representación sencilla o doble del (SingleeXpression, Double–eXpression), que sólo se refieren a mejoramientos hechos a chips del mismo tipo. Del modelo 486SX existen dos tipos en el mercado, como ha sucedido con el 286 y el 386. El 486SX de 25MHz y el de 33MHz. Su diferencia está prácticamente centrada sólo en la velocidad y el comportamiento como chip es el mismo.
El Chip 486DX Este es uno de los chips de mayor venta en el mundo, por su velocidad y fiabilidad, que existe desde 1989. Además de abrir las puertas a la nueva era de actualizaciones junto al 486SX, sirvió como coprocesador a éste último. Veamos sus características:
75
Historia y Evolución de la PC – Jairo Uparella
- 1.200,000 Transistores en 1.0 micras - 20 MIPs - de 32-bits - Bus de Direcciones de 32-bits - Máxima 50 MHz - Máximo direccionamiento en RAM 4 GB - 8K Caché L1 - El resto es lo mismo, excepto que tiene activado el coprocesador matemático interno y no usa externos y la motherboard puede estar configurada por ejemplo, con 64MB en RAM, 128 KB en ROM, 256K caché L2, SIMMS de 72 pines de 70 ns. Aquí nacen muchas tecnologías, como flashBIOS, actualizaciones y el BUS LOCAL.
Fig.#24 – Chip 80486 DX
76
Historia y Evolución de la PC – Jairo Uparella
FlashBIOS El BIOS que se encontraba en ROM, puede ahora ser modificado o actualizable por software, debido a que está integrado en un chip EEPROM (Electrical Eraseable Programmable Read Only Memory), ROM programada o borrada eléctricamente, haciendo parte en las actualizaciones de PCs.
Actualizaciones La actualización (Upgrade) de PCs permite que la motherboard de un sistema anterior soporte futuros chips, evitando cambiar la motherboard completa. Los productores se la jugaron toda, produciendo PCs no sólo con compatibilidad con la 386, sino también integrado 386 y 486 en la misma motherboard. La actualización de PCs permite dos cosas: cambiar el chip para mejorar el rendimiento de la PC o adaptar un nuevo chip en el Socket para chips de actualización, denominados OVERDRIVES.
El Chip 486DX2 Poco a poco, y después de la introducción de nuevos elementos en el interior de los chips, el término “coprocesador externo”, empieza a ser desplazado por un nuevo concepto tecnológico que realmente beneficia al usuario. No podemos hablar de diferencias entre los dos chips anteriores (DX y DX2), puesto que la única, radica en el hecho de que DX2, que actualiza motherboards anteriores, es una CPU de mejoramiento u OVERDRIVE independiente y autónomo duplicador del reloj, que intercambiando con un SX, DX o simplemente insertándolo en el socket overdrive, o en el receptáculo del 487SX, opera al doble de la 77
Historia y Evolución de la PC – Jairo Uparella
interna como chip, dejando en la misma condición de la externa (buses) de la motherboard. Un DX de 33MHz puede ser sustituido ahora en un chip de 66 MHz. El SX2 ofrecía el mismo beneficio para el SX, pero las ventajas del DX2 hicieron que lo superara.
Fig.#25- Chip 80486DX2
El Bus Local Muy poco hemos tratado sobre el bus EISA de 32-bits, el mismo ISA pero mejorado (Enhanced Industry Standard Arquitecture), y que fue utilizado inicialmente en el VECTRA 486 de Hewlett-Packard con el fin de hacer frente a la competencia del MCA (MicroChanel Architecture) de IBM. EISA es sustituido por un nuevo concepto de buses y la IBM paralizó la producción de MCA.
78
Historia y Evolución de la PC – Jairo Uparella
El 486 viene acompañado por un nuevo bus que nació con la idea de ofrecer al usuario un soporte para tarjetas de video y que fueron acoplados en la motherboards de algunos fabricantes de 486, adicional al bus tradicional ISA y se le denominó bus local. Pero el problema era la incompatibilidad que estaba generando, puesto que era de uso exclusivo para ciertas tarjetas de expansión.
Fig.#26 – Slot EISA
Bus Mastering Otro concepto que había surgido con la tecnología EISA se conoció como Bus Mastering, definida como la capacidad de control autónomo de un bus, que permite la comunicación de un dispositivo con la memoria sin la utilización de canales DMAs. Los buses de tecnología actual ofrecen bus mastering.
79
Historia y Evolución de la PC – Jairo Uparella
VL – BUS VESA-LOCAL BUS (Video Electronic Standard Association) en 1992 generalizó el concepto de bus local, permitiendo que cualquier tarjeta de expansión, de video, red, etc, pudiera ser acoplada en la motherboard. El bus VESA, difiere en su totalidad de la constitución de la EISA, alcanzando también los 32-bits de compatibilidad con el 486, a una frecuencia de 32 Mhz y una rata de transferencia de 132 MBytes por segundo. Posteriormente el bus local VESA-2, pasó a los 64-bits, con una frecuencia de 50Mhz y razón de transferencia de 320 MB por segundo.
Fig.#27- Slot VL-BUS
80
Historia y Evolución de la PC – Jairo Uparella
D0 D2 D4 D6 D8 GND D10 D12 +VCC D14 D16 D18 D20 GND D22 D24 D26 D28 D30 +VCC A31 GND A29 A27 A25 A23 A21 A19 GND A17 A15 +VCC A13 A11 A9 A7 A5 GND A3 A2 N/C -RESET D/-C M/-I/O W/-R
D1 D3 GND D5 D7 D9 D11 D13 D15 GND D17 +VCC D19 D21 D23 D25 GND D27 D29 D31 A30 A28 A26 GND A24 A22 +VCC A20 A18 A16 A14 A12 A10 A8 GND A6 A4 -WBAK -BE0 +VCC -BE1 -BE2 GND -BE3 -ADS
-RDYRTN GND IRQ9 -DRDY -BLAST ID0 ID1 GND LCLK +VCC -LBS16
-LRDY -LDEV -LREQ GND -LGNT +VCC ID2 ID3 ID4 N/C -LEADS
Fig.#28- Constitución del Vesa Local BUS 81
Historia y Evolución de la PC – Jairo Uparella
El Chip 486DX4 Este chip tiene mucho que ver con la elaboración de chips Pentium. Es un Overdrive triplicador de reloj (3x3), para los sistemas anteriores 486, por lo que fue denominado por la prensa norteamericana a manera de burla como “el chip DX3”. Veamos cuales son sus características: - 1,600,000 Transistores en 0.8 micras - BiCMOS (doble ejecución) - PGA (Pin Grid Array) de 238 pines – ZIF (Zero Insertion Force) - de 32-bits - Bus de direcciones de 32-bits - Máximo direccionamiento en RAM 4GB - Actualizable con Pentium - Máxima Interna de 100Mhz y externa de 33MHz. Internamente trae un coprocesador y un caché de 36Kbytes, pudiendo soportar un máximo de 256K Bytes en caché L2 con criterio de escritura Write-back. El resto es lo mismo, excepto que trabaja a 3,3 voltios, a diferencia de sus antepasados de 5 voltios. ZIF es una característica del procesador que indica la fácil inserción de pines en el receptáculo sin necesidad de hacer presión.
82
Historia y Evolución de la PC – Jairo Uparella
Capítulo
5
Constitución del Pentium En 1993, Intel desarrolla uno de los Chips más controvertidos de la historia de la PC, el overdrive Pentium (o el chip 586 de Intel). Nuevas características adicionadas a las ofrecidas por los anteriores chips, enmarcan la tecnología aplicada al denominado “chip poderoso”. El primer Pentium que se conoce, es un overdrive para chips 486DX2 y anteriores que tenía el nombre-código de P24T, llamado “Pentium To Four”. Su frecuencia oscila entre los 60 y 66 MHz y también es un triplicador de reloj de 5 voltios y 3.1 millones de transistores en 0.8 micras, el grosor de un cabello. En 1994 salió al mercado otro overdrive Pentium, bajo el nombrecódigo de P54C, con la misma tecnología del P24T, con la diferencia de trabajar a 3.3 voltios, y permitir las actualización de PCs 486DX4. Veamos sus características: 83
Historia y Evolución de la PC – Jairo Uparella
-3.3 Millones de Transistores-BICMOS en 0.6 micras -150 MIPS -PGA (Pin Grid Array) de 320 pines ZIF - de 64-bits -Bus de direcciones de 32-bits - Máxima 100MHz -Máximo direccionaniemto en RAM 4GB -16K Caché L1 (separados 8K códigos – 8K Datos) -Write-Back – 2 Way Set Associative -Coprocesador Interno -Arquitectura Superescalar -Predicción dinámica de Una PC, para soportar un Pentium, puede venir equipada con RAM extensible de aproximadamente 192MB, 8 sockets para SIMMS y 9 slots de expansión. El caché interno, por supuesto tiene un controlador, también interno. El resto empieza a variar, debido a que las arquitecturas de buses se vuelven más inteligentes y exigentes, lo que implica la adición de nuevos chipsets.
Chipsets Las cachés de 256K en chips de 32KB de 8-bits y 15ns, son manejadas por el nuevo chipset PCMC(PCI / Cache / Memory Controller) 82434, que mantiene un TAG de caché interno, da soporte de direcciones y ejecuta el refresh de RAMs. Dos Chipsets LBX (Local Bus Acelerator), con referencias 82433, son controlados por PCMC. Ofrecen una interface de datos de 64-bits DRAM y una interface de 32-bits de direcciones y datos al slot PCI. Otros chipsets corresponden al controlador del sistema de buses y al puente (PCI-bridge) entre buses de diferentes tecnologías, como ISA-PCI.
84
Historia y Evolución de la PC – Jairo Uparella
Fig.# 29- El Chip Pentium
Arquitectura Superescalar y los Pipelines Prácticamente es una característica a resaltar, debido a que permite que 2 instrucciones sean ejecutadas en un solo ciclo de reloj. Antes de decodificar una instrucción, el Pentium determina si una instrucción se puede ejecutar paralelamente con otra. Para lograr esto, el Pentium utiliza 3 vías diferentes denominadas “pipelines”, (pronúnciase “paipplains”) cada una con 3 unidades de ejecución (suma, división y multiplicación).
85
Historia y Evolución de la PC – Jairo Uparella
Fig.#30- Arquitectura Interna del Pentium
Predicción Dinámica de Bifurcación Es manejada por un pequeño caché que predice la ruta que debe tomar una instrucción de bifurcación. Si hay un acierto en la predicción, la instrucción es ejecutada sin espera. Hay un alto porcentaje de posibilidad de que haya un hit o acierto.
86
Historia y Evolución de la PC – Jairo Uparella
Fig.#31- Pentium de 3.3 V (Visto por debajo)
87
Historia y Evolución de la PC – Jairo Uparella
88
Historia y Evolución de la PC – Jairo Uparella
Pines del Pentium PIN
Significado
A20M# A3-A31 ADS# ADSC# AHOLD AP APCHK# BEn# BF BOFF# BP[3:2] BRDY# BREQ BT3-BT0 BUSCHK# CACHE# CLK D/C# Data/ D63-D0 DP7-DP0 DPEN# EADS# EWBE# FERR# FLUSH# FRCMC# HIT# HITM# HLDA# HOLD IBT IERR# IGNNE# INIT INTR INV IU IV KEN#
Pin dirección A20 modo-real Addresses - Direcciones Address status – Estado de dirección Address status – Estado de dirección Address hold - Mantener dirección Address parity – Paridad de dirección Address parity Check Status – Estatus de paridad Byte Enable – Habilitación de byte Bus Frequency – Frecuencia de bus BackOff Input – Entrada de acierto Breakpoints Burst ready – Modo burst listo Bus request – Solicitud de bus Branch Trace – Rastro de bifurcación Bus check – Chequeo de bus Internal Cacheability – Inicia los ciclos de caché interno Clock – Reloj Code-Data – Código del ciclo de bus Data – Líneas de datos Data Parity – Paridad de datos Dual-processor Mode Enable – Habilita 2do procesador External Address – Direcciones externas External Write Buffer – Buffer de escritura externo Floating Point Error – Error de Punto Flotante Data Flush – Afluencia de datos Functional Redundancy Checking Master/Checker Hit-Acierto Hit to a modified line – Acierto a linea modificada Hold Acknowledgement – Mantener reconocimiento Bus Hold Request – Solicitud de mantenimiento de bus Instruction Branch – Instrucción de bifurcación Internal Error – Error interno Ignore Numeric Error – Ignora error numérico Initialización – Inicialización Interruption – Interrupción Invalidation – Invalidación U-pipe Instruction V-pipe Instruction Cache Enable – Habilitación de caché
89
Historia y Evolución de la PC – Jairo Uparella
LINTO LINT1 LOCK# M/IO# NA# NMI PCD PBGNT# PBREQ# PCHK# PEN# PHIT# PICD1 PICCLK PICDO-1 PM/BP{1:0] PRDY PWT R/S# RESET SCYC SMI# SMIACT# STPCLK TCK TDI TDO THERR TMS TRST# U/O# VCC W/R# WB/WT#
Local Interrupt – Interrupción local (por INTR) Local Interrupt – Interrupción local (por NMI) Bus Lock – Aseguramiento Memory Input/Output Next Address – Próxima dirección NMI Page cache disable – Deshabilitación de página de caché Private bus arbitration grant line – Arbitraje privado de bus Private bus request – Solicitud de linea de arbitraje Parity check – Chequeo de paridad Parity enable – Paridad habilitada Pentium hit – Indica coherencia en caché PIC Disable – Deshabilita PIC APIC Clock – Reloj de PIC Avanzado PIC disable output – Salida de PIC Performance monitoring BP – Monitoreo de breakpoint Proff ready – Prueba finalizada Page write through – Pagina de escritura directa Receive/Send – Interrupción asincrónica Reset Split cycle – Divide cicle System Management Interrupt – Interrupción de sistema Active System Management Interrupt Stop Clock – Parada de reloj Testability clock – Estado de reloj Test data input – Entrada de datos de prueba Test data output – Salida de datos de prueba Thermal Failure – Falla en Cooler Test Mode Select – Selección de modo de prueba Test Reset Upgrade to OEM processor- Actualización 3.3 V Write/Read Primary cache – Ciclo primario de W/R Writeback/Writethrough
Tabla# 16- Pines del Pentium
90
Historia y Evolución de la PC – Jairo Uparella
El Bus Mezanine PCI La arquitectura del bus PCI (Peripheral Componet Interconnect) que había aparecido en 1992 y creada por Intel, debutada como el bus Mezanine de 30 MHz de 32 ó 64-bits con una rata de transferencia máxima de 264 KBytes por segundo, a 3.3 y 5 voltios y 184/188 líneas, desplazando al nuevo y último bus local de VESA, también de 64-bits. Su gran capacidad y velocidad lo hace un bus compatible 100% con el chip Pentium. El concepto de Mezanine se debe a que el PCI es un bus intermediario (buffered), más bien autónomo, con el que algunos de sus circuitos saltan a la CPU. Su reloj es independiente de la CPU y la transmisión de datos es multiplexada, característica que permite que las direcciones y datos (A/D) compartan las mismas líneas. Otras características son full-arbitraje central, dependiente del PCI bridge para el control autónomo de información, chequeo de paridad de direcciones y datos y capacidad de multimastering.
Fig.#32- Slots PCI de 32 y 64-bits
91
Historia y Evolución de la PC – Jairo Uparella
PCI
Fig.#33- Constitución del Bus PCI por bloques
92
Historia y Evolución de la PC – Jairo Uparella
-12 VC TCK GND TDO +5VDC +5VDC -INTB -INTD -PRSNT1 RESERVADO -PRSNT2 GND { KEY GND { KEY RESERVADO GND 0-REQ +5VDC {+3.3 VDC A/D 31 A/D 29 GND A/D27 A/D 25 +5VDC { +3.3 VDC C/-BE3 { C/BE3 A/D 23 GND A/D 21 A/D 19 +5VDC { +3.3 VDC A/D 17 C/-BE2 GND -IRDY +5VDC { +3.3 VDC -DEVSEL GND -LOCK -PERR +5VDC { +3.3 VDC -SERR +5VDC { +3.3 VDC C/-BE1 A/D 14 GND A/D 12 A/D 10 GND { GND { GND A/D 8 A/D 7 +5VDC { +3.3 VDC A/D 5 A/D 3 GND A/D 1 +5VDC { +3.3 VDC -ACK 64 +5VDC { +5 VDC +5VDC { +5 VDC
-TRST +12VDC TMS TD1 +5VDC -INTA -INTC +56VDC RESERVADO +3.3 VDC } +5VDC RESERVADO KEY } GND KEY } GND RESERVADO -RST +3.3 VDC } +5VDC -GNT GND RESERVADO A/D 30 +3.3 VDC } +5VDC A/D 28 A/D 26 GND A/D 24 IDSEL +3.3 VDC } +5VDC A/D 22 A/D 20 GND A/D 18 A/D 16 +3.3 VDC } +5VDC -FRAME GND -STOP +3.3 VDC } +5VDC SDONE -SBO GND PAR A/D 15 +3.3 VDC } +5VDC A/D 13 A/D 11 GND A/D 9 GRD } GRD } C/-BEO +3.3 VDC } +5VDC A/D 6 A/D 4 GND A/D 2 A/D 0 +3.3 VDC } +5VDC -REQ 64 +5 VDC } +5VDC +5 VDC } +5VDC
93
Historia y Evolución de la PC – Jairo Uparella
RESERVADO GND C/-BE6 C/-BE4 GND A/D 63 A/D 61 +5VDC { +3.3 VDC A/D 59 A/D 57 GND A/D 55 A/D 53 GND A/D 51 A/D 49 +5VDC { +3.3 VDC A/D 47 A/D 45 GND A/D 43 A/D 41 GND A/D 39 A/D 37 +5VDC { +3.3 VDC A/D 35 A/D 33 GND RESERVADO RESERVADO GND
GND C/-BE7 C/-BE5 +3.3 VDC } +5VDC PAR 64 A/D 62 GND A/D 60 A/D 58 GND A/D 56 A/D 54 +3.3 VDC } +5VDC A/D 52 A/D 50 GND A/D 48 A/D 46 GND A/D 44 A/D 42 +3.3 VDC } +5VDC A/D 40 A/D 38 GND A/D 36 A/D 34 GND A/D 32 RESERVADO GND RESERVADO
Fig.#34- Constitución del Bus PCI de 64-bits
94
Historia y Evolución de la PC – Jairo Uparella
PCI PIN
Significado
CLK RST A/D C/BE PAR FRAME IRDY TRDY STOP IDSEL DEVSEL REQ GNT PERR SERR SBO SDONE
Clock – Reloj Reset Address / Data – Dirección / Datos Bus byte Enable – Orden y byte bus habilitados Parity – Paridad Cycle Frame – Cíclo de frame Initiator ready – Iniciador listo Target ready – Destino listo Stop Initialization device select – Selección inicio dispositivo Device select – Selección dispositivo Request – Solicitud Grant – Permiso de acceso Parity error System error Snoop Backoff – Acierto o hit Snoop done – Estado de acierto
Tabla# 17- Significado de Pines del Bus PCI
Pentium P6 Este es el último chip de nuestra historia de 10 años. Disponible para finales de 1995, realmente para 1996. Este chip “parece” ser el verdadero procesador que Intel había anhelado. Su tecnología para 1995 no estaba a disposición de la prensa especializada y no salió al mercado a pesar de que se había anunciado para ese año. 6 millones de transistores en 0.6 micras, permiten al Pentium llegar a los 150 MHz y casi a los 300 MIPS. Para la fecha, Intel trabajaba en el sucesor del P6, llamado P7.
95
Historia y Evolución de la PC – Jairo Uparella
Otra vez a empezar En 10 años de historia, Intel consiguió pasar de 8 MHz a 150 MHz, de 0.3 MIPS a 300 MIPS, de 16-bits a 64-bits. Si usted aplicara la conocida ley de Moore, podría conocer anticipadamente la nueva historia de la PC, que empieza con el Pentium 6 y un bus PCI con características de la tecnología Plug y Play, evitando la difícil configuración a través de Jumpers, asignando automáticamente IRQs y otros recursos de la PC. Con la llegada de Windows 95 y su arquitectura de 32-bits, se abren las puertas a un futuro que se empezó a construir hace unos años atrás con la primera versión de Windows.
96
Historia y Evolución de la PC – Jairo Uparella
Capítulo
6
Los periféricos de la PC El Controlador de Hardware Un periférico por lo general está manejado por un controlador hardware y un controlador de software. El controlador de hardware, es un chip que por lo general se encuentra en la tarjeta que se inserta en el slot de expansión. Este chip, de gran capacidad, forma el corazón de una tarjeta controladora y podemos citar al 8645 de diskettes, conocido desde hace mucho como el chip D765AC NEC (Nipón Electric Company). Junto con otros elementos genera, codifica e interpreta los datos que vienen del periférico y que llegan o salen de las unidades IOs (chipsets), pasando por los slots de expansión. En su mayoría son chips capaces de trabajar como convertidores análogodigitales y realizar otras tareas que requiera la PC. Otros controladores dijimos que vienen integrados en la motherboard, pero su tecnología o funcionalidad es la misma.
97
Historia y Evolución de la PC – Jairo Uparella
Existen tarjetas especializadas para la integración de periféricos a la PC que podríamos denominar de múltiple propósito como las conocidas Multi-IOS que permiten la conexión por ejemplo, de un drive de diskettes, disco duro, dos puertos seriales y un paralelo. El chip controlador de esta tarjeta está referenciado como 8374.
Fig.#35- Tarjeta Multi-IO
El controlador de Software El controlador de software, más conocido como Driver, es grabado en el disco duro, en un directorio del sistema de fácil reconocimiento y cargado por los archivos AUTOEXEC.BAT o en CONFIG.SYS. En algunos casos el CONFIG permite el reconocimiento del driver a través de la orden DEVICE y de parámetros.
Tarjeta Controladora Es el circuito adaptable a los slots de expansión y que pueden ser de 16 ó 32-bits. Reconocida con el término de “Interfaz”, tiene integrados todos los elementos para el manejo del periférico, con un conector especial amoldable a las tecnologías ISA, VESA, o PCI.
98
Historia y Evolución de la PC – Jairo Uparella
Uno en particular, el adaptador de pantalla Hércules, HDA, combina las capacidades gráficas con una resolución de 720x348, con el texto, a pesar de ser un adaptador monocromático. En éste y los siguientes capítulos, conoceremos los detalles del monitor y sus adaptadores o controladores y las diferentes impresoras, la sencilla matriz de puntos, la de chorro de tinta y la sofisticada tecnología LASER. Luego entramos a detallar el mundo de los discos, incluyendo al CDROM obviamente las tarjetas de sonido y, por último, el dispositivo de comunicaciones o de transmisión de datos MODEM.
Monitores Una Historia para ver Se les conoce como el dispositivo No. 1. Su evolución a través de la historia de la PC, ha permitido un significativo avance para el desarrollo del software en especial a las aplicaciones gráficas. No podemos catalogar a los monitores de acuerdo con la motherboard, pero sí por su tarjeta y controlador que funciona de intermediario entre la PC y el monitor. Cuando apareció al mercado la IBM PC, esta ofrecía un sencillo monitor para textos de 80x25 (columnas x filas), monocromático y de 11.5” (pulgadas) de diagonal. La AT 286 apareció también con este tipo de monitor. La constitución de la pantalla era de un material a base de fósforo, conocido como P39.
99
Historia y Evolución de la PC – Jairo Uparella
La IBM PC podía soportar monitores de color con una resolución de 320x200 con 16 colores de trabajo y 8 de fondo en verde y negro, con una resolución de 640x200.
Resolución y Píxel La resolución esta definida por el número de píxeles (Picture element) o PELs, que pueden ser presentados en una pantalla. Al píxel podemos definirlo también como grano de pantalla. Cada píxel está definido por coordenadas XY y colores. La resolución y el número de píxeles, dependen del controlador que se esté utilizando. Así , el monitor de la IBM PC podía soportar una resolución de 640x200 píxeles. El siguiente programa simula la generación de un carácter por bits, (0s y 1s), o la forma de cómo es representado un carácter en pantalla de caja o celda de 8x8:
‘Generador Simulador de caracteres ‘8 x 8 ‘ ‘(C) Jairo Uparella ‘ CLS DIM c%(8,8) SCREEN 2 LOCATE 2,1 PRINT “C RT GEN
-COLOMBI “;
FOR y% = 1 TO 8 FOR x% = 1 TO 8 READ c%(x%, y%) PRESET (x% +
7, y% + 7), c%(x%, y%)
100
Historia y Evolución de la PC – Jairo Uparella
PRESET (x% + 31, y% + 7), c%(x%, y%) PRESET (x% + 63, y% + 7), c%(x%, y%) PRESET (x% + 143, y% + 7), c%(x%, y%) NEXT NEXT END ‘Formación de caracteres ‘ DATA 0,0,1,1,1,0,0,0 DATA 0,1,1,0,1,1,0,0 DATA 1,1,0,0,0,1,1,0 DATA 1,1,0,0,0,1,1,0 DATA 1,1,1,1,1,1,1,0 DATA 1,1,0,0,0,1,1,0 DATA 1,1,0,0,0,1,1,0 DATA 0,0,0,0,0,0,0,0
Prog.#12- Generador Simulador de Caracteres
Configuración En la XT el tipo de video era seleccionado por un interruptor del paquete DIP-switch. Con la introducción del CMOS en la AT, puede ser seleccionado o en su defecto ser detectado. Esta información es controlada posteriormente por el BIOS. El driver o controlador software juega un papel importante, pues es el que ofrece el soporte y datos de los programas que lo requieran, además de permitir la conmutación de modos de video. Por lo general, el software o aplicación selecciona el tipo de video y resolución, con el driver en RAM. El siguiente programa permite definir el tipo de monitor que usted posee adaptado a su PC. Corrija o añada la línea correspondiente al valor arrojado por el BIOS en memoria.
101
Historia y Evolución de la PC – Jairo Uparella
‘Detección del Video-Mode de la PC ‘ ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = &H0 Video% = PEEK (&H449) PRINT “Código “; Video%; “ Monitor de “; SELECT CASE Video% CASE 2 PRINT “80 Columnas, 0 Colores.” CASE 3 PRINT “80 Columnas, 16 Colores.” CASE 7 PRINT “Modo Adaptador Monocromático” CASE 16
‘ ‘ ‘ ‘ ‘ ‘
CASE
PRINT “Alta Resolución, 64 Colores” . . . . ¿? PRINT “Alta Resolución, 16.7 mill. Colores
END SELECT END
Prog.#13- Detector de Video
102
Historia y Evolución de la PC – Jairo Uparella
Constitución del Monitor Los principios básicos de la tecnología de un TV no difieren de la constitución de un monitor. El elemento principal, un tubo al vacío de forma especial, llamado CRT (Cathode Ray Tube) Tubos de Rayos Catódicos o Tubo de Rayos de Electrones. Por medio de un cañón, estos electrones son disparados a una placa de fósforo, donde producen una luminosidad. Antes de ser estrellados contra la placa, pasan por una rejilla denominada “mascara de sombra”, una lámina delgada de metal con muchos orificios y que debido a su geometría, evita que el rayo golpee a un punto de fósforo equivocado. El cañón es orientado por el “Yugo deflector”, que origina un campo magnético por donde pasa el rayo, contrarrestando los efectos que el campo magnético terrestre y otros campos magnéticos producen.
El monitor a Color Pero las cosas se complican un poco con la llegada del color. Orientar y controlar un electrón es sencillo, pero 3 a la vez, el proceso es un poco más complicado para generar trios RGB (Red, Green, Blue), Rojo, Verde, Azul. La máscara de sombra se interpone entre los rayos para hacer la respectiva separación y permitir la representación del color correcto para dibujar un píxel. Esto se hace sobre el fósforo sensible, formado por segmentos, cada uno con los tres colores básicos.
103
Historia y Evolución de la PC – Jairo Uparella
Fig.#36- CRT color
Formación de Colores Un píxel está formado por un grupo de bits que dicen el número de colores que se puede generar. Así, un píxel de 4-bits, puede ser representado con 16 colores, diferentes. Si el píxel esta formado por 6bits, podemos obtener 64 colores y con 8-bits, 256 colores. La siguiente tabla muestra la formación de colores básicos con los 4-bits, Intensidad, Rojo, Verde y Azul.
104
Historia y Evolución de la PC – Jairo Uparella
No.
IRGB
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Color Negro Azúl Verde Azul Verdoso Rojo Magenta Marrón Blanco Gris Oscuro Azul Claro Verde Claro Azul Verdoso Claro Rojo Claro Magenta Claro Amarillo Blanco Intenso
Tabla #18- Formación de Colores
El siguiente programa genera los 16 colores básicos en modo texto. Si lo desea, y de acuerdo con su monitor, puede cambiar el modo asignando a la instrucción SCREEN.
105
Historia y Evolución de la PC – Jairo Uparella
‘Representación de colores básicos ‘ ‘ ‘(C) Jairo Uparella ‘ CLS SCREEN 0 FOR c% = 0 TO 15 COLOR c% PRINT CHR$(219); NEXT c% END
Prog.# 14- Colores Básicos
La Paleta, la Combinación de Colores El color 6 (0110) combinan Rojo y Verde, produciendo Marrón. Si se aumenta la intensidad, bit 1, produce el color 14 (1110), Marrón intenso o simplemente amarillo. Para los demás colores, es igual. Obsérvese que los colores puros azul, verde y rojo (1, 2 y 4), están representados por un solo bit. Con 5-bit el color es el mismo pero intermitente. La representación en pantalla e impresión puede variar de acuerdo con el formato que se esté utilizando y por otros factores que implican la presencia de más bits con más información.
106
Historia y Evolución de la PC – Jairo Uparella
Formato
No bits
Distribución
B&N 16 Colores 256 Colores 256 Colores RGB CMYK
1 bit 4 bits 8 bits 8 bits 24 bits 32 bits
1 bit 1 nib 1 byte 1 byte 3 bytes 4 bytes
Tabla# 19- Formatos Usuales de Colores
El formato de pantalla RGB combina 256 tonos rojos, 256 tonos verdes y 256 tonos azules, para un total de 16,777,216 tonos de colores diferentes. Cuando se utiliza el formato de impresión CMYK (Cyan, Magenta, Yellow, Black), se expresa en porcentaje de colores. Así, un 100% en magenta y 100% en amarillo, producen rojo.
DOT Pitch Cada píxel está subdividido en 3 puntos y cada punto en un color básico, cuya distancia de centro-a-centro de cada uno define el dotpitch o punto de resolución en milímetros. A menor distancia, mejor resolución. Existen además, pantallas con tecnologías Trinitrón, las cuales no están formadas por puntos, sino por líneas verticales cuya medida en milímetros, se mide también de centro-a-centro de las barras.
107
Historia y Evolución de la PC – Jairo Uparella
Fig.#37- Dot-pitch - Trinitrón
Otras Características Frecuencia Horizontal Es el número de líneas iluminadas en un segundo. A mayor número de líneas, mayor es la resolución. Se le conoce como frecuencia de barrido. Las unidades están dadas en KHz.
Refresco Vertical Define la velocidad con la que los rayos de electrones corren a través de la pantalla de arriba abajo una línea a la vez. A mayor resolución, mayor es la razón de refresco vertical, permitiendo así la no degradación. Se le conoce también como frecuencia de actualización o de cuadro. Su unidad está en el orden de los Hz. Si la frecuencia vertical es lo suficientemente alta, es posible la eliminación del parpadeo.
108
Historia y Evolución de la PC – Jairo Uparella
Ancho de Banda Corresponden al número de puntos en una línea multiplicados por la frecuencia de barrido. Su unidad está dada en el orden de los MHz.
Controladores o Adaptadores de Video El adaptador monocromático MDA (Monochrome Display Adapter), representaba los caracteres en una caja de 8x8 píxeles en una pantalla de 40x25 y 80x25 (columnas x filas). En 1981, CGA (Color Graphics Adapter), además de trabajar en modo de texto de 80 x 25 y 16 colores, ofrecía una resolución máxima de 640x200 monocromático. Para 1984 IBM introduce el estándar EGA (Enhanced Graphics Adapter), con 16 colores básicos y paleta de 64 colores, ofrecía una resolución máxima de 640x350 píxeles y podía manejar celdas de caracteres de 8x8, 8x14, 9x14 y 9x16. Pero en 1987, el adaptador VGA (Video Graphics Array) es introducido con la llegada las PCs IBM PS/2, ofreciendo una resolución de 640x480 píxeles con los 16 colores básicos y una paleta de 262,144 o combinados, en un tamaño de pantalla de 14”. A partir de aquí VGA con el paso del tiempo, busca la mejor resolución y tecnología aplicada a monitores, con el fin de generar mejor nitidez en los caracteres y gráficos con 800x600 píxeles. SVGA (SuperVGA) ofrece resoluciones de 1024x768 píxeles con medidas de 17” o 21” de diagonal y dot-pitch de menos de 0.28 milímetros.
109
Historia y Evolución de la PC – Jairo Uparella
El Adaptador VGA Este es el adaptador más común en los últimos tiempos. Su disponibilidad de acoplamiento de un slot ISA, llega a los 16-bits, superando su velocidad con respecto al de 8-bits. Está compuesto por un chip acelerador que procesa la intensidad gráfica y otros aspectos. La RAM caché, que almacena valores de ventanas, iconos, fonts, etc. Pequeños chips que permiten la interface con el slot. El controlador RAMDAC, que convierte las señales digitales a análogas y viceversa y determina la máxima razón de refresh.
Fig.#38- Adaptador VGA
110
Historia y Evolución de la PC – Jairo Uparella
RAM de Video Para ubicación en memoria reservada del sistema, sugiero remitirse al capítulo II, Mapa de Memoria. Un 486 utiliza por lo general dos tipos de chips para su extensión en video RAM, como son el 51426 que realmente es un tipo de memoria de 256K de 70 ns DRAM en un paquete ZIF (Zero Insertion Force) y las ya conocidas 44256 de 1nibble DIP, también de 70 ns. El tipo de memoria VRAM (Video RAM), es más costoso. Son chips de doble puerto, que permiten acceder a la CPU y hacer refresh de la pantalla.
Pin
Asignado a
1 2 3 4 5 6 7 8
Rojo Verde Azul ID-2 in GND Regreso rojo Regreso Verde Regreso Azul
Pin 9 10 11 12 13 14 15
Asignado a N/A Regreso de Sincroniz. ID 0 – in ID 1 – in Sinc. Horizontal – out Sinc. Vertical – out Reservado
Tabla #20- Conector VGA de 15 pines
Características Adicionales de los Monitores Los monitores presentan ciertas características adicionales a las mencionadas y su importancia creció con la llegada del VGA.
111
Historia y Evolución de la PC – Jairo Uparella
Entrelazados (i) Para un monitor entrelazado (interlaced), la pantalla es dividida en dos campos de línea (par e impar). Por lo tanto el refrescamiento con el rayo de electrones es doble debido a que, primero refresca las pares y en la siguiente vuelta las impares. La mayoría de monitores que poseen una alta señal de ancho de banda no necesitan el entrelazado. Lo normal es que el rayo rastree todas las líneas en cada barrida vertical. Con esto se evita el parpadeo, lo que produce cansancio visual. Ahora sabemos porqué no es bueno considerar monitores entrelazados.
Sincronización Múltiple de Frecuencia Es la capacidad de seleccionar diversidad de frecuencias, definiendo dos tipos de monitores. Un monitor Multiscan o Autosincrónico, tiene la capacidad de encajar en cualquier frecuencia horizontal y vertical, entre los límites altos y bajos del adaptador. Los de frecuencia-fija aceptan señales en un número limitado de combinaciones, generadas por el adaptador. Estas señales pueden ser del tipo MDA, CGA, EGA o Hércules.
Capacidad Autoswitching Es la habilidad con la que un monitor puede detectar el modo de video para una aplicación dada y automáticamente adaptarse a ese modo.
112
Historia y Evolución de la PC – Jairo Uparella
Distorsiones Los monitores por lo general tienden a presentar distorsiones en su geometría de pantalla o defecto en la representación de píxeles. Uno de los más frecuentes es el error de convergencia, cuando el rayo rastrea los puntos de fósforo equivocados y los objetos en pantalla, presentan un color desplazados al borde. Otra distorsión es el blooming, en el cual si se aumentase el brillo, aumentaría el volumen de los objetos en pantalla. La descolorización se presenta a causa de la poca intensidad con que son disparados los electrones, debido a campos magnéticos, que los distorsionan. Para evitar esto último se utiliza el control DEGAUSS. Otras distorsiones, son poco frecuentes como el barreling, donde la pantalla presenta una forma inflada, el bowing, las líneas del borde forman curvas que convergen hacia la misma dirección y el keystoning, donde un extremo de la pantalla, se ve más angosto que el otro extremo.
Ratio
640 x 480 800 x 600 1024 x 768 1024 x 768
Horiz. KHz
31.5 35 - 78 35.5 48.2
Vert. Hz
Tipo
60 - 70 56 - 60 87 60
VGA VESA IBM 8514 i No i
Tabla #21- Frecuencias Comunes de Resoluciones
113
Historia y Evolución de la PC – Jairo Uparella
De Caracteres a Bitmaps Los bitmaps están formando una serie de información, basada en píxeles y un respectivo color. Se les utiliza como fonts, íconos y otros elementos en la interfaz gráfica de Windows. Para representar bitmaps, se requiere de un adaptador de video lo suficientemente rápido y con una gran resolución. A los bitmaps también se les conoce como pictogramas. El siguiente programa es una variación del reproductor de caracteres (Prog.# 12) y simula la reproducción de un icono de Windows:
‘Simulación de bitmap ‘32 x 32 píxeles ‘ ‘Requiere Adaptador gráfico ‘ ‘(C) Jairo Uparella ‘ CLS DIM c%(32, 32) SCREEN 1 ‘ ‘Desktop ‘ LINE (0,0) – (640, 480),1, BF FOR y% = 1 TO 32 FOR x% = 1 TO 32 READ c%(x%, y%) PRESET (x% + a, y% + b), c%(x%, y%) NEXT NEXT END ‘ ‘formación de icono – bitmap
114
Historia y Evolución de la PC – Jairo Uparella
DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 0, 7, 0, 7, 0, 7, 0, 7, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 0, 7, 7, 7, 7, 7, 0, 7, 7, 7, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 0, 1, 1, 1 0, 7, 7, 7, 7, 7, 0, 7, 7, 7, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 7, 0, 1, 1, 1 0, 7, 7, 7, 7, 7, 0, 7, 7, 0, 0, 7, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 7, 7, 0, 0, 1, 1, 1 0, 7, 0, 0, 0, 0, 0, 0, 7, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 7, 0, 1, 1, 1 0, 7, 7, 7, 7, 7, 0, 7, 7, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 1, 1, 1 0, 7, 7, 7, 7, 7, 7, 7, 7, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 7, 0, 1, 1, 1 1, 0, 7, 7, 7, 7, 7, 7, 7, 0, 0, 7, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 7, 7, 0, 0, 1, 1, 1 1, 1, 0, 7, 7, 7, 7, 7, 0, 0, 7, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 7, 0, 7, 0, 1, 1, 1 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 7, 7, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 7, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0, 7, 0, 7, 0, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 7, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 7, 7, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 7, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 7, 0, 7, 0, 0, 0, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 7, 0 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 0, 7, 0, 0 1, 1, 1, 1, 1, 1, 1, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 1, 1, 1, 1, 1, 1, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 0, 7, 0 1, 1, 1, 1, 1, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0 1, 1, 1, 1, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 7, 0 1, 1, 1, 1, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 7, 7, 7, 7, 0, 0 1, 1, 1, 1, 0, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 0, 0, 0, 0, 0, 1 1, 1, 1, 0, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 0, 7, 7, 0, 7, 7, 0, 0 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 1, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 7, 7, 7, 7, 0, 0 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 7, 7, 7, 7, 7, 7, 0, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
Prog.#15- Simulación de la Generación de un Bitmap.
115
Historia y Evolución de la PC – Jairo Uparella
A continuación una simulación de captura de pantalla o screen capture, copiado y pegado automático de bitmaps.
‘Copy & paste automático de bitmap ‘ ‘ ‘Este programa requiere adaptador gráfico ‘ ‘ ‘(C) Jairo Uparella ‘ CLS DIM C%(32,32), bitmap (1 to 100) SCREEN 1 crx% = 2 cry% = 2 ppx% = 120 ppy% = 120 lgx% = 40 lgy% = 30 ‘ ‘Control del teclado ‘ DO UNTIL K$ = CHR$(13) LINE (crx% - 1, cry% - 1) – (crx% + lgx% + 1, cry% + lgy% + 1), 0, B SELECT CASE K$ CASE CHR$(0) + “H” cry% = cry% - 10 CASE CHR$(0) + “M” crx% = crx% + 10 CASE CHR$(0) + “P” cry% = cry% + 10 CASE CHR$(0) + “K” crx% = crx% - 10 END SELECT
116
Historia y Evolución de la PC – Jairo Uparella
IF IF IF IF K$
crx% cry% crx% cry% = “”
<= <= >= >=
0 THEN crx% = 1 0 THEN cry% = 1 250 THEN crx% = 250 40 THEN cry% = 40
‘ ‘Dibujo del bitmap ‘ FOR y% = 1 TO 24 FOR x% = 1 TO 32 READ C% (x%, y%) PRESET (x% + 50, y% + 7), C%(x%, y%) NEXT NEXT RESTORE ‘ ‘ LOCATE 3,12: PRINT “TM” LOCATE 4,12: PRINT “Windows (C) Microsoft Co.” LOCATE 7,12: PRINT “Soft & Easy Technology” ‘Captura de imágen ‘ ‘Creación de cuadros ‘ LINE (crx% - 1, cry% - 1) lgy% + 1), 1, B GET (crx%,cry%) – (crx% + LINE (ppx%, ppy%) – (ppx% 0, BF LINE (ppx% - 1, ppy% - 1) lgy% + 1), 1, B
– (crx% + lgx% + 1, cry% + lgx%, cry% + lgy%), bitmap + lgx% + 1, ppy% + lgy% + 1), – (ppx% + lgx% + 1, ppy% +
PUT (ppx%, ppy%), bitmap DO UNTIL K$ <> “” K$ = INKEY$ LOOP LOOP ‘ ‘formación de bitmap ‘ ‘
117
Historia y Evolución de la PC – Jairo Uparella
DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 3, 3, 0, 0, 3, 3, 3, 0, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 3, 3, 3, 3, 0, 0, 3, 3, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
Prog.# 16- Copy & Paste de Bitmap
Los valores de cada punto en el programa se trabajan en decimales, por su facilidad de manejo, pero en la realidad corresponde a formatos en hexadecimales los que pueden ser grabados en un archivo secuencial para edición. Esto no quiere decir que haya mucha diferencia o mayor complicación.
118
Historia y Evolución de la PC – Jairo Uparella
Los Monitores Verdes No son monitores de pantalla verde, sino que se refieren a los del tipo ecológico. El supuesto cansancio visual y la posible causa de cáncer en los humanos producida por estos periféricos, llevó a un grupo especializados de trabajadores sociales a crear una organización que identificara las frecuencias de las líneas eléctricas emitidas por los monitores. Uno de estos grupos es reconocido a nivel mundial como EPA (Environmental Protecction Agency). La VESA propuso un estándar para la administración de energía de pantalla DPMS (Display Power Management Signaling), que combina las señales horizontales y verticales de los monitores VGA, ciñéndose así a los requerimientos de la EPA.
Otros Estándares Con DPMS, aparece otro estándar al que se le denomino ENERGY STAR, que reduce la cantidad de energía que se consume en el momento en que no se esta utilizando el monitor. De 120W se puede llevar a solo 5W cuando no esta en uso. El MPR II, es otro estándar de requisitos desarrollados en Suecia y que los monitores deben cumplir. Define la cantidad y dirección de radiación electromagnética de frecuencias que emiten los monitores.
119
Historia y Evolución de la PC – Jairo Uparella
120
Historia y Evolución de la PC – Jairo Uparella
Capítulo
7
Las Impresoras La tecnología que lleva un punto al papel A nivel mundial son tres tipos de impresoras cuyas tecnologías sobresalen en nuestra historia. Ellas son las de Matriz de Punto, las sofisticadas láser y las de Burbuja o chorro de tinta. En 1985 las impresoras de matriz de punto estaban en pleno apogeo de mercadeo justo cuando la Hewlett Packard introduce la primera impresora láser y Adobe lanza el PDL POSTSCRIPT (Page Description Language), que permiten generar caracteres o tipos a diferentes tamaños. Son reconocidas como los periféricos del puerto paralelo aunque esto no debe ser generalizado. La impresión de un carácter no se aparta de la forma de como se “imprime” un caracter del ASCII o un elemento bitmap en el monitor. Los puntos o granos de impresión se constituyen como elementos análogos al píxel en pantalla. 121
Historia y Evolución de la PC – Jairo Uparella
Impresoras de Matriz de Puntos Se les llama así por el número de agujas de 0.3 mm de diámetro que trae en su cabeza de impresión (Dot Matriz) y son capaces de crear una matriz de puntos para crear un carácter. Algunas podían conectarse al puerto serial estándar RS-232-C pero en su mayoría lo hacen en el puerto del conector Centronics-Paralelo. Sus características están centradas en el ancho del papel (carro ancho), número de caracteres por línea, número de caracteres por segundo y caracteres por pulgada (pitch o CPI), posibilidad de gráficos, forma de alimentación de papel, bien sea por fricción o por tracción, selección del juego de caracteres, tipos de letras, tamaño del buffer, impresión bidireccional y otras. Los dos tipos de fonts básicos que se adquieren con estas impresoras se consiguen seleccionando el modo NLQ (Near Letter Quality) (con calidades Curier, Prestige, Bold, PS, Script, Roman y Sans Serif de IBM) o el modo DRAFT (Calidad Elite o Pica). En el modo NLQ, se incrementa el número de puntos por pulgada (dot per inch) para obtener una impresión alta, pero disminuye la velocidad. En el modo DRAFT, sucede todo lo contrario.
122
Historia y Evolución de la PC – Jairo Uparella
Figura # 39 – Impresora de matriz de Puntos.
Tipo
Pitch
CPL
Pica Elite Microm Compresed Elite Compressed
10 cpi 12 cpi 15 cpi 17 cpi 20 cpi
136 163 204 233 272
Tabla # 22 – Caracteres por líneas
Programación de la Impresora Secuencia de escape La preparación de la impresora está basada en un lenguaje propio, que permite obtener diferentes modos de impresión y fonts, dirigido más que todo a la calidad de presentación del documento final.
123
Historia y Evolución de la PC – Jairo Uparella
Con el código ASCII (27) o ESC y otros caracteres concatenados, constituyen el lenguaje definido como Secuencia de Escape, con dos o tres bytes de asignación por comando. Algunas de estas órdenes se muestran a continuación bajo el modo – Standar:
Nombre
Selección
ESC + “x” + 1 ESC + “p” ESC + “W” + 1 ESC + “_” +1 ESC + “R” + n ESC + “^” + m + n1 + n2 ESC + “2” ESC + “Q” + n ESC + “I” + n
Font NLQ 10 cpi (pica) Impresión doble Subrrayado Juego de caracteres interncional Configura imagen de bits de 9-pines Configura alimentación de papel para 1/6 Configura margen derecho Configura margen izquierdo
Tabla # 23 – Algunas órdenes de secuencia de escape impresora Panasonic. Otras órdenes, pertenecen a la secuencia de escape, pero su función es más directa y están formadas por caracteres independientes del código ASCII: Código
Función
9 10 12 13 15
Tab horizontal Avanza línea Avanza página Retorno de carro Configura a 17 cpi
Tabla # 24 – Caracteres Independientes de Impresión. 124
Historia y Evolución de la PC – Jairo Uparella
El siguiente programa muestra la creación de un carácter, convirtiendo los valores leídos a binario para su representación en el monitor y posteriormente ser enviado a la impresora.
‘Programa generador de caracteres para impresora y ‘monitor ‘ ‘ ‘(C) Jairo Uparella ‘ CLS SCREEN 2 DIM B%(11,8) FOR J% = 1 TO 11 READ n% FOR K% = 1 TO 8’ Convierte a binario el número leído m% = n% MOD 2 n% = INT(n% - n%/2) B% = (j%, k%) = m% NEXT NEXT RESTORE ‘Invertimos los pines verticals FOR Y% = 11 TO 1 STEP -1 A% = A% + 1 FOR X% = 1 TO 8 B% = B% + 1 PRESET (11 – A%, 8 - B%), B%(Y%, X%) NEXT B% = 0 NEXT GOSUB subr ‘ Activa Impresión en papel END DATA 125,129,129,129,129,129,249,73,41,25,15 ‘ Subr: ‘Salida impresora Seikosha SP-2400. La secuencia ‘de caracteres puede variar según la impresora. ‘Refiérase a los manuales de cada una de ellas. LPRINT CHR$(27); “K”;CHR$(255);CHR$(0);
125
Historia y Evolución de la PC – Jairo Uparella
FOR I = 1 TO 11 READ A% LPRINT CHR$(A%) NEXT CLOSE RETURN
Prog.# 17 – Generador de caracteres para monitor e impresora.
Impresora de tecnología láser Esta tecnología desplaza a la matriz de puntos. Se habla mucho de un rayo láser que dirigido hacia el papel, dibuja las letras. Lo cierto es que el láser no toca el papel. Las instrucciones proveniente de la interface, hacen que el láser sea disparado, este se refleja en un vidrio a cierto ángulo con el fin de invertir la imagen o texto y por último golpear en el rodillo o cilindro cuya característica es la de estar cargado de estática. El rayo hace que cambie en ese punto su polaridad donde el toner (composición cerosa) impregnando el rodillo, sella en el papel la figura formada por el láser. Por último es sometido a un proceso de calentamiento y presión.
126
Historia y Evolución de la PC – Jairo Uparella
Fig # 40 – Impresión Láser
Las señales Se refiere prácticamente a los archivos a ser impresos, que pueden ser enviados en forma ASCII o POSTSCRIPT, controlados por un lenguaje de órdenes descriptores de páginas como el PCL (Page Control Language), basado en órdenes de secuencia de escape o PJL (Printer Job Language) para controlar los trabajos de impresión sobre todo si esta es compartida en un medio de red. La norma IEEE 1284 ha soportado muchas impresoras de esta tecnología y describe al forma de impresión bidireccional del puerto paralelo con un adaptador SCSI (Fast -Wide), y controlada por el software de monitoreo bidireccional. Las impresoras acopladas al puerto serial, lo hacen a través de la norma RS-232-C o la RS-422-A.
127
Historia y Evolución de la PC – Jairo Uparella
Un tipo de puerto compatible con Centronics es le denominado BiTronic. Tiene la particularidad de permitir una comunicación bidireccional, rápida trasmisión y auto configuración de drivers.
Pin
Descripción
Significado
1 2-9 10 11 12 13 14 19-30 32 36
Strobe Datos ACK Busy Call Select Auto Feed GND Fault nSelIn
Estroboscópio 8-bits de datos Reconocimiento Ocupado Llamada Selección Auto-alimentación Tierra Falla Selector
Tabla # 25- Paralelo Bi-Tronic.
Pin
Nombre
Descripción
1 3 6 7 9 10 18 20
CG RDA DSR SG SDA SD RDB DTR
Chasis GND Received Data Inverted Data Set Ready Signal Ground Send Data Invertid Send Data Receive Data Data Terminal Ready
Tabla # 26- Serial RS-422-A
128
Tierra chasís Recibe datos – regreso Datos listos Señal a tierra Envía datos – regreso Envía datos Recibe datos Terminal datos listo
Historia y Evolución de la PC – Jairo Uparella
Las impresoras láser utilizan chips de memorias RAM (SIMMS), para el almacenamiento temporal o buffer de impresión, con valores de hasta 32 MB. Su resolución de impresión puede varias de acuerdo con el fabricante. De 600 x 600 dpi (dot per inch) puntos por pulgada o de 800 x 600, se refiere a la impresión de puntos en forma Horizontal y Vertical. El número de páginas impresas por minuto puede ser de 4 u 8.
Otras características Las siguientes características se deben tener en cuenta al momento de adquirir una impresora de este tipo: Auto – Switch – Ajuste automático. Bandeja – (Page Try). El número de hojas que pueden ser empacados en la bandeja, para la carga y arrastre automático del papel. Cartridge – La posibilidad de inserción de un cartucho de fonts, adicionales a los instalados en disco. Footprint – La capacidad de manejar la longitud de impresión máxima que puede soportar. Sus unidades están en el orden de las pulgadas cuadradas. Control de señales – Al igual que los monitores, la mayoría deben cumplir con los requisitos de la EPA y Energy STAR. Protocolos – Interfaces Appletalk, Ethernet, Tocken RING y otros.
129
Historia y Evolución de la PC – Jairo Uparella
Impresoras láser de color Con resoluciones por ejemplo de 1200 x 300 dpi también soportan señales del tipo EPS (Encapsulated PostScript), PCL 5, chips RAMs que llegan a los 48MB. El número de páginas por minuto puede llegar a superar las 12. Para la impresión, tiene que hacer cuatro pasadas, una por cada toner de color, con el fin de plasmar la imagen formada por el láser en una banda denominada OPC (Organic Photoconducting Cartridge), que sirve de sello para llevarla al papel. Son controladas por un procesador i809060, y utilizan interfaz paralela del tipo Bi-tronic, lo que las hace más rápidas.
Fig# 41- Impresión Láser Color
130
Historia y Evolución de la PC – Jairo Uparella
Del ASCII a los fonts Realmente no ha habido un cambio de caracteres para la representación de números y letras. El ASCII o los caracteres básicos seguirán siendo representados en un sistema de PC o cualquier sistema digital que los soporte. Los fonts vienen a ser el vestido que lucen los 255 caracteres del ASCII. Así, la A, puede ser representada por cualquier tipo de letra que puede tener la característica de ser escalable, es decir, a cierto tamaño. La cantidad de tipos de letras, es por lo tanto, ilimitada.
¿Tipos o Fonts? Un tipo es el nombre real de un diseño de carácter. Por ejemplo, Courier, Garamond, Helvética entre muchos otros, son tipos de caracteres. Cuando hablamos de “fonts”, nos referimos a un tipo de carácter, pero incluyendo su tamaño y orientación, que puede ser “Portrait” o vertical, el modo normal de caracteres o “Landscape”, horizontal. Estos términos también son aplicados a la dirección del papel.
TrueType Se les conoce así a los fonts escalables. Creados por Microsoft Co. y Apple Computer INC. son generados por bitmaps o por el tipo denominado soft, que depende de la capacidad de impresora, para mantenerlos en el buffer. Aquí se define entonces las dos formas de representación para un solo font truetype: font de pantalla y font de impresora.
131
Historia y Evolución de la PC – Jairo Uparella
Fuentes TRUE TYPE
Arial Arial Italic Arial Bold Arial Bold Italic Symbol Times New Roman Times New Roman Italic Times New Roman Bold Italic Wingdings
Tabla #27- Algunas fuentes True-Type
Fuentes POSTSCRIPT
ITC Avant Garde Gothic Demi ITC Bookman Demi Courier Helvetica New Century Schollbook Palatino Times ITC Zapf Chancery Medium Italic ITC Zapf Dingbats
Tabla #28- Tipos de Caracteres POSTSCRIPT
132
Historia y Evolución de la PC – Jairo Uparella
PCL escalables y biitmaps
Courier CG TImes CG Times Bold Univers Medium Univers Bold Garamont Antiqua
Tabla #29- Tipos Escalables-Bitmaps PCL
El Lenguaje POSTSCRIPT y el Spool de Impresora Una buena forma de saber cómo su PC se dirige a la impresora a través del Spool de Impresión y conocer el aspecto del lenguaje POSTSCRIPT u otro lenguaje, es orientándola a un puerto o dispositivo con nombre de archivo. Es decir, en el procesador de palabras, cambie el nombre del puerto de salida LPT1: por el nombre de un archivo cualquiera, por ejemplo C:\PSALIDA.PRN, y ordene una impresión. Luego cargue el documento creado PSALISA.PRN como un archivo normal de texto. Cuando quiera imprimirlo, no utilice el procesador de palabras. En la guía o prompt del sistema escriba lo siguiente: C:\>COPY PSALIDA.PRN LPT1: Ahora usted puede crear un directorio a manera de cola de impresión e impulsarla como un Spool de Impresión con la orden COPY*.PRN LPT1: introducida en la guía del sistema.
133
Historia y Evolución de la PC – Jairo Uparella
Dibujando fonts El siguiente programa permite simular el desarrollo escalable de un carácter en varios tamaños o font de pantalla. Realmente, los datos para las instrucciones de impresión de un tipo, son guardados en archivos separados del programa.
‘Efecto simulador generador de fonts escalables ‘ ‘ ‘(C) Jairo Uparella ‘ ‘Requiere adaptador gráfico ‘ CLS SCREEN 2 c = 0 ‘ Cambie el color a 1 y podrá ver otro efecto d = 10 d2 = 1 tm = 23 punto = 16 pi = 3.1415927# ‘ FOR tx = 1 TO tm STEP .6 ty = tx * 0.86 ‘ Ajuste de monitor GOSUB font: LOCATE 24,1 PRINT “Scalable font, size”; (punto); Punto = punto + 14 d = d + z z = z + 0.4 d2 = d2 + 0.5 NEXT FOR I = 23 TO 1 STEP -1 LOCATE 22,25 PRINT “----->” LOCATE 1,1 PRINT “Scalable font NEXT LOCATE 3,25
”
134
Historia y Evolución de la PC – Jairo Uparella
PRINT “---->” K$ = INPUT$(1) END font: IF c = 0 THEN LINE (0,0)-(190+pag, disp), 1 , BF Pag = pag + 10 Disp = ty * 8 + d2 + 10 LINE (0 + d, 0 + d2)-(6 * tx + d, 0 + d2), c LINE -(6 * tx + d, 1 * ty + d2), c CIRCLE (6 * tx + d, 2 * ty + d2), 2 * tx, c, pi/2,pi LINE (4* tx + d, 2* ty +d2) – (4* tx + d, 6* ty + d2),c CIRCLE (6* tx + d, 6* ty + d2), 2*tx, c, pi, 3/2*pi LINE (6* tx + d, 6 * ty + d2)-(8 * tx+ d, 7*ty+d2),c CIRCLE (8 * tx + d, 6 * ty + d2), 2 * tx, c, 3/2,pi,0 LINE (10* tx + d, 6 * ty + d2)-(12* tx+ d, 6*ty+d2),c LINE -(12 * tx + d, 8 * ty + d2),c LINE -(0 * tx + d, 8 * ty + d2),c LINE -(0 * tx + d, 7 * ty + d2),c CIRCLE (0 * tx + d, 6 * ty + d2), 2 * tx, c, 3/2,pi,0 LINE (2* tx + d, 6* ty +d2) – (2* tx + d, 2* ty + d2),c CIRCLE (0+ d, 2* ty + d2), 2 * tx, c, 0,pi/2 LINE (0 + d, 1* ty +d2) – (0 + d, 0 + d2),c PAINT (tx * 12 + d – 1, ty * 8 + d2 – 1), 0 RETURN
Prog.#18- Programas Simulador de Generación de Font Escalable
Impresoras de Chorro de Tinta Para tinta en negro o con cartuchos independientes CMYK, se les conoce como impresoras INK-JET o de burbuja (Bubble-Jet), capaces de generar 16.7 millones de colores y excelente gama de grises. El disparador o spray toca directamente el papel. Su tecnología está basada en la evaporación de la tinta por medio de un efecto eléctrico, antes de ser regada por el spray.
135
Historia y Evolución de la PC – Jairo Uparella
Su resolución puede ser de 360x360 dpi, y su tamaño de papel, carta (8.5”x11”), oficio (8.5”x14”), A4 (210x297 mm), además de la posibilidad de imprimir en sobres. Con una velocidad de 240 cpi en modo draft, imprimen 3 ó 4 páginas por minuto.
Fig. #42- Impresión Ink-Jet
Otras Características El siguiente resumen detalla otras características adicionales que soportan las impresoras y que tienen relación con la configuración de las mismas:
Espacio de línea: se refiere al número de líneas por pulgada. Cero slashed: la representación del cero con o sin slash.
136
Historia y Evolución de la PC – Jairo Uparella
Juego de caracteres: Juego de elementos gráficos o caracteres, en el cual cada uno tiene correspondencia con cada elemento del código ASCII, utilizados por la impresora para determinar sus actividades de impresión o no impresión. Código de Página: Conjunto de 256 caracteres o elementos gráficos que depende de la asignación del número que la identifica:
437 – USA 850 – Multilingüe 860 – Portugal 863 – Francia – Canadá 865 – Países Nórdicos
137
Historia y Evolución de la PC – Jairo Uparella
138
Historia y Evolución de la PC – Jairo Uparella
Capítulo
8
Drives y Discos La Evolución de los Medios Magnéticos Afortunadamente, al inicio de esta historia, la tecnología de discos se encontraba en una etapa avanzada de su desarrollo. Con la llegada del MS/DOS 2.2, los discos duros se constituyeron en los dispositivos imprescindibles en toda PC. Para la salida de la IBM PC, muchos productores presentaron al mercado sus discos duros o fijos. Los diskettes, de la época de 5.25 pulgadas, oscilaban entre 160, 320 o 360 Kbytes. Dijimos que la XT u 8088 ofrecía en la motherboard un conector de púas de 34 pines, para el soporte de un drive de diskettes de 5.25 pulgadas, a través de un cable listón y que su configuración en cuanto al número a utilizar, dependía de la posición de los DIP switches. Muchas soportaban 2 ó 4 unidades de diskettes. La XT se benefició también con la llegada de los dikettes de 3.5 pulgadas con la salida MS/DOS versión 3.20.
139
Historia y Evolución de la PC – Jairo Uparella
Diskettes Tecnología Magnética Mylar es una sustancia poco conocida en nuestro medio, pero precisamente de ese material se elaboraron los diskettes. Recubiertos por una capa de óxido magnético, permite que la información pueda ser vertida u obtenidas por las cabezas lectoras del drive o manejador de discos, sin que estas tengan que reposar necesariamente sobre el diskette. En los diskettes de 5.25”, un pequeño orificio cerca al de rotación, sirve como índice para referenciar el inicio de cada pista y una ranura lateral indica si el diskette está protegido contra escritura o no. En el diskette de 3.5” el índice es controlado de igual manera, pero el orificio de protección contra escritura es controlado por un diodo emisor de luz (LED) y otro diodo receptor sensible a la luz (LSD). Un diskette en el momento de ser preparado para guardar información, es dividido en cierto número de partes que conforman la estructura de almacenamiento:
Estructura Inicial PISTAS – O tracks, son círculos concéntricos en un número no mayor de 80 (40 cada cara), donde se vierte la información. SECTORES – Espacios en disco que pueden estar formados por 128, 256, 512 ó 1024 bytes. Actualmente y por predeterminación, se utilizan 512 bytes por sector. Cada sector esta relacionado por 4 bytes sobre una pista en el área de datos y que intervienen en el proceso. De identificación de sectores en el momento en que las cabezas escriben, leen o verifican datos:
140
Historia y Evolución de la PC – Jairo Uparella
C
(Cylinder)
- Cilindro
H
(Head)
- Cabeza
R
(Record)
- Registro del número del Sector
N
(Sector Code) - Bytes por sector
Con estos cuatro Bytes, el ROM BIOS puede identificar la dirección de datos en el disco. Veamos en qué consiste cada uno de estos bytes: Cilindro – Se refiere a la relación de una pista en la cara superior con respecto a la misma pista en la cara inferior. Cabeza – Número 0 ó 1 que identifica la cabeza de la cara superior o inferior respectivamente. Registro del sector – Indica el número del sector en referencia que bien puede estar entre 0 y 9, 0 y 15, etc, dependiendo del diskette. Número de bytes – Indica la cantidad de bytes por sector. De 0 a 3, indican capacidades de 128, 256, 512 y 1024. El predeterminado es 2.
En los procesos de lectura y escritura, intervienen solamente el registro del número del sector y la cantidad en bytes por sector. Cilindro y cabezas son tenidos en cuenta en otros procesos como la preparación del disco.
141
Historia y Evolución de la PC – Jairo Uparella
Fig.# 43- Distribución Magnética de un Diskette
Otras Características Tamaño Las unidades del tamaño de los diskettes están dadas en pulgadas y corresponde a la distancia de lado a lado de la funda protectora del diskette. 5.25 ó 3.5 pulgadas.
Densidad Es la cantidad de pistas que pueden ser albergadas en una pulgada, referenciadas como TPI (Tracks per Inch) – Pistas por pulgada.
142
Historia y Evolución de la PC – Jairo Uparella
Formatos Capacidad
Tipo
Pistas
Sec x Pista
TPI Densidad
360K 1.2M 720K 1.4M 2.8M
5.25” 5.25” 5.25” 3.5” 3.5”
40 80 80 80 80
9 15 19 18 36
48 Doble 96 Alta 96 Alta 135 Alta Super Alta
Tabla #30- Formatos de Diskettes
Datos en Memoria El acceso al espacio de memoria F000:EFC7, permite obtener la tabla base de parámetros ROM de diskettes, compuestos por 11 bytes asi:
Byte 0 – Sólo los primeros 4 bits, SRT (Step-Rate Time) Tiempo en que la ROM-BIOS permite al diskette moverse de pista en pista. El default es de 6 ms. Byte 1 – DMA – Si esta presente o no. Por default es el 02. Byte 2- Tiempo de espera del motor hasta que culmine la operación. El default es de 37 (25h) ticks por segundo. Byte 3- Bytes por sector. Default 02, equivalente a 512. Byte 4- Número del registro del último sector en la pista. Byte 5- Tiempo de espera para que la ROM-BIOS pueda acceder el siguiente sector. 143
Historia y Evolución de la PC – Jairo Uparella
Byte 6- Cuando la longitud de un sector no está especificada utiliza por default el valor en este byte 255 (FFh). Byte 7- Configura el espacio entre sectores cuando una pista se le da formato. Byte 8- Valor que puede ser almacenado en cada byte del sector cuando la pista se le da formato. Por default es F6h, correspondiente al signo de división (÷). Byte 9- Tiempo de espera para la búsqueda de un nuevo track. Default 15 (Fh) milisegundos. Byte A- Tiempo de arranque del motor en milisegundos.
Con la orden D de Debug, podemos ver esta hilera de bytes:
C:\> DEBUG -D F000:EFC7 F000:EFC0 DF - 02 25 02 12 1B FF 54 F6 F000:EFD0 0F 08 E9 87 08 4A 23 52 - 0A 13 24 24 34 A4 A4 0A F000:EFE0 73 34 AC 4C 84 2C A4 0A - 53 7C 24 7ª 0A 92 D2 CA
Prog.# 19 – DEBUG y Parámetros ROM de Diskettes.
144
..%....t. …..J#r..$$4… s4.L.,..S!$z…
Historia y Evolución de la PC – Jairo Uparella
Asignación de Drives Externamente el primer drive instalado es referenciado como A: y al segundo instalado en el mismo cable, se le asigna B: Internamente son reconocidos por los valores de 0 y 1, los cuales pueden ser leídos de memoria para reconocer el drive activo. El siguiente programa es una muestra de ello: ‘Lectura a drive A: o B: ‘ ‘(C) Jairo Uparella ‘ CLS DEF SEG = 0 V = PEEK (&H504) PRINT IF V = 1 THEN PRINT “El drive activo es B:” ELSE PRINT “El drive activo es A:” END IF END
Prog.# 20 – Reconocimiento del Drive Activo
El Drive y Conectores El drive es el dispositivo manejador de diskettes y permite la escritura o lectura en los mismos. Residen en las cavidades denominadas “Bahías” de la unidad central del sistema de la PC. Está formado por dos motores, uno de ellos del tipo paso-a-paso para la traslación de las 2 cabezas que posee el drive con un sistema de banda metálica flexible o helicoidal para el arrastre. 145
Historia y Evolución de la PC – Jairo Uparella
El otro motor del tipo normal para la rotación del disco. En la parte inferior posee un círculo de decodificación análogo- digital para el control de los diferentes mecanismos. En cuanto a los conectores, los drives de 5.25 pulgada por lo regular presenta un tipo de conector derivado del mismo circuito. Los drives de 3.5 por el contrario, utilizan el sistema de púas. Ambos dispuestos a permitir el acoplamiento del cable de cinta gris de 34 conectores.
GND GND GND GND GND GND GND GND GND GND GND GND GND GND GND GND GND
NC NC NC INDICE HABILITA MOTOR A SELECCIONA DRIVE B SELECCIONA DRIVE A HABILITA MOTOR B DIRECCION PASO DE PULSOS ESCRIBE DATOS HABILITA ESCRITURA TRACK 0 PROTECCIÓN CONTRA ESCRITURA LEE DATOS SELECCIONA CABEZA NC
Fig.# 44- Drive, Cable y Conector
El cable que permite la combinación de dos drives de diferente formato tiene una inversión de 7 cables denominada “Twist” o trenza, que permite el intercambio normal de datos entre un drive seleccionado como A: y un drive B: Con el cable de 34 pines es posible adaptar 2 drives de igual o diferente tipo, uno colocado antes y el otro después del “twist”.
146
Historia y Evolución de la PC – Jairo Uparella
Instalación Una vez conectados todos los elementos necesarios, se prosigue con la asignación del tipo de diskette a utilizar en el CMOS, aunque el BIOS puede detectar el tipo de diskette cuando se arranca o se inicializa de nuevo la PC.
FORMAT.COM y el Formato de Diskettes La orden FORMAT.COM no da un formato físico a los diskettes. Sólo permite crear una estructura a los diskettes, relacionada con el directorio raíz y la tabla de asignación de archivos FAT (File Allocation Table) del diskette, tabla que indica el espacio asignado a cada archivo (tratadas en la sección de formato de disco duro).
¿Cómo se Calcula la Capacidad de los Diskettes? Si un diskette permite la escritura por las 2 caras y tiene 40 pistas y 9 sectores entonces el número de unidades de asignación total (llamados también “clusters”) es de 2 x 40 x 9 = 720. Si multiplicamos 720 por 512 bytes, el diskette tiene una capacidad de 368, 640 bytes, diskette denominado de 360K.
147
Historia y Evolución de la PC – Jairo Uparella
Sálvele la Vida a un Diskette Los diskettes no sólo sufren problemas por humedad y polvo que evitan que las cabezas lectoras del drive puedan leer o escribir sus datos. Uno de los errores más comunes que se presentan cuando se desea dar formato a un diskette es el de: “Diskette no válido o pista 0 defectuosa – diskette inservible” Ni pensándolo dos veces el usuario coloca el diskette supuestamente inservible en el lugar que le corresponde: el cesto de la basura. Scandisk es una utilidad de Microsoft (más avanzado que CHKDSK) que permite reconstruir un diskette que presente el anterior síntoma, por lo que el usuario sólo debe limitarse a introducir en la guía del sistema: C:\ DOS>Scandisk a: Scandisk muestra la siguiente pantalla en el momento de detectar el problema del diskette:
Microsoft Scandisk ________________________________________________________ ___________________ Problema Detectado ________________ El archivo A:\INFORM.TXT está dañado. Aunque el comienzo del archivo probablemente sea correcto, existe un daño que más adelante podría producir errores. Elija reparar para que Skandisk elimine la parte dañada del archivo, a fin de poder utilizarlo sin que se produzcan errores. Scandisk guarda los datos dañados en el directorio raíz de la unidad con un nombre de archivo como FILE0000.CHK ________________________________________________________
148
Historia y Evolución de la PC – Jairo Uparella
Después de las siguientes pantallas de solicitudes de Scandisk al usuario y finalización del proceso, es posible volver a darle formato al diskette. Problemas de diskettes con respecto a sectores dañados, son comunes y afortunadamente existen programas capaces de corregirlos permitir que un diskette se pueda volver a utilizar.
¿Qué Tanto Resisten los Diskettes? A menudo se advierte sobre la interferencia, estática, magnetismo y otros factores que pueden dañar la estructura magnética de un diskette. Pero ¿qué hay de cierto en esto y hasta dónde puede ser factible el daño de un diskette con estos factores? Realicé las siguientes tres pruebas tratando de buscar una respuesta a estos interrogantes. Sólo quería saber qué tanto se dañaba un diskette de 3.5 pulgadas:
POR FAVOR NO HAGA ESTO CON SUS DISKETTE!!!, sí lo hace.....bueno, tendremos muchas cosas que comentar acerca de estas pruebas.
Prueba No.1 – Estática – La estática es sin lugar a dudas uno de los factores que podría dañar a una PC completa. He visto equipos cargados de electrones (puesta a tierra deficiente) pero éste ya es voltaje puro y el salto de chispas al conectar un cable de impresora fue sorprendente. Coloqué el diskette probeta frente y haciendo contacto con la pantalla de un televisor de 21 pulgadas y proseguí a encenderlo. Regresé al diskette al drive y observé su contenido. Resultado: Intacto.
149
Historia y Evolución de la PC – Jairo Uparella
Prueba No.2 – Magnetismo – La lámina magnética de la nevera para el cierre sellado de las puertas tiene suficiente poder como para atraer un metal que se encuentre a menos de dos centímetros. Coloque el diskette con su lámina protectora metálica abierta y esperé unos segundos. Regresé el diskette al drive y observe su contenido. Resultado: Intacto.
Prueba No.3 – Alcohol – Confieso que se me fue la mano. Introduje el diskette en una taza con alcohol. El problema no era el alcohol (o agua) sino la fricción que esto había generado puesto que las telas internas de limpieza estaban impregnadas y el mecanismo de rotación del drive no podía con la fuerza opuesta. Debía esperar hasta que el diskette se secara por completo. Algunas veces pasándolo a más de 30 cms de la llama de la estufa, un poco al sol hasta que mi paciencia se agotó. Por el lado opuesto a la platina de protección (para que no se abriera) y con un pequeño destornillador (pala de relojería), separé un poco las dos láminas de plástico del diskette y retiré el mylar del interior y luego poco a poco saqué las dos telas adheridas e impregnadas de alcohol. Introduje de nuevo el mylar y lo selle con cinta aislante. Regresé el diskette al drive y observé su contenido. Resultado: Intacto.
Prueba No.X – Rayos X – Esta prueba no la pude hacer puesto que supe de ella mucho antes de escribir este libro. La hizo una persona que tomaba un avión (en EEUU) y cuando se presento en el aeropuerto, coloco su maletín en el revisor de rayos X. No pudo retirarlo a tiempo cuando se acordó que dentro del maletín iban sus más importantes archivos en diskettes. Obviamente, el viaje no fue grato. Creía que había perdido su información y eso...era terrible. Cuando llegó a su destino, conecto una PC e introdujo el primer disquete y observó su contenido. Resultado: Intacto.
150
Historia y Evolución de la PC – Jairo Uparella
En conclusión un diskette puede ser tratado como un elemento normal de trabajo sin tantas preocupaciones. La prueba No.3 permitió darme cuenta que si hubiese sido agua y la recuperación de datos debe ser inmediata, la solución creo que es la más acertada. El alcohol posiblemente se evapore y sequen las telas en unas horas, pero..¿el agua?.
Fig.# 45 – Conexión de Diskettes y Disco Duro
151
Historia y Evolución de la PC – Jairo Uparella
El Disco Duro El calificativo de “duro”, se refiere a la constitución de los “platos”, como se le denominan a los discos internos del drive. Construidos con una base de aluminio recubierto de un material magnético no están expuestos a la intemperie debido a su “delicado” mecanismo para leer, ya que el mínimo sucio, haría saltar las cabezas que se podrían decir medio rozan físicamente al disco. Por otro lado la sustancia magnética se podría levantar por un roce leve y es fácil de rayar. Su velocidad de rotación está dada en el orden de los 3600 r.p.m. que corresponde a 12 veces la velocidad de rotación de los diskettes. El número de platos puede variar según el fabricante y por ende el número de cabezas y la configuración, pero otros factores son parecidos en la constitución y preparación de un diskette.
Configuración en el CMOS Al igual que los diskettes, el CMOS puede detectar el tipo de disco duro que se encuentre adaptado a la PC. Son 46 tipos que soporta (en las PCs actuales se superan los 90) y la asignación correcta de capacidad y otros factores intervienen en la configuración del disco. El último tipo esta referenciado como “USER DEFINED –Definido por el usuario”. Los siguientes son los términos que se refieren a los valores ajustables en el CMOS: Tipo (Type) – Número de drive para la identificación de parámetros. Cilindros (Cylinder) – Número de cilindros del disco.
152
Historia y Evolución de la PC – Jairo Uparella
Cabezas (Heads) – Número de cabezas. El brazo que arrastra las cabezas se le conoce como “actuador”. Escritura Precompensada (Write Precompensation) – Cilindro donde empieza la compensación de la escritura de sectores de pistas más internas. La asignación del cilindro para escritura precompensada, permite que el valor preasignado de 512 sea igual en todos los sectores. Hay discos que no requieren escritura precompensada. Zona de aterrizaje (Landing Zone) – Cilindro donde las cabezas se deben parquear al momento del shutdown. Sectores (Sector) – Número de sectores por pistas. Capacidad (Size) – Número de cabezas x Número de cilindros x Número de sectores x 512.
Dar Formato a un Disco Duro El proceso normal de inicialización de todo disco duro consta de tres pasos que optimizan al disco: -
Formato a bajo-nivel
-
Partición
-
Formato a alto-nivel
Formato a Bajo-Nivel Por lo general lo hace el fabricante o distribuidor con utilidades como HDFORM, DISK MANAGER ó DEBUG del DOS y con ello se crea la primera estructura de formación, además de permitir establecer comunicaciones entre el contralor y el drive.
153
Historia y Evolución de la PC – Jairo Uparella
Tiene en cuenta cilindros y sectores para el proceso los cuales son marcados para que DOS pueda identificarlos en el momento de ubicar archivos. La aplicación creadora del formato solicita al productor o usuario introducir las pistas malas si se conocen o el mismo programa los detecta, con el fin de que DOS pueda saltárselos al momento de escribir datos en el disco. Esta lista se coloca sobre el disco duro para identificación inmediata de las pistas malas. Otra forma de dar formato a bajo-nivel y en especial a discos que lo requerían es utilizando los parámetros del DEBUG -G=C800:5, lo cual solicita entre otras cosas, el factor de interpolación.
Factor de Interpolación En este proceso (interleave factor), la aplicación calcula por medio de un test sobre los sectores, el tiempo para un óptimo factor de interpolación. Consiste en la forma secuencial de cómo las cabezas leen los sectores de cada pistas. A 3600 r.p.m., es posible que las cabezas no alcancen a tener acceso rápidamente sector tras sector. Por ejemplo, si el valor del factor es 1, el proceso es de secuencia 1, 2, 3, 4...etc. Si el factor es 2, la secuencia de acceso es 1, 10, 2, 11, 3, 12, 4, 13, 5, 14...etc. Si el valor es 3, la secuencia puede ser 1, 7, 13, 2, 8, 14, 3, 9, 15....etc.
154
Historia y Evolución de la PC – Jairo Uparella
Partición En el siguiente proceso se “divide” al disco en dos o más secciones, denominadas “discos lógicos” con el fin de poder mantener aplicaciones o programas aislados o simplemente dos o más Sistemas Operativos diferentes. La creación de particiones depende de la capacidad del disco. La aplicación más común para la creación de particiones es FDISK, utilidad de DOS que permite:
Crear una partición primaria Crear una partición extendida Cambiar una partición activa Modificar la configuración de discos duros (lo que borra datos anteriormente almacenados)
La designación de las unidades lógica C: y D: son utilizadas para un disco duro que haya sido dividido en dos. Vale la pena anotar que las particiones son redondas y concéntricas.
Formato a Alto-Nivel El formato a alto-nivel está dado por la orden FORMAT en la guía del sistema. FORMAT utiliza una serie de parámetros con el fin de poder dar diferentes características y cualidades a un disco duro. FORMAT registra la división en 5 áreas diferentes en un disco: 1. Registro de partición o MASTER BOOT RECORD (MBR) – Contiene la información de partición del disco, para dividir unidades físicas en lógicas. Se haya en la cara 0, pista 0, sector 1 y es cargado por el ROM BIOS.
155
Historia y Evolución de la PC – Jairo Uparella
2. Registro de Arranque – Sector del “booting” – Contiene además el señalador o “puntero” del archivo FAT. 3. F.A.T. File Allocation Table – Tabla de asignación que indica el “cluster” asociado a cada archivo. 4. Directorio Raíz – Estructura en forma de “árbol” del sistema de archivo. 5. Area de Datos – Espacio (ROOM) para los primeros archivos del sistema IO.SYS y MSDOS.SYS. La orden FORMAT / B también permite crear este espacio para dichos archivos. A partir de aquí, el COMMAND.COM puede liderar la lista de archivos, que pueden ocupar el espacio restante del disco.
Entrada del Directorio
Campo
Bytes
Tipo expresión
Nombre Extensión Atributos Reservado Hora Fecha Núm Clusters Tamaño
8 3 1 10 2 2 2 4
ASCII ASCII Bits 0s Palabra Palabra Palabra Entero
Tabla# 31- Entrada del Directorio
156
Historia y Evolución de la PC – Jairo Uparella
Atributos El byte correspondiente asigna un valor de atributo para cada archivo, definiendo 6 posibles atributos para cada uno:
Bits
Dec
Atributo
00000001 00000010 00000100 00001000 00010000 00100000
1 2 4 8 16 32
Read Only Hidden System Volumen label Subdirectory Archive
Sólo lectura Escondido Sistema Rótulo o volumen Subdirectorio Archivo
Tabla#32- Atributos de Archivos
Claro que si el archivo es sólo de lectura y está escondido, el valor en bits corresponde a 00000011, en decimal atributo 3.
Nombre
Ext
At
Hora
Fecha
Tamaño
MIPC IO MSDOS COMMAND DOS
SYS SYS COM
08 07 07 04 16
6:00a 6:00a 6:00a 6.22a 6.14p
04-06-93 04-06-93 04-06-93 05-31-94 08-10-95
79 40659 75 38158 129 66294
Tabla#33- Registro del Sistema de Archivos La orden FORMAT.COM no realiza un formato a bajo nivel como piensan muchos. No toca para nada la información que se encuentra a partir de la división de datos después del FAT, tal como lo hace HDFORM u otra utilidad para dar formato a bajo-nivel. 157
Historia y Evolución de la PC – Jairo Uparella
Es por esto la posible recuperación de información después de dar formato a alto nivel, ahora con la orden UNFORMAT.
Clusters Los clusters son espacios compuestos de sectores de 512 bytes asignados por DOS a los archivos y varían con respecto a los discos. También se les conoce como número de unidades de asignación o “chunks” y se les identifica como la cantidad de datos que DOS utiliza para leer escribir un archivo.
¿Cómo se Calcula la Capacidad de los Discos Duros? Suponiendo que un disco duro tuviera 17 sectores por pista, 699 pistas por superficie (cilindros) y 7 superficies, entonces decimos que tiene 83.181 unidades de asignación o cluster. Como por definición son 512 bytes por sector, decimos que tiene una capacidad de 42.588.672 bytes, y dividiendo entre 1.048.576 (1 Megabyte) entonces es un disco de 40MB.
Densidad y la Codificación La densidad dijimos que era un término definido por la cantidad de pistas en una pulgada. Esto indica que a mayor pistas, mayor es el número de datos que se puedan albergar en un disco. La forma de introducir datos en las pistas está definida por dos tipos de codificación en los discos, relacionados con los pulsos y su magnetización.
158
Historia y Evolución de la PC – Jairo Uparella
MFM – Modified Frequency Modulation – Modulación de Frecuencia Modificada. Tipo de codificación que opera a 5 Megabits por segundo y que sustituyó a la antigua FM. Es utilizada por discos de hasta 17 sectores por pista. RLL – Run Length Limited – Longitud Limitada de Corrida. Opera a 7.5 Megabits por segundo. Los discos que la utilizan superan los 26 sectores por pista., dando inicio al ARLL (Advanced RLL). La forma de codificación de los datos difiere en la cantidad de pulsos (P), con lo que una secuencia binaria es representada magnéticamente. RLL utiliza menos pulsos que MFM. Más bien parece una manera arbitraria y acomodada de codificación de datos. La secuencia lógica se aplica después. ________________________________________________________ Secuencia 1
1
1
1
1
0
1
1
1
0
0
Pulsos
MFM
NP NP NP NP NP NN NP NP NP NN PN
9
RLL
NN NP NN NN NN PN NN NN NN PN NN
4
________________________________________________________ Tabla #34- Codificación MFM y RLL
En MFM, un 1 es NP y un 0 es NN, pero si un 0 está precedido de otro 0, se codifica PN, contrario a NP que es 1. Esta codificación se vería así:
.-.-.-.-.-...-.-.-..-.
159
Historia y Evolución de la PC – Jairo Uparella
En RLL, un 1 es NN si está precedido de otro 1 y es PN si está precedido de un 0. Esta codificación se vería así:
...-....-..-......-...
Historia de las Interfaces Desde el comienzo de nuestra historia, han permanecido en el mercado dos interfaces o estándares para discos. La IDE y la SCSI, que superaron a la ESDI, por ofrecer mejores prestaciones a los discos. ESDI (Enhanced Small Device Interface) Interfaz Mejorada Para Dispositivos Pequeños apareció en 1980 en San José – California. Al parecer era de la Maxtor. ESDI es un gran soporte para discos que no requieren de la utilidad de más de un drive de disco duro. (Unitarea). Es una interfaz que trabajaba a 8 bits para transferencia de datos. Se le utilizó más que todo en las antiguas XT y se le conocía por las características de que utilizaba dos cables tipo cinta gris para la conexión al controlador, uno de 39 y uno de 20 conectores. Su sistema de codificación alcanzó a conocer la RLL, dando soporte a 256 cabezas, con transferencias de 25 millones de bits por segundo.
El Adaptador Anfitrión SCSI En 1980 también estaba en el mercado el estándar SCSI (Small Computer System Interface) Interfaz Para Pequeños Sistemas de Computador, para la tecnología APPLE. SCSI tiene sus inicios como una adaptación del estándar ANSI denominado SASI-X3T9. (Shugart Associates System Interface), creado por NCR Shugart Association, de Scott Valley, California, hoy denominada SEAGATE Tecnologhy.
160
Historia y Evolución de la PC – Jairo Uparella
Es capaz de soportar múltiples dispositivos, es el ideal en multitareas y da soporte a discos de mayores de 600 MegaBytes. Se pronuncia “Scossi” y no es un controlador en si, sino que esta arquitectura ofrece soporte a 7 dispositivos (CD-ROMs, SCANERS, TAPES, etc), llamámdosele “Adaptador Anfitrión” – HOST Adapter – con inteligencia distribuida. Cada uno de estos periféricos debe tener instalado su propio driver en software. Utilizan para conexiones internas un cable único del tipo de cinta gris de 50 conectores y para dispositivos externos, un cable blindado donde cada dispositivo puede estar separado 30 cms, conectados en serie. El adaptador anfitrión trae su propio BIOS para el manejo de los procesos IO, por lo que no necesita configurarse en CMOS, es decir, asume el valor de 0 para el tipo de disco o simplemente se asigna “DRIVE NOT INSTALLED”.
Fig.#46- Conexión SCSI 161
Historia y Evolución de la PC – Jairo Uparella
SCSI utiliza un esquema de direcciones de 3-bits, donde cada dispositivo es asignado en una dirección del 0 al 7 (ID). El Dispositivo 7 tiene prioridad alta. Para el acceso a los discos se referencia con notación lineal (LBA) Logical Block Address, pidiendo el sector 1 a la unidad a diferencia del DOS quien lo hace referenciado en forma tridimensional CHS (Cilindro, Cabeza, Sector), utilizable por el BIOS. La utilización del LBA, hace más óptima la transferencia de datos. SCSI también trabajaba a 8-bits y se le llamaba SCSI-I, con transferencia de datos a 5 MegaBytes por segundo y 5 MHz. Por supuesto que cuando se duplico su bus de transferencia a 16-bits se llamó SCSI-II, Fast o “rápido” a 10 MegaBytes por segundo y MHz, con capacidad para direccionar hasta 2GB por drive bajo DOS y Windows. Luego apareció el SCSI capaz de transferir a 32-bits llamándose SCSI-II Wide o “ancho”, a una rata de transferencia de 40 MegaBytes por segundo, permitiendo compatibilidad con su predecesor. Permite la comunicación entre dos periféricos sin la intervención de la CPU. Cuando la conexión es externa, el periférico trae dos conectores SCSI, con el fin de que se pueda conectar un periférico previamente y otro posterior. En caso de una combinación de periféricos, esto es, externos e internos, el adaptador debe estar en la mitad de la conexión. Si todos son internos, el adaptador debe estar en un extremo, preferiblemente ID=7.
162
Historia y Evolución de la PC – Jairo Uparella
Fig.#47- Configuración de Jumpers SCSI con Paridad.
Paquete de Terminación de Resistores Para un sencillo SCSI, el paquete de resistores ubicados en el tablero de circuito acoplado al drive, debe permanecer instalado. En el caso de múltiples drives o discos duros, éstos son removidos para todos, excepto para el último disco duro y que se encuentra al final del cable SCSI.
Fig.#48- Paquete de Terminación de Resistores
163
Historia y Evolución de la PC – Jairo Uparella
Para 1995, ya al final de nuestra historia, se anunció la salida del SCSI III, cuyas características no se conocían en esa fecha, pero al parecer da soporte a la tecnología en fibra óptica con una transferencia de mas de 20 MegaBytes por segundo, totalmente serial, similar al servicio de transmisión que emite en forma digital las tres fuentes de información voz, video y datos, conocida como ATM (Asynchronous Transfer Mode) en el mundo de las WAN (Wide Area Network).
IDE En 1986 la Western Digital y la Compaq, se asocian para crear la interfaz IDE (Integrated Drive Electronics) Electrónica Integrada en Unidad con especificaciones CHS. Aunque no se note mucho y en una PC aparezca una tarjeta en un slot de expansión, por lo general el controlador IDE viene junto o integrado con el drive formando un solo conjunto. Esto los hace diferentes en cuanto a hardware se refiere de SCSI y ESDI. Con respecto al software, contrario a SCSI, no requiere un driver o manejador en software en los archivos iniciales AUTOEXEC.BAT o CONFIG.SYS. IDE es más que todo utilizado en sistemas que no están acoplados a redes y no estén formados por un gran número de dispositivos, soportando hasta 4 de ellos.
164
Historia y Evolución de la PC – Jairo Uparella
Fig.#49- Conexión IDE
Fig.#50- Configuración Master/Slave IDE
Una tarjeta Multi/IO, puede servir como adaptador para el cable del drive IDE. Utiliza una única cinta gris de 40 conectores y es el más utilizado en las tareas de Windows 3.1. Con una transferencia de datos de 5 MegaBytes por segundo, depende totalmente del BIOS. Cuando se amoldan al mismo sistema dos dispositivos IDE, los jumpers al lado del conector IDE, permiten configurarlo como Master (Maestro preasignado) para el primer disco y Slave (esclavo) para el segundo. Si los discos se instalan por separados, los jumpers de ambos ocupan la posición correspondiente a la predeterminación Master. Estos discos no deben tener contacto físico. 165
Historia y Evolución de la PC – Jairo Uparella
Fig.#51- Conexión EIDE
EIDE EIDE, significa Enhance IDE o IDE mejorado a 32-bits, que junto a las arquitecturas Fast ATA y FAST ATA 2, conforman la segunda generación de dispositivos IDE, con una rata de transferencia de 13.3 MegaBytes por segundo, debido a la cualidad de estos discos denominado Multiword DMA. Si un EIDE supera la capacidad de los 528 Megabytes, el sistema de acceso a los discos de referencia con notación lineal LBA- Logical Block Address – esta regido por el estándar MODE 3 PIO o MODE 4 PIO, lo que permite el control sobre la transferencia de datos al drive y el control de datos entregados lo hace a través del canal IO, a 11 MB por segundo. PIO significa Programmable IO. El BIOS también esta en condiciones de dar soporte a una configuración de 1654 cilindros, 16 cabezas y 63 sectores, para un total de más de 8.53 Megabytes. Al parecer se confunde mucho la especificación ATA con IDE, y la verdad es que no son lo mismo. La diferencia está en que ATA está provisto de un modo-DMA como alternativa al PIO. 166
Historia y Evolución de la PC – Jairo Uparella
Fragmentación Este es uno de los problemas más comunes que se presenta en todo disco y realmente no podemos llamarlo problema debido a que es un proceso inevitable de grabación y que tiene sus correctivos. La fragmentación simplemente se refiere a un archivo que es grabado en diferentes espacios de discos y no en la forma secuencial de la progresión de los sectores.
Fig.#52- Disco Fragmentado. Estos espacios se presentan por la continua eliminación de archivos y que son saltados cuando un nuevo archivo de datos intenta caer sobre ellos. El problema de la fragmentación empieza con el borrado de archivos y la asignación de atributo de borrado de un archivo en el FAT. Cuando deseamos grabar un nuevo archivo y posiblemente más grande que los espacios dejados por los borradores, este se ve en la obligación de enviar parte de los datos a diferentes lugares del disco, con el fin de que no se toque a los archivos borrados, los que obviamente pueden ser recuperados.
167
Historia y Evolución de la PC – Jairo Uparella
La defragmentación es una utilidad para discos y fue creado por Peter Norton de NORTON Utilities Technology e implantada como una herramienta dentro de las órdenes externas del DOS de Microsoft. El proceso de defragmentación consta de dos partes: Plena y de sólo archivos. La plena traslada los directorios al principio del disco y reorganiza los archivos fragmentados. También es posible la ordenación inmediata por nombre, extensión, tamaño o fecha de los archivos en el momento de la defragmentación. La de sólo archivos permite la organización del FAT.
168
Historia y Evolución de la PC – Jairo Uparella
Capitulo
9
El Láser y la Multimedia Las tarjetas de Sonido y el CD-ROM Este es uno de los sistemas al que realmente se le ha dedicado mucho tiempo para poder así desarrollar una tecnología que sea capaz de leer un medio de almacenamiento a altas velocidades y con precisión y fidelidad sorprendentes. Lo paradójico del asunto es que es fácil de instalar en una PC. El sistema completo está compuesto de una tarjeta de sonido, el CD-ROM y los drivers en software instalados en el disco duro. Realmente no tiene sentido instalar uno sólo de estos elementos, pero de que se hace, no hay ningún problema. Desde 1985 la evolución de los sistemas WORM (Write Once Read Many) como se le denominó al prototipo inicial, despegó rápidamente y ha sido de mucha utilidad no sólo para los sistemas de MULTIMEDIA, sino para sistemas complejos de información que requieren mucha protección.
169
Historia y Evolución de la PC – Jairo Uparella
MULTIMEDIA no es conceptualmente un “sistema” como lo hemos denominado (aceptable claro está), y tampoco una tecnología de nuestra época. Los sistemas reales multimedios se originaron con la llegada de la radio, TV, cine, prensa, etc. MULTIMEDIA es todo eso en la PC, definiéndola como MPC (Multimedia Personal Computer).
Las Tarjetas de Sonido Pero fue posterior a la salida de Windows 3.1, más o menos a finales del 92 que las tarjetas de sonido y el CD-ROM mostraron su utilidad. Muchos productores empezaron a distribuir tarjetas de sonido en el mercado, pero al parecer la creadora inicial fue la firma CREATIVE Lab de California con su conocida tarjeta SOUND BLASTER. La siguieron la Digital SOUND Pro 16+, la MULTISound de Turtle Beach Systems y otras. Tendríamos que hablar de dos tipos de tarjetas, para seguir la secuencia normal de nuestra historia y se refieren a tarjetas de sonido IDE y SCSI de 16-bits (ISA y VESA). En nuestro medio son más comunes las del tipo IDE, pero es posible que pronto sean actualizadas evitando que las ya selectas SCSI las reemplacen. Estas tarjetas ofrecen conectores o acopladores para jacks en el bracket de metal de la tarjeta, necesarios para la reproducción y grabación de sonidos.
Linea
Descripción
Line In Mic In Line Out Spkr Out MIDI
Para conectar un deck, grabadora Exclusiva del Micrófono con plug de 1/8 Salida de 50W para conectar a un Amplificador Salida de 32W para speakers (parlantes) o audífonos Conector para joystick o dispositivo MIDI
Tabla #35 – Conectores y Jacks en el bracket de metal
170
Historia y Evolución de la PC – Jairo Uparella
MIDI (Musical Instrument Digital Interface) – Interface Digital para Instrumentos Musicales, permite la conexión de un instrumento musical digital como una organeta, sintetizador, etc.
Configuración La configuración en software de las tarjetas, depende de un driver o manejador en cual es insertado en líneas del AUTOEXEC.BAT y como DEVICE en el archivo CONFIG.SYS. El driver controla entre otras cosas el IRQ y DMA asignados (Jumpers) a la tarjeta. Utiliza dos puertos, el de audio asignado a la dirección IO 220 y el MIDI, asignado a 330, bajo la especificación serial MPU-401 UART. Para la SOUND BLASTER de Creative Lab, la configuración en líneas del archivo AUTOEXEC.BAT está dada por la siguiente orden:
SET BLASTER = A220 D1 I5 H5 P330 T6
Y en CONFIG.SYS, asignando el CD-ROM:
DEVICEHIGH /L:2,24832=C:\SBCD\DRV\SBIDE.SYS /D:MSC001/V
Elementos de la Tarjeta de Sonido Las tarjetas de sonido están constituidas por un número de elementos que permiten el tratamiento y la transformación de las señales análogo-digitales. No todas las tarjetas prestan los mismos servicios, pero lo principal, el sonido, obviamente será igual.
171
Historia y Evolución de la PC – Jairo Uparella
Fig. #53 – Constitución de una Tarjeta de Sonido
- El conector principal del cable de 40 o 50 pines del tipo cinta gris o listón que llega al CD-ROM. - El chip controlador de la interfaz utilizada, encargado de mantener la comunicación con el CD-ROM y de él depende la compatibilidad con la tarjeta. - El conector de audio CD-AUDIO (LGGR) que permite enviar y recibir la señal de audio a través de un cable al CD-ROM. - El chip de audio-control, quien hace la transformación de la señal análoga a digital y viceversa (DAC) – Digital Analog Converter. Además controla los mezcladores, amplificadores y flitros. Recibe la señal de 8 o 16-bits del sonido. - Chips ROMS de sonidos o sintetizadores, que almacenan un número de sonidos de muchos instrumentos, utilizables por el usuario. Algunas tarjetas poseen un conector para permitir el acoplamiento de un módulo de expansión que contiene un sistema de generación de sonidos.
172
Historia y Evolución de la PC – Jairo Uparella
- El procesador de señal digital (DSP) – Digital Signal Processor. Procesa órdenes enviadas a la tarjeta y que puede ser actualizado por software para manejo de comunicaciones (MODEM) o reconocimiento de voz. - Conectores del MODEM, para la comunicación cuando existe la posibilidad de tener un MODEM y poder reproducir los sonidos a través de la tarjeta de sonido en la PC.
Pin
Descripción
1 2 3 4 5 6 7 8 9 10
GND Guía del Conector Línea de entrada GND Línea de salida izquierda GND Línea de salida derecha Entrada del MODEM GND Entrada del Micrófono
Tabla #36 – Conector del MODEM
El CD-ROM CD-ROM (Compact Disk – Read Only Memory) – Diseñados inicialmente para la tecnología de música digital, es utilizado ahora para guardar información. Comparando el CD con el diskette o disco duro, no poseen una estructura de sectores y pistas como las descritas anteriormente, sino sólo una pista en espiral y que para pasar rápidamente del Track01 (primer archivo) al ultimo, le toma tan sólo unos milisegundos. 173
Historia y Evolución de la PC – Jairo Uparella
Su medida diametral es de 4.72 pulgadas y su capacidad está dada en MegaBytes. En el momento del arrastre rápido del mecanismo del láser, no hay un elemento que toque al CD cuando este gira a más de 4000 r.p.m., definiendo esto como “Spin”.
Fig. #54 – CD-ROM
Fig. #55 – Lectura en CD-ROM
¿Cómo se lee información del CD? La forma de grabar información en el CD, también es diferente a la forma de como se graba en un diskette o disco duro. Cuando se lee en un CD se hace sobre la única pista que se encuentra en la capa de la emulsión brillante que los caracteriza, cuyos agujeros (pits) cuando el láser disparado por un diodo cae en ellos, representa el bit 0 y cuando el rayo láser golpea contra la emulsión brillante (Lands), es reflejado y enfocado a través de un lente hacia un detector de luz, que genera un pequeño voltaje, produciendo el bit 1. Este mecanismo es supremamente pequeño, rápido, seguro y el proceso de grabarlos lo hace la casa productora. Los CD-ROM no son dispositivos creados para perforar pits, por lo que no pueden escribir.
174
Historia y Evolución de la PC – Jairo Uparella
Los estándares y la Transferencia de Datos La MPC (Multimedia PC Marketing Council) – Consejo MPC, estandariza la norma MPC Nivel II que estipula las unidades CDROM capaz de transferir a un flujo de 300 KBps (KiloBytes por segundo), denominada SPEED II o 2X con lectura secuencial, tarjetas ISA de 16-bits y buffer de 256KB, necesario para la presentación de imágenes en pantalla. Posteriormente, las normas de transferencia aumentaron, llevando el flujo de datos a una razón de 450 KBps denominándose norma 3X y la 4X multispin, denominada también QuadSpeed, llegando a los 590.3 KBps. La ISO-9660 (Internacional Standards Organization) Norma 9660, es la norma que estipula la estructura del sistema de archivos en CDs. Derivado del formato High Sierra, ISO ha tenido dos estándares, denominados ISO 9660-1, que propuso una estructura de archivos parecidos a los de la FAT del DOS y la norma ISO 9660-2, que dispone de una estructura con nombres de archivos largos. Los CD-ROMs actuales por lo general soportan otras características que definen la forma de tratamiento de la información en estos dispositivos:
CD-I – CD Interactivo, formato creado por Philips y que permite correr los títulos y software en general Multimedia. Multisesión - Se le denomina así a las grabaciones de datos en más de una sesión con tabla de contenido para cada una de ellas. Una sesión es la grabación de datos en un CD en blanco. CD-ROM XA – Extended Architecture – Se refiere a la compatibilidad de drives que ofrecen reproducción multisesiones y sincronización de varios tipos de discos. Definen además un nuevo tipo de pista.
175
Historia y Evolución de la PC – Jairo Uparella
CD-ROM L2-XA – De nivel 2- Define la comprensión de datos de audio y video. MULISPIN – Característica de ciertos CD-ROMs que determinan el amoldamiento a la velocidad rotacional de los CDs.
Los Libros Esta es una historia que empieza en 1980 con la aparición del libro “Rojo”, (CD de Sonido) originalmente para técnicos y programadores y trata sobre aspectos relacionados con la PC, ya que los CDs originalmente fueron creados bajo los estándares para codificación y decodificación del sonido. Este libro fue modificado debido a la nueva estructura de archivos y velocidades bajo el estándar HighSierra ISO 9660, definiéndose como libro “Amarillo”, (Grabación en CD-ROM). Posteriormente aparece el libro “Verde” que define el formato de la Philips (CD-Interactive). En 1990 aparece el libro “Naranja”, que contiene las especificaciones de Audio, Video y órdenes de computador. Este libro especifica la forma de leer en un solo paso los formatos de video y sonido.
Trabajando con los archivos WAV Los archivos de extensión WAV (wave – onda), se refieren a sonidos grabados en CD o disco y que pueden ser reproducidos a través de una tarjeta de sonido. El canal de sonido puede ser de dos formas, monofónico o estereofónico, esencial este último a una frecuencia óptima de sonido de 44.1 kHz y ruta de datos de 16-bits. Cuando se desee grabar un archivo de sonido, se deben tener en cuenta estas características. Otros tipos de archivos para sonidos pueden ser reproducidos por medio de la tarjeta de sonido, como archivos de extensión VOX, VOC, MID, CMF.
176
Historia y Evolución de la PC – Jairo Uparella
Capítulo
10
El Modem y Fax/Modem La Transmisión de datos La conexión de dos PCs remotas, se puede establecer por medio de una línea que permita el intercambio de datos a través de un protocolo de comunicación por supuesto entendible por los dos dispositivos. Esta definición que bien puede ser aceptable por dos terminales en un sistema de red, la utilizamos para dos PCs conectadas vía MODEM. De la contracción Modulador/DEModulador, este dispositivo aparece mucho antes del inicio de nuestra historia, exactamente en 1981 con velocidades de 300 bps (bits por segundo) pero su utilización y funcionalidad han ido progresando hasta convertirse en uno de los dispositivos más imprescindibles de la PC del 95. En 1985 ya poseíamos un modem que transmitiera a 2400 bps.
177
Historia y Evolución de la PC – Jairo Uparella
El modem es un dispositivo de comunicaciones que recibe datos en paralelo y los convierte en serie y viceversa. También debe convertir las señales digitales en análogas para transmisión y análogas a digitales para la recepción. Cuando se habla de Modulación, se refiere a la salida de datos y de Demodulación, a la entrada de datos. Su velocidad de transmisión está determinada por BAUDIOS, que corresponde a la transmisión de paquetes de bits en la unidad de tiempo.
Fig.# 56 - Modem
¿Quién entiende a los BAUDIOS? Por mucho tiempo se ha tratado de corregir la definición de este término, pero al parecer no ha dado resultado. BAUDIOS realmente no está definido como bits por segundo. Es un término que define una razón y que puede ser aplicable a cualquier cantidad de bits en un paquete transmitido en la unidad de tiempo, por ejemplo en un segundo. Así, una razón de 1,200 bps, puede ser transmitido a 120 BAUDIOS o a 150 BAUDIOS y la velocidad de transmisión es la misma. La clave está en que el primer paquete contiene 10 caracteres y el segundo 8. El problema empezó debido a que el modem a 300 bps sí corresponde a 300 BAUDIOS, con transmisiones de 1 a 1 bits, pero eso si es historia. 178
Historia y Evolución de la PC – Jairo Uparella
Transmisión Algo que interesa mucho a los usuarios de modems está definido como una ley a tener siempre en cuenta: “A mayor número de caracteres por segundo, menor es la cuenta de teléfono a pagar”.
Cuando dos modems hacen contacto, se dice que estrecharon sus manos (handshaken) y se reconoce por una señal audible emitida por el modem. La transmisión vía modem puede ser de dos tipos, definidas como síncrona y asíncrona, pero en nuestra historia, todo es asíncrono, es decir, no dependemos del reloj para recibir una respuesta. Este último tipo de transmisión necesita más tiempo, debido a la cantidad de información necesaria que interviene en el envío de datos, como el bit de inicio, número de bits de información o paquetes y el bit de parada. La transmisión se hace por las líneas de acuerdo con los siguientes modos:
Simplex – Se utiliza una sola línea y un solo sentido. Semiduplex o Half Duplex - Una sola línea en los dos sentidos, por lo que es imposible la transmisión simultánea. Se necesita saber si la línea está disponible (Idle) o si está ocupada (Busy). Duplex – Utiliza dos líneas y dos sentidos.
179
Historia y Evolución de la PC – Jairo Uparella
HAYES AT Command Set El control de la comunicación vía modem está definido por una serie de órdenes llamadas “Comandos AT” (Como la secuencias de escape de las impresoras) creadas por la firma HAYES Company, predefiniendo la forma de emisión y recepción de datos en el módem. (Véase apéndice F, Comandos AT). Sin el prefijo AT, la orden no será ejecutada y si es aceptado, no puede ser modificado o borrado. En “Terminal” de Windows se puede trabajar bajo los comandos AT.
Panel Frontal del Modem A simple vista, la parte frontal del modem no representa nada para muchos usuarios, pero si aprendemos a reconocer el significado de cada LED en el tablero, estaremos seguros del funcionamiento actual de un modem:
LED
HS AA CD OH RX MR TR SX
Indica que…
High Speed Auto Answer Carrier Detect Off-Hook Receive Data Modem Ready Terminal Ready Send Data
Está configurado para máxima velocidad Contesta llamadas de entrada Se conectó a otro Está en uso Está recibiendo datos Está encendido Hay conexión entre el modem y la PC Envía datos
Tabla # 37 – Leds del Modem
180
Historia y Evolución de la PC – Jairo Uparella
Conexión a la PC Si el modem es externo, se conecta a la PC vía cable serial, de 25 pines, soportados por el controlador UART 16550A que puede alcanzar los 115,200 bps. Es bueno tener en cuenta que un puerto serial actualizado, puede alcanzar una velocidad máxima de 119.2 kbps, comparado con un puerto paralelo que alcanza los 500 kbps. Si es interno debe ser insertado en un slot de expansión como cualquier adaptador y obviamente la conexión con la PC será vía Bus. A este dispositivo se le conoce como Fax/Modem. Si es interno o externo, el cable de la línea telefónica debe ir acoplado al conector que indica LINE y el teléfono al conector que indica PHONE.
La Tarjeta y su Configuración En la tarjeta o circuito del modem, encontramos el chip CPU para el proceso de comandos, un chip PROM para el software interno del modem, chips RAMs de 4KB o menos, para el almacenamiento temporal o buffer y el chip 16550A UART para transmisiones a altas velocidades. Como toda tarjeta, los jumpers definen los IRQs que son seleccionables (3,4,5 y 7) para la asignación correcta de la línea de interrupción. El puerto serial es seleccionado por software desde la pantalla de configuración. Un speaker que permite ahora la reproducción de sonidos o señales auditivas de fácil reconocimiento.
181
Historia y Evolución de la PC – Jairo Uparella
La siguiente es la lista de parámetros, aplicable a la configuración general del puerto serial:
BAUD - Razón de transferencia de datos. Bits – Número de bits en cada paquete (7 u 8) Paridad – Tipo de paridad par o impar. Si el número de bits es de 8, se selecciona “no parity”. Control de flujo – Puede ser HARDWARE o XON/XOFF, para el handshaken por hardware o software respectivamente. XON/XOFF es el ideal e indica preparado o no preparado para recibir datos. Parity Check – Detecta errores y permite Mostar el byte que causó el error. Carrier Detect – Especifica qué Terminal utiliza señal del modem para detectar la señal de portadora. Puerto – Puede ser COM1: o COM2: Bits de parada – Número de bits entre paquetes.
Historia de los Estándares Estos estándares definen la serie de normas para la comunicación o envío y recibo de datos entre dos modems. Estas normas están regidas por la ITU (Iternational Telecommunication Union), organización internacional que establece los estándares oficiales para dispositivos de comunicación introducida con la aparición de velocidades de 28.8 kbps en modems y formalmente conocida como CCITT (Comitee Consultatif Internacional Telegraphique et Telephonique), define tres tipos o grupos de protocolos:
182
Historia y Evolución de la PC – Jairo Uparella
Modulación y velocidad – Definidas por los siguientes protocolos: V.22 bis V.32 V.32 bis V.32 Terbo V.34
para 2400 bps para 9600 bps para 14400 bps para 19200 bps para 28800 bps
(1985) (1987) (1991) (1992) (1993) (V.Fast o V.Fast Class)
Corrector de errores – Fue soportado por MNP-2 y 4 (Microcom Networking Protocol 2 y 4) el cual es reemplazado por el protocolo CITT V.42. Comprensión de datos – Era soportado por MNP 5 y es reemplazado por CCITT V.42 bis. La comprensión de datos se puede dar de 4:1 para estándares de 28.8 kbps.
V.34 V.34 es un estándar que permite la comunicación en líneas de larga distancia. Además, permite que el modem pueda reproducir sonidos, con lo que la utilidad del mismo en esta era de MULTIMEDIA, Internet y como contestador automático de llamadas, es apreciable.
Fax/Modem Aunque su funcionalidad no se aparta del modem y ante todo se rige por los mismos protocolos cuando es utilizado en modo de datos, posee sus propios estándares y trabajan mejor en la transmisión que en la recepción de datos. Los estándares que lo soportan son: V.17 para 9600 bps V.27 para 14400 bps
183
Historia y Evolución de la PC – Jairo Uparella
Fig.# 57 – Tarjeta del Fax/Modem
184
Historia y Evolución de la PC – Jairo Uparella
Capítulo
11
La Administración de la PC Los dos archivos principales de la PC, AUTOEXEC.BAT y CONFIG.SYS, definen el entorno principal para que los programas puedan correr y los dispositivos puedan ser utilizados en toda su extensión. Estos archivos son editables, pero la mayoría de los casos sus líneas son automáticamente modificadas al momento de instalar un dispositivo. MS/DOS los lleva a memoria con la configuración fija y definitiva, para que las aplicaciones los encuentren en forma inmediata. La diferencia entre ellos es que AUTOEXEC.BAT es un archivo que permite cargar y correr programas como si la orden estuviera en la guía o prompt del sistema, pero de forma automática. Ambos permiten la asignación de variables con ciertos parámetros, definiendo en sí las denominadas variables de Entorno. 185
Historia y Evolución de la PC – Jairo Uparella
Los siguientes son los archivos AUTOEXEC.BAT y CONFIG.SYS tomados de una PC Multimedia, disco IDE y MODEM, bajo Win 3.11: AUTOEXEC.BAT SET SOUND=C:\SB16 SET BLASTER = A220 I5 D1 H5 P330 T6 SET MIDI = SYNTH:1 MAP:E C:\SB16\DIAGNOSE /S /W=C:\WINDOWS C:\SB16\MIXERSET /P /Q LH /L:2,23416 C:\WINDOWS\MSCDEX.EXE /S /D:MSCD001 /M:8 /V C:\DOS\SMARTDRV.EXE /L 1024 @ECHO OFF PROMPT $P$G SET PATH=C:\WINDOWS; C:\NORTON; C:\MOUSE SET TEMP=C:\DOS\TEMP keyb sp LH /L:2,27536 GMOUSE doskey
CONFIG.SYS DEVICE=C:\DOS\SMARTDRV.EXE /DOUBLE_BUFFER DEVICE=C:\DOS\HIMEM.SYS DEVICE=C:\DOS\EMM386.EXE 1024 RAM BUFFERS=30,0 FILES=79 DOS=UMB LASTDRIVE=Z FCBS=8,0 DEVICEHIGH /L:1,12192=C:\DOS\SETVER.EXE DOS=HIGH STACKS=9,256 DEVICEHIGH /L:1,4560=C:\WINDOWS\IFSHLP.SYS DEVICE C:\PLUGPLAY\DRIVERS\DOS\DWCFGMG.SYS DEVICEHIGH /L:2,24832=C:\SBCD\DRV\SBIDE.SYS /D:MSCD001 /V
186
Historia y Evolución de la PC – Jairo Uparella
Veamos la definición de cada línea de estos archivos: AUTOEXEC.BAT
SET SOUND=C:\SB16 – Asignación de
variable de entorno SOUND.
Asignación de parámetros de tarjeta de sonido, como Puerto, IRQ, DMA y otros. SET BLASTER = A220 I5 D1 H5 P330 T6 -
SET MIDI = SYNTH:1 MAP:E –
Asignación de sintetizador para
dispositivos MIDI.
C:\SB16\DIAGNOSE /S /W=C:\WINDOWS
– Configuración de tarjeta de
sonido.
C:\SB16\MIXERSET /P /Q
– Configuración de Mixer o mezclador de
audio. SET permite que sea asignada una variable que controla el funcionamiento de programas o simplemente la asignación de directorios denominados “Variables de Entorno”. Las 5 líneas anteriores corresponden a la configuración de la tarjeta de sonido SOUND BLASTER 16.
Carga el driver MSCDEX.EXE en memoria alta y especifica la presencia de un solo CD-ROM. LH /L:2,23416 C:\WINDOWS\MSCDEX.EXE /S /D:MSCD001 /M:8 /V
LOADHIGH permite la carga de un programa en memoria HMA o memoria Alta, dejando libre espacios en memoria convencional para otros programas. El programa que esta línea se está cargando es el MSCDEX.EXE (MS CD Exchange) que proporciona acceso a unidades CD-ROM (controlador MSCD001 en D) y la PC puede ubicarlo en la región 2 de memoria con una capacidad de 32K Bytes. 187
Historia y Evolución de la PC – Jairo Uparella
– Crea un caché de disco en la memoria extendida, lo que aumenta la velocidad de operaciones de disco en MS/DOS. C:\DOS\SMARTDRV.EXE /L 1024
SMARTDRV es instalado en el momento de instalarse Windows y no es sino un programa que ofrece un caché de disco en memoria extendida, para que sea más fácil a las aplicaciones, encontrar información inmediata, en vez de tener que volver a cargarla del disco duro. Si una aplicación desea escribir en el disco duro, primero lo hace en el caché y SMARTDRIVE posteriormente hace la actualización correspondiente a su debido momento. El rendimiento y rapidez de Windows y de las aplicaciones es por cierto mucho mayor.
@ECHO OFF-
Deshabilita la presentación de comandos en pantalla.
PROMPT $P$G
- Define la forma “C:\>” del prompt.
– Permite que cualquier comando de Windows, DOS, NORTON y del Mouse, sean cargados desde cualquier directorio. SET PATH=C:\WINDOWS; C:\NORTON; C:\MOUSE
keyb sp –
Teclado en español.
Carga el ratón en región 2 de memoria Alta con una capacidad de 27Kbytes. LH /L:2,27536 GMOUSE –
Permite almacenar las órdenes previas del MS/DOS introducidas desde el prompt del sistema. doskey –
188
Historia y Evolución de la PC – Jairo Uparella
CONFIG.SYS – Carga SMARTDRV.EXE con doble buffer, lo que proporciona compatibilidad para controladores de disco duro y que no pueden trabajar con la memoria que proporciona EMM386 o en Windows bajo el modo 386-Enhanced. DEVICE=C:\DOS\SMARTDRV.EXE
/DOUBLE_BUFFER
La utilidad DOUBLE BUFFERING provee prácticamente un auxilio de compatibilidad para discos duros que no puedan trabajar con memoria virtual. Esto más que todo está orientado a discos ESDI y SCSI para la transferencia de información a aplicaciones o programas que utilizan HMA o EMS. Para verificar si la PC necesita esta utilidad, en el prompt del sistema teclee SMARTDRV y aparecerá una tabla con una columna denominada “Buffering”, que le indica si es necesario o no. DEVICE=C:\DOS\HIMEM.SYS-
Administra el área de Extendida, incluyendo el área HMA (Hi-Memory Area).
memoria
La orden DEVICE, habíamos comentado que permite la carga de un driver o controlador en memoria. HIMEN.SYS en estas líneas, debe aparecer antes que EMM386, como se ve a continuación. DEVICE=C:\DOS\EMM386.EXE 1024 RAM-
Convierte el espacio sin usar en HMA a UMBs de RAM y también convierte la memoria XMS a Expandida EMS 4.0. Permite además cargar TSRs y drivers UMBs con LOADHIGH y DEVICEHIGH. – Permite la utilización de espacios de memoria para almacenamiento temporal de datos. BUFFERS=30,0
– Define el número de archivos que pueden estar abiertos al mismo tiempo. FILES=79
189
Historia y Evolución de la PC – Jairo Uparella
– Entrega al MS/DOS los espacios UMB creados por EMM386.EXE. DOS=UMB
LASTDRIVE=Z –
Se refiere al ultimo dispositivo reconocible por DOS.
– Define el espacio que DOS separa para captura de información de FCB (File Control Block). FCBS=8,0
DEVICEHIGH /L:1,12192=C:\DOS\SETVER.EXE-
Especifica el número de versión que MS/DOS enviará a un programa o controlador de dispositivos. DOS=HIGH-
Reduce al mínimo el tamaño de DOS en memoria convencional cuando transfiere la mayor parte del Sistema Operativo, buffers de disco y parte de COMMAND.COM al HMA. STACKS=9,256-
Define el espacio que DOS separa para que sea utilizado como buffer local cuando ocurre una interrupción IRQ. La definición exacta de stack de interrupciones, se trató en al Capítulo II, con el mismo nombre. - Permite la carga del driver Installable File System Help en memoria Alta. DEVICEHIGH /L:1,4560=C:\WINDOWS\IFSHLP.SYS
DEVICE C:\PLUGPLAY\DRIVERS\DOS\DWCFGMG.SYS-
Define y carga el dispositivo de mensajes de configuración de drivers de DOS en Windows, bajo la tecnología Plug & Play. – Define y carga a memoria alta el driver de configuración IDE de la SOUND BLASTER. DEVICEHIGH /L:2,24832=C:\SBCD\DRV\SBIDE.SYS /D:MSCD001 /V
190
Historia y Evolución de la PC – Jairo Uparella
La mayoría de las órdenes en estos archivos constituyen el principal paso de carga de drivers en extendida que serán manejados por aplicaciones Windows. Realmente son órdenes que están destinadas al entorno de una MPC, con fax/modem y SOUND BLASTER de 16bits. Aunque el Sistema Operativo MS/DOS ha evolucionado y en su última versión (6.22) ofrece grandes utilidades como las mencionadas en capítulos anteriores como auxilio de discos y creación de espacios de memorias y otros, bajo Windows, funcionan de manera discreta, lo que no involucra al usuario final cuando de instalación de drivers de dispositivos se trata. La mayoría de las aplicaciones y dispositivos periféricos, por no decir todas, ofrecen un instalador bajo diversos nombres como SETUP.EXE, INSTALL.EXE, bajo DOS, que pueden ser ejecutados desde el Administrador de Archivos de Windows. Otro caso (poco usual pero MS/DOS la utiliza) es la posibilidad de introducir el diskette en el drive A: y hacer un reset a al máquina, para que sea ejecutado un archivo de extensión BAT, el que hace toda la tarea de búsqueda y ejecución del programa instalador. Algo a tener en cuenta es la cantidad de diskettes que cada aplicación trae para sus archivos y la capacidad que ocupará en el disco duro, donde por supuesto termina el programa o aplicación completa.
Instalación del MS/DOS Posiblemente ya muchos no recuerden cómo se instala el MS/DOS en un disco duro y esto es normal. En el capítulo 8 se trató el tema de dar formato a alto-nivel a un disco duro. Posterior a la creación de particiones permitidas por las especificaciones de la interfaz utilizada, la orden FORMAT C:/S/V cumple esta tarea.
191
Historia y Evolución de la PC – Jairo Uparella
Esta orden detecta inmediatamente el disco en cuestión, trasladando los archivos necesarios para el booting. Si el MS/DOS se carga desde el instalador, crea automáticamente un directorio bajo el nombre de DOS en el disco duro y deposita en él todos los archivos para la administración de la PC.
Ayuda del MS/DOS Es frecuente que se olviden también ciertos parámetros, opciones de las tantas que trae el MS/DOS en sus órdenes. En el Prompt o guía del Sistema simplemente se introduce la orden a consultar seguida del signo de / (slash) e interrogación, por ejemplo “DIR /?” No sólo le informa de los posible parámetros a utilizar con la orden consultada, sino que le ayuda a solucionar un problema, despejar dudas e instruirlo en forma inmediata. Por esto, no trataré todas las órdenes del MS/DOS en este libro, pues sería “una vez más” de las tantas veces que se haya escrito en manuales y libros. Creo que lo mejor es el Help de ayuda directa, lo que evitaría muchas páginas de órdenes o comandos. Además, su PC debe traer uno.
192
Historia y Evolución de la PC – Jairo Uparella
Instalando Windows 3.1 Para Windows, la orden SETUP en el disco No 1, permite hacer la instalación en el disco duro, haciendo cambios en AUTOEXEC.BAT y CONFIG.SYS como se mencionó anteriormente. Los comandos introducidos o modificados son: En AUTOEXEC.BAT PATH SMARTDRV.EXE TEMP
En CONFIG.SYS HIMEM SMARTDRV RAMDRIVE EMM386
Otros como DEVICEHIGH y LOADHIGH, son modificados en el momento de la instalación de dispositivos como tarjetas de sonido o CD-ROM.
193
Historia y Evolución de la PC – Jairo Uparella
194
Historia y Evolución de la PC – Jairo Uparella
Capítulo
12
La Conexión a Tierra La Mayoría de los problemas en la PC, posiblemente para el técnico sean un poco fáciles de identificar, según el error que esté presentando en cualquiera de sus circuitos. Pero no todo es controlable y en especial aquellos problemas causados por el exceso de corriente debido a la mala conexión o instalación de la red eléctrica. La falta de un regulador de voltaje o un supresor de picos puede permitir el paso de altos valores fuera del normal estipulado para el equipo, produciendo el daño en los chips, discos, etc. Bajo una tormenta, que es prácticamente cuando estos excesos se presentan con mayor frecuencia, puede resultar que la PC quede totalmente irreparable e identificar qué elementos sufrieron daños puede ser un trabajo tedioso, si es que se logra por lo menos llegar a hacerlo.
195
Historia y Evolución de la PC – Jairo Uparella
Una conexión normalmente se deriva en forma independiente de todos los circuitos de la planta que parte desde el braker hasta la puesta a tierra. Tres cables forman esta conexión: Línea viva o fase – cuyo valor está estipulado en 177 V. Neutro – cuyo valor está estipulado en 0 V. Tierra – cuyo valor está estipulado en 0 V.
Fig.#58 – Conexión a Tierra Si se miden por medio de un tester estos valores, el medidor indica que: 1. Entre fase y neutro debe haber 117 V. 2. Entre fase y tierra debe haber 117 V. 3. Entre neutro y tierra debe haber 0 V. Si el valor en la medida 1, es por ejemplo de 120 V, el valor en 3 debe ser 3V. 196
Historia y Evolución de la PC – Jairo Uparella
El Regulador de Voltaje Es un dispositivo capaz de mantener controlado el voltaje, reducir las señales parásitas o ruido eléctrico y contrarrestar los picos de voltaje por medio de un varistor interno. Sus potencias varían a partir desde los 600 VA, voltaje de entrada desde los 100 AC y salidas nominales de 117V, con capacidad de corrección de onda en menos de 17 ns.
Fig.# 59 – Regulador de Voltaje
197
Historia y Evolución de la PC – Jairo Uparella
198
Historia y Evolución de la PC – Jairo Uparella
Apéndice A Evolución del Sistema Operativo MS/DOS VER Función 1.0 1.1 2.0 2.1 3.0 3.1 3.2 3.3 4.0 5.0 6.0 6.21 6.22 7.0
Diskettes de baja densidad, 1 cara Diskettes de 2 caras XT Disco Duro, directorios y subdirectorios Portable PC AT, diskettes de Alta densidad Soporte a redes Diskettes de 3.5” Discos duros mayores de 30MB DosShell Memoria sobre los 640K, HIMEM Memmaker Defragmentador Double Space Virtual para Windows
199
Historia y Evolución de la PC – Jairo Uparella
200
Historia y Evolución de la PC – Jairo Uparella
Apéndice B BIOS POST Checkpoints Cp
Descripción
04h 08h 0Ah 09h 10h 14h 18h 1Ch 1Dh 1Eh 20h 25h 26h 21h 24h 2Ch 30h 34h 35h 3Ch 3Dh 4Ch 50h 54h 58h 5Ch 60h 64h 7Ch 68h 6Ch 70h
Chequea CPU ID Reset del buffer de video-frame Inicia 82347 Inicia 82424, 82434 Prueba e inicia DMA 8273 Prueba e inicia 8254 Prueba e inicia ciclo de refresco DRAM Prueba, inicia CMOS, batería, checksum, RTC Deshabilita caché y shadow RAM Determina configuración DRAM Prueba controlador 8042 Captura tecla F10, para iniciar configuración del sistema Habilita controlador PCI Inicia 8237 PCEB Prueba e inicia 8259 Prueba 128K de memoria base Prueba shadow system BIOS Tamaño DRAM Inicia CPU 2 si existe Inicia Vectores de Interrupción Rastrea dispositivo PCI e inicia Slots Determina oscilador CPU Inicia video display Shadow de VideoBIOS si es necesario BIOS serial number, configuración modo video Prueba de memoria Determina el tamaño de caché externo, habilita caché interno Reset y prueba de teclado Reset y prueba de dispositivo puntero (ratón) Prueba ciclos de actualización RTC Prueba drive de diskettes y parámetros Prueba puerto paralelo 201
Historia y Evolución de la PC – Jairo Uparella
74h 78h 84h 88h 8Ah 90h 94h 82h 8Ch A0h ACh B0h BDh
Prueba puerto serial Prueba coprocesador Inicia y habilita teclado, LEDs Prueba disco duro y parámetros de tabla Inicia características avanzadas del disco duro Muestra o cambia estado POST si es necesario Inicia ROM de expansión, shadow IO ROM Inicia ROM de expansión dispositivo PCI Asigna chipset de acuerdo con la configuración Inicia contador de tiempo para DOS Habilita NMI Selecciona dispositivo para booting ShutDown
202
Historia y Evolución de la PC – Jairo Uparella
Apéndice C Código de errores Cod Inicial
Area de error
0100 0200 100 200 300 400 500 600 700 900 1000 1100 1200 1300 1400 1500 1600 1700 1800 1900 2000 3300
Indeterminados Fuente de poder Motherboard Memoria Teclado Monitor monocromático Monitor a color Diskettes Coprocesador Adaptador de impresora paralela Reservado para adaptador de impresora paralela Reservado para adaptador de impresora paralela Comunicación asíncrona Control de juegos Impresora SDLC Emulación de pantalla Disco Duro Unidades de Expansión IO PC 3270 BSC Impresora compacta
203
Historia y Evolución de la PC – Jairo Uparella
204
Historia y Evolución de la PC – Jairo Uparella
Apéndice D REGISTRO CMOS, RTC y otros Direcc.
Descripción
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 12 14 15 16 17 18 2E 30 31 32 33 34
Segundos Segundos de alarma Minutos Minutos de alarma Hora Hora en alarma Día de la semana Día del mes Mes Año Estado del registro A Estado del registro B Estado del registro C Estado del registro D Byte de estado de diagnóstico Byte de estado de Shutdown Byte de tipo de diskette (A-B) Byte de tipo de disco duro (C-D) Byte de equipo Byte de memoria Low base Byte de memoria High base Byte de memoria de Low expansión Byte de memoria de High expansión 2-byte CMOS Checksum (hasta 2F) Byte de memoria Low expansión Byte de memoria High expansión Byte de fecha de siglo Flag de información Reservado (hasta 3F)
205
Historia y Evolución de la PC – Jairo Uparella
206
Historia y Evolución de la PC – Jairo Uparella
Apéndice E Configuración CMOS de parámetros de cada tipo de disco duro T
Cil
Hds
1 2 3 4 5 6 7 8 9 10 11 12 13 14 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
306 4 615 4 615 6 940 8 940 6 615 4 462 8 733 5 900 15 820 3 855 5 855 7 306 8 733 7 612 4 977 5 977 7 1024 7 733 5 733 7 733 5 306 4 925 7 925 9 754 7 754 11 699 7 823 10 918 7 1024 11 1024 15 1024 5 612 2 1024 9 1024 8 615 8 987 3 987 3 820 6 977 5 981 5 830 7 830 10 917 15 1224 15 USER DEFINED
WrPre
LZone
Sec
Size MB
128 300 300 512 512 65535 256 65535 65535 65535 65535 65535 128 65535 0 300 65535 512 300 300 300 0 0 65535 754 65535 256 65535 918 65535 65535 1024 128 65535 512 128 987 987 820 977 981 512 65535 65535 65535
305 615 615 940 940 615 511 733 901 820 855 855 319 733 663 977 977 1023 732 732 732 336 925 925 754 925 699 823 918 1024 1024 1024 612 1024 1024 615 987 987 820 977 981 830 830 918 1223
17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
10 20 31 62 47 20 31 30 112 20 35 50 20 43 20 41 57 60 30 43 30 10 54 69 44 69 41 68 53 94 128 43 10 77 68 41 25 57 41 41 41 48 69 114 152
207
Historia y Evolución de la PC – Jairo Uparella
208
Historia y Evolución de la PC – Jairo Uparella
Apéndice F Comandos AT ATA ATBn ATD ATE ATH ATIn ATMn ATNn ATOn ATQ ATSn ATVn ATWn ATXn ATYn ATZn
En línea, Estrechar manos con otro modem Selector de protocolo 1200 bps En línea en modo origen Eco Hung Up Solicitud de código de producto Speaker ON –OFF Habilitación de Automodo Regresa a estado On Line Mostrar código de resultados Lectura y escritura a registros S Seleccionar palabra o dígito de código de resultado Control de mensaje de corrección de errores Código de selector de resultado Habilita/Deshabilita separación de grandes espacios Reset
&Cn &Dn &F &Gn &Kn &Ln &Mn &Pn &Rn &Sn &Tn &Vn &Wn &Yn &Zn
Selecciona opciones de DCD (Detector de Portadora) Opción Terminal de datos lista Realmacena configuración Configura Tono de guardia Determina Flujo de datos XON/XOFF-DTE/DCE Selector de Línea Corrección de datos Selector de Pulsos de marcación Control CTS/RTS Opción DSR Prueba y diagnósticos Configuración de perfiles Almacena actual configuración (Profiles) Selector de Profile por omisión Almacena número telefónico
\An \Bn \En \Gn \Jn \Kn \Nn \Qn \Tn \Vn \Xn
Máximo bloque corrector de errores MNP Break de transmisión Eco de datos en modem normal Control de flujo modem-a-modem (XON/XOFF) Habilita/Deshabilita Ajuste DTE Control de Break Contol de modo operación Selección de Flujo de Control Selector de timer Habilita/Deshabilita código extendido MNP XON/XOFF
%Cn
Compresión de datos
*Nm *Qn
Selector de velocidad Habilita/Deshabilita curso de información
209
Historia y Evolución de la PC – Jairo Uparella
210
Historia y Evolución de la PC – Jairo Uparella
Apéndice G INTERUPCIONES Y FUNCIONES DE LA PC INTERRUP FUNC DEC HEX HEX UTILIDAD 00 02 05 08 09 13 14 15 16
00h 02h 05h 08h 09h 0Dh 0Eh 0Fh 10h 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h 14h 1Ah 1Bh
Generada por la CPU- Division by 0 NMI Print Screen RTC-Real Time Clock Teclado Video CRT Vertical Señal de atención de diskette Control de Impresora Servicio de Video en BIOS Configura modo video Configura tamaño del cursor Configura posición del cursor Lee tamaño del cursor Lee posición del LightPen Lee página de display activo Pasa pantalla o ventana arriba Pasa pantalla o ventana abajo Lee un carácter y atributo Escribe un carácter y atributos Escribe un carácter Configura color de paleta Escribe un píxel Lee un píxel Escribe teletipo a la página activa Lee modo actual de video Configura registro de paletas Generador de caracteres Selección de Alternación Escribe una cadena de caracteres Reservado Lee / Escribe código combinado Información de estado / funcionabilidad 211
Historia y Evolución de la PC – Jairo Uparella
1Ch 1Dh 17 18 19
11h 12h 13h 00h 01h 02h 03h 04h 05h 08h 09h 0Ah 0Bh 0Ch 0Dh 10h 11h 14h 15h 16h 17h
20
14h 00h 01h 02h 03h 04h 05h 06h
21
15h 80h 81h 82h 83h 84h 85h 86h 87h
Graba estado de video Reservado Servicio de lista de equipo en BIOS Servicio de tamaño de memoria en BIOS Servicio de diskette y disco duro en BIOS Sistema de reset de disco Obtiene estado de disco Lee sectores del disco Escribe sectores en disco Verifica sectores de disco Da formato a pista de disco Obtiene parámetros de drive actual Inicia Tabla de parámetros de disco duro Lee grandes sectores Escribe grandes sectores Busca cilindro Reset alterno de disco Verifica si el drive está listo Recalibra el drive Diagnóstico del controlador Obtiene tipo de disco Cambia estado del disco Configura estado del disco Servicios de comunicaciones en BIOS-RS232 Inicia parámetros del puerto serial Envía un carácter Recibe un carácter Obtiene estado del puerto serial Iniciación extendida Control de puerto extendido Reservado Servicios extendidos AT en BIOS Abre dispositivo Cierra dispositivo Terminación de programa Espera Soporte a Joystick Tecla Sys Req Espera Mover Bloque 212
Historia y Evolución de la PC – Jairo Uparella
88h 89h 90h 91h 22
16h 00h 01h 02h 03h 05h 10h 11h 12h
23
17h 00h 01h 02h
25 26
19h 1Ah 00h 01h 02h 03h 04h 05h 06h 07h 08h
32 33
20h 21h 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h
Determina tamaño de memoria extendida Switch para modo virtual Loop para dispositivo en uso Configura el Flag y completa la interrupción Servicios de teclado en BIOS Lee próximo carácter de teclado Lee estado del buffer Obtiene estado de la tecla Shift Configura demora de espera y tipeo Ubica / Busca un código ASCII en el buffer Lee teclado extendido Lee estado del buffer de teclado extendido Lee estado de la tecla Shift del extendido Servicios de impresora en BIOS Envía un byte a la impresora Inicia la impresora Obtiene estado de la impresora Rutina de carga y arranque en BIOS Servicio de Hora y Fecha en BIOS Lee conteo de reloj Configura conteo de reloj Lee RTC Configura RTC Lee fecha de RTC Configura fecha en RTC Configura alarma Reset de alarma Reservado Servicios de programas-terminados en DOS Servicios de funciones-llamadas en DOS Fin de programa Entrada por teclado con Eco Mostrar en pantalla Entrada vía serial Salida vía serial Salida vía impresora E/S directa teclado/pantalla Entrada directa por teclado sin eco Entrada por teclado sin eco Muestra una cadena 213
Historia y Evolución de la PC – Jairo Uparella
0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h 14h 15h 16h 17h 19h 1Ah 1Bh 1Ch 21h 22h 23h 24h 25h 26h 27h 28h 29h 2Ah 2Bh 2Ch 2Dh 2Eh 2Fh 30h 31h 32h 33h 35h 36h 38h
Entrada por teclado con buffer Chequea estado de entrada por teclado Limpia teclado y ejecuta función Reset de disco Selecciona drive actual Abrir archivo Cerrar archivo Busca el primer archivo seleccionable Busca el próximo archivo seleccionable Borra un archivo Lee un registro de archivo secuencial Escribe un registro de archivo secuencial Crea un archivo Renombra un archivo Reporta actual drive Configura área de transferencia de discos DTA Obtiene información de la FAT del disco actual Obtiene información de la FAT de cualquiera Lee archivo Ramdom o Directo Escribe Archivo Ramdom o Directo Obtiene tamaño de archivo Configura registro de archivo directo Configura Vector de Interrupción Crea un segmento de programa Lee registros de archivos al azar Escribe registros de archivos al azar Distribuye nombre de archivo Obtiene fecha Configura fecha Obtiene hora Configura hora Configura verificación de escritura en disco Obtiene dirección del DTA Obtiene versión del DOS KEEP:TSR avanzado Obtener parámetros de disco Ctrl- Break Obtener Vector de Interrupción Obtiene espacio libre en disco Obtiene información de país dependiente 214
Historia y Evolución de la PC – Jairo Uparella
39h MD-Crear directorio 3Ah RD-Borra directorio 3Bh CD-Cambia directorio 3Ch Crea un archivo 3Dh Abrir archivo 3Eh Cerrar archivo principal 3Fh Leer de un archivo o dispositivo 40h Escribir en un archivo o dispositivo 41h Borrar archivo 42h Mover puntero de archivo 43h Obtener/Configurar atributos de archivos 44h Control I/O para dispositivos IOCTL 47h Obtener actual directorio 48h Estipular memoria 49h Liberar memoria estipulada 4Ah Modificar bloque de memoria estipulada 4Bh Cargar y ejecutar un programa 4Ch Terminar un proceso 4Dh Obtener código de retorno de un subprograma 4Eh Empezar búsqueda de archivo 4Fh Continuar búsqueda de archivo 52h Obtener lista de listas 56h Renombrar archivo 57h Obtener/Configurar fecha y hora de archivos 5Ah Crear archivo temporal 5Bh Crear nuevo archivo 5Ch Bloquear/Desbloquear acceso a un archivo 60h Cadena de decisión de path 62h Obtener dirección PSP 63h Soporte de caracteres de 2-Bytes 6Ch Crear/Abrir archivo 72h Terminar búsqueda de archivo 4302h Obtener información de volumen en Win95 7139h Crear directorio en Win95 713Ah Borrar directorio en Win95 713Bh Configurar actual directorio en Win95 7141h Borrar archivo en Win95 7143h Obtener/Configurar atributos en Win95 7147h Obtener actual directorio en Win95 714Eh Empezar búsqueda de archivo en Win95 215
Historia y Evolución de la PC – Jairo Uparella
37 38 39 47
25h 26h 27h 2Fh
48 51
30h 33h
67h
714Fh Continuar búsqueda de archivo en Win95 7156h Mover archivo en Win95 716Ch Crear/Abrir archivo en Win95 Servicio de lecturas absolutas en disco DOS Servicio de escritura absolutas en disco DOS TSRs (Terminate but Stay Resident) en DOS Servicios en win 3.1 1684h Obtiene dirección de entrada de un VxD Servicio de VxD en Win 3.1 Servicios del Mouse 00h Reset del driver 01h Habilita el puntero 02h Deshabilita el puntero 03h Lee ubicación del puntero y estado de botones 04h Configuración ubicación del puntero 05h Lee estado de botones 09h Define modo-gráfico del puntero 0Ah Define modo-texto del puntero 0Fh Define sensibilidad del Mouse 10h Deshabilita el puntero en un rango especificado 1Ah Configura sensibilidad del Mouse 1Bh Obtiene sensibilidad del Mouse 1Dh Configura página CRT 1Eh Lee página CRT 1Fh Deshabilita Mouse 20h Habilita Mouse 24h Obtener información de driver de Mouse Soporte EMS
216
Historia y Evolución de la PC – Jairo Uparella
Apéndice H Chips referenciados en este libro 146818 16550A 4164 4464 41256 44256 51426 8250 8042 8088 8086 8087 80235 80286 80287 80386 80387 80486 80487 80960 82331 82343 82344 82433 82434 8237 8250 8254 8255 8259 8374 P5,P6
CMOS UART Memoria 64K 1-bit Memoria 64K 1-nib Memoria 256K 1-bit Memoria 256K 1-nib Video RAM 256K UART Controlador de Teclado mP 8-bits mP 16-bits CP 8088 Controlador caché y EMS mP 16-bits CP 286 mP 32-bits CP 386 mP 32-bits CP 486 CPU Impresora Láser CMOS Controlador del Sistema Controlador de Buses LBX PCMC Controlador DMAs UART Temporizador PPI-Controlador de Periféricos PIC-Controlador IRQs Controlador Mulito mP 64-bits
217
Historia y Evolución de la PC – Jairo Uparella
218
Historia y Evolución de la PC – Jairo Uparella
Bibliografía NORTON Meter, Programmers Guide to the IBM PC Microsoft Press, Redmond WA, 1985 Windows 95 Final Beta Version Microsoft Co. Redmond WA, 1995 Microsoft Win 3.1 User’s Guide COMPAQ, 1990 O’BRIEN Stephen, NAMEROFF Steve, TURBO PASCAL 7 Manual de Referencia Osborn McGraw Hll 1993 ST3390A, AT Interface Drive, Installation Guide SEAGATE Technology, 1993 ADVANCED COMPUTER TECH, SYSTEM BIOS User’s Manual Advanced Computer Technology Ltd MAGIC MULTIMEDIA CARD, User’s guide VL 36 VGA VL Bus Accelerator User’s Manual Fast SCSI-2 HD Installation COMPAQ Co 1993 WD1004-27X Winchister Digital Controller WESTERN DIGITAL Installation Guide, 1989 Single Chip 286 MotherBoard User´s Manual 486 System A1G BIOS 2.0 Manual de Usuario
219
Historia y Evolución de la PC – Jairo Uparella
7850AV & 7425AV MAXTOR HD Installation Guide 12MHz Zero Wait State 286 TMB,1212C Reference BJC 600 Cannon, User’s Manual Cannon Computer System, 1993 SOUND BLASTER 16 Plug & Play 4X CD-ROM Creative Lab Tech, 1995 SuperVoice 2.2 for Windows User’s Guide Pacific Image Com, 1995
220
Historia y Evolución de la PC – Jairo Uparella
Glosario 32-bits – Tamaño del registro de datos del chip 386, cuyo direccionamiento llega hasta los 4 GB. 386SPART.PAR – Archivo de intercambio de datos de bloques denominados páginas y que forman el elemento principal de la Memoria Virtual. Ancho de banda – Se refiere a la cantidad de vías por donde circula información. A mayor ancho de banda, mayor es la calidad de representación de video o sonido. Arquitectura Superescalar – Característica del chip Pentium que permite que dos instrucciones sean ejecutadas en el mismo ciclo de reloj, lo que aumenta notoriamente la velocidad de la PC. Background – Se refiere al lugar donde las aplicaciones son ejecutadas o no, denominado segundo plano cuyas aplicaciones tienen prioridades bajas. BAUDIO – Razón de transmisión de un paquete de bits en la unidad de tiempo. Bi-CMOS – Cualidad de los transistores del chip Pentium que permite la doble ejecución en un ciclo de reloj. Bi-Tronic – Conector de impresoras de alta tecnología, compatible con el conector Centronic. BIOS – Programa incrustado en ROM, que permite la perfecta administración de los elementos y recursos propios de la PC. Bitmap – Juego de bits, donde cada punto de una imagen denominado píxel puede ser editado. Bits de parada – Bit de reposo que permite la comparación de dador enviados vía modem. 221
Historia y Evolución de la PC – Jairo Uparella
Buffer – Espacio en memoria temporal, que permite el intercambio de datos en forma inmediata entre elementos de la PC. Bus local – Tecnología de acoplamiento de interfaces para cierto tipo de PCs. Bus Mezanine – Cualidad de buses locales que permiten el salto de instrucciones entre elementos evitando el paso por la CPU. Bus Mastering – Cualidad de buses locales que permiten la comunicación entre elementos de la PC y la memoria sin utilizar canales DMA. Bus de Direcciones – Vía o ruta que permite a la CPU direccionar memoria, incluso que la física disponible. CCITT – Comitee Consultatif Internacional Telegraphique et Telephonique. Organismo internacional que define protocolos de comunicación vía modem. Actualmente conocido como ITU. Ciclo de máquina Tiempo o período en que los elementos y memorias de la PC deben responder a la CPU para el intercambio de datos. Clones – Se refiere a los modelos de PCs cuyo diseño se ciñe a la arquitectura de PCs originales IBM. CMOS – Common Metal Oxide Semiconductor. Chip que sirve de almacenamiento a la configuración de la PC y es alimentado por pila. CMYK – Formato estándar de colores de impresión. Se refiere a los colores cián, magenta, amarillo y negro. COMMAND.COM - Archivo comando del Sistema Operativo MS/DOS que define el entorno y procesa comandos en la PC. Comprensión de datos – Se refiere a la simplificación y control del número de datos en una transmisión.
222
Historia y Evolución de la PC – Jairo Uparella
CONFIG.SYS – Archivo de configuración del Sistema Operativo MS/DOS que permite hacer la carga de dispositivos y definir la configuración de archivos de la PC. Controlador de Software – Denominado también “Driver”, son elementos residentes en memoria que permiten la comunicación entre periféricos y aplicaciones. Controlador de Hardware – Se refiere al chip controlador de tarjetas de interface que permiten la comunicación entre periféricos y la CPU. CPU – Central Processing Unit, Unidad Central de Procesamiento de instrucciones de programas y subrutinas que permite el direccionamiento a memoria bajo ciertos modos de operación. Criterio de Escritura – Modo de operación de las memorias cachés en que la CPU recibe datos actualizados. Chipsets – Conjunto de chips que definen el funcionamiento general de buses e interfaces de la PC, enviando y recibiendo datos de la CPU y otros elementos. Dirección lineal – Modo de operación de la CPU que permite la no segmentación de aplicaciones en memoria. EPA – Environmental Protection Agency – Entidad mundial que controla los efectos de los dispositivos en el ser humano y medio ambiente. Esclavo – Elemento de la PC que ocupa una posición inmediata a un dispositivo de su mismo tipo. Escritura Precompensada - Compensación de bytes escritos en sectores más interiores al disco con respecto a los más externos de diferentes tamaños. Estado de Espera – Término para referirse al tiempo que la CPU debe esperar para que otro elemento como las memorias vuelva a dirigirse a ellas. A mayor número de estados de espera menor será el rendimiento del equipo. 223
Historia y Evolución de la PC – Jairo Uparella
Factor de Interpolación – Salto secuencia que deben hacer las cabezas de lectura de discos duros entre sectores, para evitar la pérdida de datos debido a la velocidad rotacional del disco. Fallo de Protección General – GPF. Error que se presenta cuando un programa de una aplicación excede el espacio estipulado para otro programa. Firmware – Término que se refiere a estructuras de código de medio nivel que involucran procesos de software y hardware. FlashBIOS – Modalidad de memoria ROM programable y modificable de actualización que permite la comunicación entre dispositivos de tecnología Plug & Play. Font – Carácter tipográfico para computación con medida variable. Formato a bajo nivel – Proceso que ordena las divisiones magnéticas de discos para la definición de pistas y sectores. Formato a alto nivel – Proceso realizado por la orden FORMAT.COM del MS/DOS que define la estructura de alojamiento de archivos y directorios en discos. GPF – Véase Fallo de Protección General. Integridad del Sistema – Término que define las características internas y reglas de procedimientos que tienen relación con la funcionalidad de los códigos del sistema y que están dirigidos a procesos como protección a memoria, espacios definidos a aplicaciones y otros. Intercambio Dinámico de Páginas – Proceso de intercambiar páginas o bloques de códigos entre el disco y la memoria. Maquina Virtual – Simulación de una sesión o programa en el modo virtual-86 del 386.
224
Historia y Evolución de la PC – Jairo Uparella
Modo 386-Mejorado – Modo en el cual el 386 puede direccional más memoria que la física disponible e implementar un esquema de multitareas con la memoria virtual. Modo Protegido – Modo de chips CPUs mayores al 286 en el que es posible estipular rangos de memoria extendida a las aplicaciones con cierto grado de protección. Modo Real – Termino que define la forma de operar la CPU para ejecutar programas sin compartir la memoria con otras aplicaciones ni asignándole nuevos espacios donde ejecutarse. Modo Virtual 86 – Modo en el que el 386 es capaz de emular una sesión real bajo el 8086 y programas desarrollados en él. Multiplexado – Forma de transmitir y recibir de una interfaz o estándar en el que se utiliza el mismo bus para direcciones y datos. Multitareas – Forma de operación de la PC en que la CPU es capaz de dirigir y atender un grupo de código de diferentes programas con prioridades o derechos preferentes. Organización de Cachés – Definen los espacios o registros internos de las cachés que serán ocupados por datos de la RAM. Paginación – Término que se refiere al proceso de llevar y traer paquetes o páginas de códigos en un esquema de memoria virtual por demanda. Parágrafos – Cada una de las líneas de 16 bytes en las que se divide cada segmento de memoria en el 8086. Plug & Play – PnP. Tecnología compatible con la arquitectura de Windows 95 que evita la difícil configuración de dispositivos y asignación de recursos como IRQs y direcciones IOs. POSTSCRIPT – Lenguaje de impresora que permite la impresión de elementos gráficos.
225
Historia y Evolución de la PC – Jairo Uparella
Pimer plano – Dícese del lugar donde corre la aplicación o tarea con prioridad más alta. Prioridad – Derecho preferencial de las tareas para que sean ejecutadas en orden. Protección a Memoria – Modo de operación de la CPU en el que se estipulan rangos para que las aplicaciones puedan ejecutarse sin intervenir en espacios asignados a otras aplicaciones. Protocolo – Reglas o normas de comunicación que se utilizan para intercambiar información entre dos interfaces. Rata de transferencia – Término que describe la velocidad con que se transfieren los datos. SETUP – Nombre de programa instalador de aplicación o periférico que también se utiliza para denominar la configuración de un elemento de la PC. Spool – Término para referirse al archivo de impresiones bajo un modelo multitareas, con el fin de que varios archivos en la cola de impresión, puedan ser impresos en forma consecutiva. Tiempo de Trashing – Tiempo que gastan las memorias cachés para transferir o intercambiar datos con la CPU. También se le puede llamar así a la transferencia de páginas entre la memoria Virtual y la memoria Real. Tiempo de Carga – Tiempo que debe esperar la CPU para que la información sea depositada en los chips de la RAM. Tiempo de Acceso – Tiempo que la CPU toma para direccional y obtener o depositar información en los chips de la RAM. Tiempo de Transferencia de Páginas – Véase Tiempo de Trashing. Time Slacing – Tiempo que toma un Sistema Operativo para atender a una interrupción. 226
Historia y Evolución de la PC – Jairo Uparella
Trasnferencia de datos – Véase Rata de Transferencia. UAE – Unrecoverable Application Error – Error Irrecuperable de Aplicación que involucra la integridad del sistema.Véase Integridad del Sistema. UART – Universal Asynchronous Receiver Transmiter – Chip que controla la información vía puerto serial. Unidad Lógica – Término que se utiliza para denominar las unidades de disco que se crean con software. Variable de Entorno – Valores que utilizan las plaicaciones para referirse a una parte específica de la PC sin la necesidad de utilizar o repetir el mismo parámetro. Velocidad Externa – Se refiere a la velocidad que no hace parte de las especificaciones internas de la CPU. Windows 95 – Sistema Operativo para PC cuya arquitectura de 32bits soporta un sistema completo de multitareas a través de un esquema de memoria virtual paginada.
227
Historia y Evolución de la PC – Jairo Uparella
228
Historia y Evolución de la PC – Jairo Uparella
Indice 1-bit, 5, 16, 17 16-bits, 60, 33, 36, 58 20-bits, 23 24-bits, 25 286, 13,14,25,28 32-bits, 58, 60, 61, 69, 74, 96 386, 18, 58, 61, 69, 74, 96 386SPART.PAR, 69 387, 58, 60 486, 11, 18, 74 487, 74 8-bits, 1, 6, 16, 33, 35, 36 80287, 13 8086, 2, 5, 9 8087, 5, 13 8088, 1, 5 9-bits, 17 A20, 61 Acceso a discos de 32-bits, 69 Adaptador VGA, 110 Adaptador Anfitrión SCSI, 160, 161 Adpatadores de Video, 109 Adobe, 121 Ancho de Banda, 109 Archivos Swaps, 61, 69 ARLL, 159 Arquitectura Superescalar, 84 ASCII, 31, 32, 121, 123, 127 Assembler, 19 Atributos, 157 AUTOEXEC.BAT, 98, 164, 171, 185 Autoswitch, 129 Background, 57 Bakelita, 3 Bancos, 17, 64 Batería, 53 BAUDIOS, 178 Bi-Cmos, 82, 84 Bi-tronic, 128, 130 BIOS, 24, 32, 37, 43, 101 Bitmap, 121 Bits de Parada, 182 Bold PS, 122 Buffer, 23, 62, 63, 122 Burbuja, 121, 135
Bus Local, 79 Bus Mezanine, 91 Bus Mastering, 79 Bus de direcciones, 15, 58, 60, 74, 76, 82, 84 Buses, 6, 78 Cabeza de Impresión, 122 Cabeza, 141, 153 Capacidad de discos duros, 153, 158 Capacidad de diskettes, 147 Capacidad Autoswitching, 112 Caracteres Independientes, 124 Carrier Detect, 182 Cartridge, 129 Cascada, 35 CCITT, 182 CD-I, 175 CD-ROM, 169, 170, 173 CD-ROM XA, 175 Cero Slashed, 136 CGA, 23, 24, 109 Ciclo de máquina, 50, 51, 63 Cilindro, 141, 152 Clones, 1 Cluster, 147, 158 CMOS, 35, 51, 52, 152 CMYK, 107, 135 Código de página, 137 Colores, 104 COMMAND.COM, 11, 19, 43, 156 Compresión de datos, 183 Conector Paralelo, 7, 33 Conector Centronics, 6, 122 Conector Serial, 7, 33 Conectores, 53 Conexión a tierra, 195 Conexión a la Impresora, 6 CONFIG.SYS, 52, 98, 164, 171, 185 Control de señales, 129 Controlador de Software, 97, 98 Controlador de Diskette, 6 Controlador de hardware, 97 Convergencia, 113 Coprocesador Matemático, 5, 13, 58, 60 ,74, 76
Historia y Evolución de la PC – Jairo Uparella
Copy & Paste, 118 Corrección de Onda, 197 Corrector de Errores, 183 Courier, 122 CP/M, 12 CPI, 122 CPU, 1, 22, 36, 37, 47, 62, 77 CREATIVE Lab, 170 Criterio de Escritura, 64, 65 CRT, 10, 103 Checkpoints, 55 Chip ROM, 11 Chip de Paridad, 5 Chipsets, 32, 33, 74 Chorro de Tinta, 121, 135 CHS, 164 DAC, 172 DB25, 6 DEBUG, 10, 19, 153, 154 DEGAUSS, 113 Demodulación, 178 Densidad, 142, 158 Descriptor, 69 Desplazamiento, 19, 21, 22 DEVICE, 98, 171 DIP, 1, 5 Dirección Lineal, 69, 70 Dirección, 21 Direccionamiento, 4, 15, 19, 25, 27, 50 Direcciones IO, 38, 40, 47, 50 Directorio Raiz, 156 Disco Duro, 52, 139 Discos, 139 DISK MANAGER, 153 Diskette, 52, 58, 139 Distorsiones, 113 DMA, 32, 35, 36, 37, 40, 50, 79, 171 Dot-Pitch, 107 DPMS, 119 DR/DOS, 12 DRAFT, 122 DRAM, 16, 63 Drive de diskettes, 6 Driver, 44, 45, 50, 62, 66, 97 Drives, 139, 145 DSP, 173 Duplex, 179
EGA, 23, 24, 109 EIDE, 166 EISA, 78, 79 EMS, 18, 19, 24, 32, 52 ENERGY STAR, 119 Entrelazados, 112 EPA, 119 Esclavo, 38 Escritura Precompensada, 153 ESDI, 6, 160 Espacio de línea, 136 Espacio de direcciones, 61 Estado de espera, 50, 63 Estática, 52, 126, 149 Factor de Interpolación, 154 Fallo de protección general, 68 Fase, 196 FAT, 147, 156, 167 Fax/Modem, 177, 183 FDISK, 153 Frimware, 71 FlashBIOS, 77 Font escalable, 131 Font de pantalla e impresora, 131 Fonts, 114, 123, 131, 133 Footprint, 129 FORMAT.COM, 147 Formato a bajo nivel, 153 Formato, 153 Formato a alto nivel, 153 Fósforo P39, 99 Fragmentación, 167 Frecuencia de barrido, 108 Frecuencia horizontal, 108 Fuente de poder, 8 GPF, 68 Hardware, 11, 37 HAYES AT Command Set, 180 HDFORM, 153 Hercules, 99 HIMEM, 61 Hit o acierto, 86 HMA, 61 IBM, 58, 62 Icono, 114 IDE, 164 IEEE 1284, 127 Impresora, 49, 121
Historia y Evolución de la PC – Jairo Uparella
Instrucciones por segundo, 1, 13, 58 Integridad del sistema, 68 Intel, 12, 59, 91 Intensidad, 104 Intercambio Dinámico de Páginas, 67 Interfaces, 2, 99 ISA 6, 32, 33, 170 ISO 9660, 175 ITU, 182 Juego de Caracteres, 137 Jumpers, 53 L2, L1 Cachés, 74 Lands, 174 Laser, 121 LBA, 162, 166 LBX, 84 LED, 53 Ley de Moore, 73 LIFO, 40 LIM, 18 LPT1, 47, 49, 133 LSI, 39 LTD, 25 Maestro, 38, 165 Magnetismo, 150 Mapas de Memoria, 4, 27 Maquinas Virtuales, 68 Máscara de sombra, 103 Master, 165 Matriz de puntos, 121 Máximo direccionamiento, 13, 58, 60, 74, 76, 82, 84 MBR, 155 MCA, 78 MDA, 23, 24, 109 Memoria Real, 68 Memoria Extendida, 18, 66, 69 Memoria Virtual, 61, 62, 68, 69 Memoria Expandida, 18 Memorias Cachés, 61, 63 Memory Refresh 17, 37 MFM, 159 Microsoft, 58, 148 MIDI, 171 MIPs, 2, 13, 58, 74, 96 MODE PIO, 166 MODEM, 173, 177 Modo-386 Mejorado, 61
Modo-Protegido, 18, 62, 63, 66, 67, 70 Modo-Real, 15, 22, 23, 62, 63, 67 Modo-Virtual, 86, 62, 66, 67 Modulación, 178 Monitor, 29, 111 Monitoreo Bidireccional, 128 Motherboard, 2, 3, 8, 10, 14, 33, 47 Mouse, 44, 45, 58, 66 MPC Nivel II, 175 MPC, 170, 175 MPU-401 UART, 171 MS/DOS, 11, 12, 14, 62, 139, 185 MSDOS.SYS, 40, 156 Multimastering, 91 Multiplexado, 91 Multisesión, 175 Multispin, 175, 176 Multitareas, 12, 57, 62, 66, 71, 72 Mylar, 140 Neutro, 196 NiCD, 52 NLQ, 122 NMI, 40 NORTON Utilities, 168 Número de bytes, 141 Nibble, 23 OPC, 130 Organización de Cachés, 64 OS/2, 18 OVERDRIVE, 77 P24T, 83 P54C, 83 P6, 95 P7, 95 Paginación, 61, 70 Páginas por minuto, 129, 130, 136 Paquete de resistores, 163 Parágrafos, 19 Paridad, 5, 16 Parlante, 53 Partición, 155 PCI, 84, 91, 99 PCL, 127 PCL5, 130 PCMC, 84 PDL, 121 Pentium, 11, 18, 82, 83
Historia y Evolución de la PC – Jairo Uparella
Periférico, 35 PGA, 13, 74, 76, 82 PIC, 39 Pico de voltaje, 197 Pictograma, 114 Pipelines, 85 Pistas, 140 Pitch, 122 Pits, 174 Píxeles, 100, 103, 104, 114 PJL, 127 Platos, 152 PLCC, 13 Plug & Play, 96 Polaridad, 126 POST, 55 POSTSCRIPT, 121, 127, 132, 133 Predicción Dinámica de Bifurcación, 84 Prestige, 122 Primer plano, 57 Prioridad, 72 Protección a memoria, 66 Protocolos, 129 Puerto paralelo, 6, 47 Puerto serial, 6, 47 Puertos IO, 47 RAM, 4, 5, 15, 16, 24, 62, 63 RAMDAC, 110 Rata de transferencia, 80, 91 Refresco vertical, 108 Refresh, 110, 111 Registro del sector, 141 Registro, 21 Registro de arranque, 156 Resolución, 101, 107, 109, 114 RGB, 103 Riser, 2 RLL, 159 ROM, 43 ROM-BIOS, 5, 27 Roman, 122 RS-232 C, 7, 122 RS-422A, 127 Ruta de datos, 1 Salidas nominales, 197 San Serif, 122 Scandisk, 148
SCSI Wide, 162 SCSI Fast, 162 SCSI Fast Wide, 127 SEAGATE, 161 Sectores, 140, 153 Secuencia de escape, 123, 124 Segmento, 19, 45 Semiduplex, 179 SETUP, 35, 51, 52 Shadowing, 23, 24, 52 Simas, 15, 16, 17, 129 Simplex, 179 Sincronización Múltiple, 112 Slave, 165 Slot de Expansión, 2, 47, 97 Software, 37 Spin, 14 SRAM, 16, 62, 63 Stack, 40 Subrutina, 37, 45 SuperVGA, 109 Surface Mount, 58, 60 Swapping, 61, 67 Systemboard, 2 TAG, 64 Tamaño de diskette, 142 Tamaño de registro de datos, 13, 58, 60, 74, 76, 82, 84 Tarjeta controladora, 98 Tarjeta MultiIO, 165 Tarjeta de sonido, 169, 170 Tarjeta de expansión, 33 Teclado, 29, 47 Tecnología laser, 126 Tiempo de trashing, 65, 67 Tiempo de carga, 50, 51 Tiempo de acceso, 4, 50, 51 Tiempo de transferencia, 68 Tierra, 196 Tiem Slacing, 40 Toner, 126 Trasnferencia de datos, 61 Transistores, 13, 58, 60, 73, 74, 76, 84 Transmisión, 179 Trinitron, 107 TrueType, 131, 132 TSR, 23, 27
Historia y Evolución de la PC – Jairo Uparella
Twist, 146, 147 UAE, 68 UART, 10, 33, 181 UMA, 58 Unidad de Punto Flotante, 74 Unidad Lógica, Unidades IO, 35 V.34, 183 Variables de entorno, 197 Velocidad externa, 78 Velocidad, 51, 57 VGA, 23, 24, 59, 109 Video, 166 Virus, 23 VL-BUS, 80
Voltaje de entrada, 197 VRAM, 111 WAV, 176 WIN386.SWP, 69 WINA20.386, 61 Windows, 57, 62 Windows 95, 96 WORM, 169 XMS, 19 XON/XOFF, 182 XT, 1, 10, 11, 35, 37 Yugo deflector, 103 ZIF, 84, 111 Zona de aterrizaje, 153
Historia y Evolución de la PC – Jairo Uparella