jueves, 14 de octubre de 2010

viejas notas desde msn1 Procesadores

Memoria, procesadores y programas

La memoria digital, los datos y los programas.
.
Vimos, cuando hablamos del mundo digital, que los programas interpretan los datos que entran a la computadora y los transforman. Un ejemplo: Un byte admite 256 (=2 ** 8) configuraciones distintas comenzando desde 00000000 hasta 11111111. Si por norma le hago corresponder a cada letra y signo de un alfabeto una de esas configuraciones entonces a una frase se la representa por una sucesión de bytes representando letras y signos, incluidos los espacios. Un programa es el encargado de hacer la conversión (de frase a binario y viceversa) de acuerdo a una norma o tabla de conversión. Entonces una función muy importante de los programas es interpretar los datos. Pero es mucho más que eso. Por ejemplo, mediante un programa se puede cambiar o agregar palabras a la frase, y todo ese proceso lo realiza mientras la información está digitalizada. Entonces los programas interpretan las normas y pueden modificar la información en su estado digital.
.
La memoria RAM.
.
La memoria RAM de una PC común suele ser ahora de 128 o 256 mega bytes. Allí están los files que son sucesiones de ceros y unos que representan datos o programas. El programa es una sucesión de órdenes al procesador para que opere con esos datos. Hace operaciones lógicas y matemáticas, y muchas otras funciones, como cambiar de ubicación en la RAM de algunos bytes. Es claro que tiene que existir una correspondencia exacta entre los datos, y su ubicación en la memoria RAM para que el programa pueda referirse a ellos y es por eso que cada byte de la memoria tiene una dirección única asociada. Por ejemplo, si la RAM es de 128 M. tendrá 2 ** 27 bytes o direcciones diferentes, desde 0 hasta 2**27 -1. Se habla del mapa de memoria para referirse a la distinta funcionalidad de diversas áreas de memoria.
.
Los procesadores.
.
Todos los programas cuando están en memoria RAM son una sucesión muy larga de ceros y unos. De manera tal que si uno ve una memoria RAM, sólo ve ceros y unos y las personas no podemos distinguir si es programa o si es un dato. El procesador, por ejemplo un pentium u otro cualquiera es el que hace las operaciones correctas comandado por los programas. Al iniciar el funcionamiento de la PC existe un mecanismo electrónico para indicarle al procesador el primer programa para que controle la máquina. Cuando termine de realizar su función le pasa el control a otro programa y así sucesivamente hasta que se apague. Por algún error puede indicársele mal y el procesador trate de interpretar lo que son datos como si fuera programa y la máquina se “cuelga”. Otro error es que algún dato se meta dentro de un programa destruyéndolo. Si uno viera la RAM en una enorme pantalla, los ceros como puntos blancos y los unos como puntos negros, parecería un caos total, y sin embargo no es así. Es una armonía perfecta que se mantienen indefinidamente cambiando los valores de 0 y 1 pero siempre bajo control.
.

Los usuarios y los especialistas

.
Al usuario común sólo le interesan determinadas cosas como por ejemplo ver una foto en la pantalla, o poder mandar un mail. Para que eso sea factible fácilmente la computadora debe tener mecanismos sumamente complejos de hardware (la electrónica y electromecánica) y de software (la programación) funcionando a la perfección. Hay muchísima gente que ha trabajado en eso y han hecho buenos negocios pues luego se aplican a cientos de millones de computadoras. Es como todo. Pero es bueno que tengamos alguna idea de esa realidad para que las cosas no sean un misterio absoluto. Todo esto que digo tiene una doble finalidad: por un lado es una presentación del tema para todos los curioso, y por otro lado es una introducción de una manera de ver las cosas para luego discutir temas de especialistas, entre especialistas. De cualquier forma me gustaría que me muestren los errores o lo que no se entiende. conserje@hotmail.com Horacio.
07:50 a.m. | Agregar un comentario | Vínculo permanente | Agregar al blog | Informática e Internet
11 octubre

El mundo digital

Mi idea con esta nota es introducir a las personas con pocos conocimientos de computación en el tema incluyendo a Internet. Creo que les será útil a todos. Pero también esto sirve de introducción a los especialistas en el tema para aunar criterios y tener una visión panorámica del tema para luego analizar nuevos criterios generales, incluyendo Sistemas Operativos y lenguajes de programación. Solicito a quien lea esto que se ponga en contacto conmigo por sugerencias, comentarios, aclaraciones o cualquier otra cosa. Publicaré na serie de notas. conserje@hotmail.com Horacio.
.
Debido a que la tecnología computacional ha adoptado el sistema binario de escritura de información con unos y ceros tenemos que arreglarnos para escribir o representar absolutamente todo lo que queramos manejar valiéndonos de sucesiones de esos valores. Todo dato o información requiere una cantidad de bits para representarla. La mínima cantidad de información es un bit que se usa para objetos que admiten solo dos estados como las variables lógicas. Una sucesión de 8 bits puede ser la representación ve muchos objetos diferentes. Entonces una sucesión de una cantidad de N bits cobra sentido cuando existe una norma o protocolo que lo hace corresponder con algún objeto del mundo real.
.
La información:
.
Se usa el byte u octeto como la unidad con la que se mide la cantidad de información. En esta nueva tecnología es indispensable la precisión absoluta porque las máquinas no toleran los menores errores. Por ese motivo es necesario hacer convenciones, normas y protocolos para entender de que estamos hablando. Cuando se habla de 1 Mega debemos entender exactamente 2 ** 20. Donde ** significa elevado a. Es una suerte que 2** 10= 1024 ,casi mil, y que 2** 20= 1 Mega, poco mas de un millón. Y 2 ** 30 es un Giga aprox 10 ** 9. Por usar la base 2 resultó muy importante el uso de las potencias de 2. Los archivos o files consisten en una sucesión de Bytes, y la cantidad de los mismos se le suele decir “peso” y es el espacio que ocupan en memoria.
.
Un file puede ser un texto, una foto, un sonido, un cuadro sinóptico, una pieza musical, un dibujo o cualquier otra cosa. Y en todos los casos es una sucesión muy larga de ceros y unos, Sólo tienen sentido mediante códigos, normas y protocolos. Las computadoras construyen e interpretan a los files. Los humanos programamos las computadoras para que entiendan las letras y números leyéndolos de un teclado, y luego ellas nos escriben en un printer.
.
Veamos por ejemplo una pieza musical. Las ondas sonoras son captadas por un micrófono y convertidas en ondas eléctricas. Hay muchas maneras de convertir esas ondas eléctricas en información digital, con diferentes propiedades y calidad. Cada una de esas formas tiene una especificación, una norma que se usa cuando se la almacena digitalmente y luego cuando se a reproduce de digital hasta los parlantes. Entonces tenemos:
La info base, en este caso la música
Electrónica que toma la info analógica y la convierte en digital (Hard)
La info analógica es una mezcla de frecuencias y ampitudes
Una norma o protocolo o formato que especifica la conversión.

Hay muchas normas, cada una tiene su nombre.

Un programa (soft) que da el formato digital especificado por la norma.
Un almacenamiento para guardar la música digitalizada.
Otro soft que convierte en sentido contrario (de digital a analógica).
Un hard que complementa al soft y reproduce el sonido en parlantes.
.
¿Qué ventajas tenemos al digitalizar la información?
.
El proceso es similar cualquiera sea la información que digitalicemos. Uno se puede preguntar porqué damos tantas vueltas si antes podíamos hacer casi lo mismo dejando la información como estaba. Nosotros hacíamos todo el proceso y no pasábamos por lo digital. Para la música por ejemplo, usábamos un disco donde grabábamos el sonido y luego lo reproducíamos tal cual.
Bueno, la gran mayoría de las personas creo que comprende la gran ventaja de la tecnología moderna: 1) en la digitalización no se pierde información, o bien se puede controlar bien la precisión de acuerdo a los requerimientos. 2) la información se puede guardar con gran seguridad por tiempo prácticamente ilimitado, 3) en medio del proceso, cuando la información es digital, está bajo el dominio de la computadora y es allí donde podemos hacer casi magia con los datos, muchas veces crearlos desde la nada. El manejo computacional de los datos constituye la segunda gran revolución tecnológica de la humanidad
.
La norma, especificación, protocolo o formato.
.
Pero el baile recién comienza y ya se hacen maravillas. Con problemas claro, debido al extremadamente acelerado crecimiento de la nueva criatura. Así como hablamos del sonido también podemos hablar de digitalizar texto. Se hicieron infinidad de programas diferentes, y cada fabricante del programa con su propia norma. Veamos resumidamente el proceso:
Nosotros escribimos en el teclado ayudados por el mouse.
La pantalla nos muestra lo escrito y nos ayuda a correcciones y mejoras.
Se almacena en la PC y podemos guardarlo, corregirlo o imprimirlo.
Es genial, impresionante respecto a la escritura con una vieja máquina de escribir. El problema es la compatibilidad, porque un texto escrito con un programa no es entendido por otro programa. Eso dentro de una misma máquina. Pero además los diferentes fabricantes de procesadores como Intel y Motorola tienen procesadores distintos e incompatibles. Existen muchos procesadores diferentes, y muchas veces ni existe compatibilidad entre los modelos de un mismo fabricante. Lo anterior significa que un mismo texto puede tener muy diferentes representaciones digitales: Hay una cantidad muy grande de normas y por lo tanto incompatibilidad.
.
¿Tiene solución la incompatibilidad?
.
La incompatibilidad es posiblemente la mayor fuente de problemas, frustraciones y misterios de esta tecnología. Y tiene soluciones costosas.
La dificultad principal es la guerra de intereses de las empresas de hard y soft por ganar mercados. Pero los estándares que fijan las normas se van imponiendo de a poco. Mientras tanto pensemos lo siguiente: Un texto cambia de formato aún dentro de una misma máquina y un mismo programa que lo maneja. Este texto yo lo escribo y entra algo a la PC que va formando el file digital, a partir de allí se transforma para ir a la pantalla, también se transforma para guardarlo en el disco, y para imprimirlo en el printer, porque en todos los casos tiene que respetar las normas de cada dispositivo. Es importante notar que a pesar de todos los cambios de formato la información se mantiene fielmente.
.
La información es la misma independiente del formato y de las máquinas, de los procesadores, de los sistemas operativos. La sucesión de bits que contienen esa información pueden ser muy diferente y son los programas los que pasan de una a otra forma, programando las normas. Si la información del texto está contenida cualquiera sea el formato, siempre puede hacerse un programa que pase de un formato cualquiera a otro. Un ejemplo sencillo: el número 14 o cualquier otro puede expresarse en varios formatos cuya representación digital o binaria es muy diferente, pero sabiendo en cual está representado siempre un programa puede pasarlo a otra representación. Lo mismo sucede con un texto o con cualquier otra información, por ejemplo la música.
.
Pero el cambio de formato puede ser complicado.
.
Supongamos que haya 100 formatos de texto (hay muchos más). Para convertir los formatos necesitaríamos 100x100 = 10.000 programas diferentes, lo que implica un esfuerzo enorme de programación. Y costos enormes. Hay una coartada que consiste en definir un formato comodín y hacer una doble traducción. Entonces en lugar de 10.000 programas traductores necesitamos sólo 200. El comodín debe ser un formato o norma muy bien pensado. Este criterio que se aplica a muchos tipos de información es fundamental para mi proyecto.

No hay comentarios:

Publicar un comentario