2.8. Organización de los datos.



2.8. Organización de los datos

      La organización de computadoras se refiere a las unidades funcionales de una computadora (como la unidad central de procesamiento, unidad de memoria y los dispositivos de entrada/salida) y sus interconexiones, que materializan especificaciones arquitectónicas.

     La organización de una computadora y su arquitectura están estrechamente relacionadas; sin embargo, no se deben confundir la arquitectura con la organización, que en algunos casos suele ser usada como un sinónimo de esta última, puesto que la arquitectura se enfoca a la forma de construir las unidades funcionales para que realicen las funciones especificadas por su organización, al igual que su forma de comunicarse e interactuar entre ellas. Un ejemplo de atributos de la arquitectura computacional son el número de bits usados para representar los tipos de datos (números, caracteres, etc.), mecanismos de entrada/salida, entre otros.

Dependiendo de la funcionalidad de computador, son :

·         Computadoras digitales:

    Es aquella que cuenta directamente los números (0 dígitos) que representan numerales, letras y otros símbolos especiales. Son capaces de almacenar diferentes programas por lo que se les puede utilizar en incontables aplicaciones. Una máquina de este tipo puede procesar una nómina, gráficas, comparaciones, etc., por ejemplo IBM.
      Todo lo que hace una computadora digital se basa en una operación: la capacidad de determinar si un conmutador, o ‘puerta’, está abierto o cerrado. Es decir, solo puede reconocer dos estados en cualquiera de sus circuitos microscópicos: abierto o cerrado, alta o baja tensión o, en el caso de números, 0 o 1. Sin embargo, es la velocidad con la cual la computadora realiza este acto tan sencillo lo que lo convierte en una maravilla de la tecnología moderna.

      Las velocidades del ordenador se miden en megahercios (millones de ciclos por segundo), aunque en la actualidad se alcanzan velocidades del orden de los gigahercios (miles de millones de ciclo por segundo). Una computadora con una velocidad de reloj de 1 gigahercio (GHz), velocidad bastante representativa de una microcomputadora, es capaz de ejecutar 1.000 millones de operaciones discretas por segundo, mientras que las supercomputadoras utilizadas en aplicaciones de investigación y de defensa alcanzan velocidades de billones de ciclos por segundo.

     La velocidad y la potencia de cálculo de las computadoras digitales se incrementan aún más por la cantidad de datos manipulados durante cada ciclo. Si un ordenador verifica solo un conmutador cada vez, dicho conmutador puede representar solamente dos comandos o números. Así, ON simbolizaría una operación o un número, mientras que OFF simbolizará otra u otro. Sin embargo, al verificar grupos de conmutadores enlazados como una sola unidad, la computadora aumenta el número de operaciones que puede reconocer en cada ciclo. Por ejemplo, una computadora que verifica dos conmutadores cada vez, puede representar cuatro números (del 0 al 3), o bien ejecutar en cada ciclo una de las cuatro operaciones, una para cada uno de los siguientes modelos de conmutador: OFF-OFF (0), OFF-ON (1), ON-OFF (2) u ON-ON (3). El desarrollo de procesadores capaces de manejar simultáneamente 16, 32 y 64 bits de datos permitió incrementar la velocidad de las computadoras.

·         Computadoras analógicas:
Es un dispositivo electrónico diseñado con el fin de manipular la entrada de datos en términos de por mencionar un ejemplo, niveles de tensión o presiones hidráulicas, en lugar de hacerlo como datos numéricos. Un dispositivo de cálculo analógico más simple es la regla de cálculo, que utiliza longitudes de escalas especialmente calibradas para facilitar la multiplicación, la división y otras funciones. En el clásico ordenador analógico electrónico, las entradas se convierten en tensiones que pueden sumarse o multiplicarse empleando elementos de circuito de diseño especial. Las respuestas se generan continuamente para su visualización o para su conversión en otra forma deseada.
Sin embargo presenta dos grandes desventajas: primero, problemas distintos requieren circuitos eléctricos distintos y es muy fácil que la información pierda integridad. Estas computadoras suelen utilizarse para control industrial en pilotaje automático o en simulación de fenómenos mecánicos. Miden magnitudes físicas que se distribuyen en escala continua como puede ser la temperatura o la presión.

·         Computadoras híbridas


      Son máquinas que combinan las características de las máquinas analógicas y digitales para crear un sistema de cómputo híbrido. Las instalaciones que contienen elementos de ordenadores digitales y analógicos se denominan ordenadores híbridos. Por lo general se utilizan para problemas en los que hay que calcular grandes cantidades de ecuaciones complejas, conocidas como integrales de tiempo. En un ordenador digital también pueden introducirse datos en forma analógica mediante un convertidor analógico digital, y viceversa (convertidor digital a analógico).

Resultado de imagen para arquitectura del computador mapa conceptual

2.8.1. Estructuras  y sistemas de base de datos.

        En ciencias de la computación, una estructura de datos es una forma particular de organizar datos en una computadora para que pueda ser utilizado de manera eficiente. Diferentes tipos de estructuras de datos son adecuados para diferentes tipos de aplicaciones, y algunos son altamente especializados para tareas específicas.Las estructuras de datos son un medio para manejar grandes cantidades de datos de manera eficiente para usos tales como grandes bases de datos y servicios de indización de Internet. Por lo general, las estructuras de datos eficientes son clave para diseñar algoritmos eficientes. Algunos métodos formales de diseño y lenguajes de programación destacan las estructuras de datos, en lugar de los algoritmos, como el factor clave de organización en el diseño de software. Las estructuras de datos se basan generalmente en la capacidad de un ordenador para recuperar y almacenar datos en cualquier lugar de su memoria.

1.      Existen numerosos tipos de estructuras de datos, generalmente construidas sobre otras más simples:

2.      Un vector es una serie de elementos en un orden específico, por lo general todos del mismo tipo (si bien los elementos pueden ser de casi cualquier tipo). Se accede a los elementos utilizando un entero como índice para especificar el elemento que se requiere. Las implementaciones típicas asignan palabras de memoria contiguas a los elementos de los arreglos (aunque no siempre es el caso). Los arreglos pueden cambiar de tamaño o tener una longitud fija.

3.      Un vector asociativo (también llamado diccionario o mapa ) es una variante más flexible que una matriz, en la que se puede añadir y eliminar libremente pares nombre-valor. Una tabla de hash es una implementación usual de un arreglo asociativo.

4.      Un registro (también llamado tupla o estructura) es una estructura de datos agregados. Un registro es un valor que contiene otros valores, típicamente en un número fijo y la secuencia y por lo general un índice por nombres. Los elementos de los registros generalmente son llamados campos.

5.      Una unión es una estructura de datos que especifica cuál de una serie de tipos de datos permitidos podrá ser almacenada en sus instancias, por ejemplo flotante o entero largo. En contraste con un registro, que se podría definir para contener un flotante y un entero largo, en una unión, sólo hay un valor a la vez. Se asigna suficiente espacio para contener el tipo de datos de cualquiera de los miembros.

6.      Un tipo variante (también llamado registro variante o unión discriminada) contiene un campo adicional que indica su tipo actual.

7.      Un conjunto es un tipo de datos abstracto que puede almacenar valores específicos, sin orden particular y sin valores duplicados.

8.      Un Multiconjunto es un tipo de datos abstracto que puede almacenar valores específicos, sin orden particular. A diferencia de los conjuntos, los multicunjuntos admiten repeticiones.

9.      Un grafo es una estructura de datos conectada compuesta por nodos. Cada nodo contiene un valor y una o más referencias a otros nodos. Los grafos pueden utilizarse para representar redes, dado que los nodos pueden referenciarse entre ellos. Las conexiones entre nodos pueden tener dirección, es decir un nodo de partida y uno de llegada.

10.  Un árbol es un caso particular de grafo dirigido en el que no se admiten ciclos y existe un camino desde un nodo llamado raíz hasta cada uno de los otros nodos. Una colección de árboles es llamada un bosque.

11.  Una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases se utilizan como representación abstracta de conceptos, incluyen campos como los registros y operaciones que pueden consultar el valor de los campos o cambiar sus valores.


·         Soporte en los lenguajes


     La mayoría de los lenguajes ensambladores y algunos lenguajes de bajo nivel, tales como BCPL, carecen de soporte de estructuras de datos. En cambio, muchos lenguajes de alto nivel y algunos lenguajes ensambladores de alto nivel, tales como MASM, tienen algún tipo de soporte incorporado para ciertas estructuras de datos, tales como los registros y arreglos. Por ejemplo, los lenguajes C y Pascal soportan estructuras y registros, respectivamente, además de arreglos y matrices multidimensionales. La mayoría de los lenguajes de programación disponen de algún tipo de biblioteca o mecanismo que el uso de estructuras de datos en los programas. Los lenguajes modernos por lo general vienen con bibliotecas estándar que implementan las estructuras de datos más comunes. Ejemplos de ello son la biblioteca Standard Template Library de C++, las colecciones de Java3​ y las librerías .NET de Microsoft.

·         Estructuras de datos en programación

       En programación, una estructura de datos puede ser declarada inicialmente escribiendo una palabra reservada, luego un identificador para la estructura y un nombre para cada uno de sus miembros, sin olvidar los tipos de datos que estos representan. Generalmente, cada miembro se separa con algún tipo de operador, carácter o palabra reservada. En el lenguaje de programación Pascal, es posible crear una estructura de datos de la forma mencionada. La sintaxis básica es:

 Estruct Identificador, _
              Miembro1:TipoDeDato, _
              Miembro2:TipoDeDato, _
              ...
              Miembro9:TipoDeDato

        Para acceder a los miembros de una estructura, primero se debe crear una referencia a esta, generalmente con una variable de tipo; luego se pueden editar y obtener los datos de los miembros libremente.

 Estruc Estructura,Miembro1:Entero,Miembro2:Cadena,Miembro3:Byte
File:Hash table es.svg 
 Var Variable:Estructura
 Variable.Miembro1 = 40000
 Variable.Miembro2 = "Hola Mundo"
 Variable.Miembro3 = 255
 Mensaje(Variable.Miembro2) ' Muestra "Hola Mundo"

     Los sistemas informáticos pueden clasificarse con base a numerosos criterios. Las clasificaciones no son estancas y es común encontrar sistemas híbridos que no encajen en una única categoría. Por su uso: sistemas de uso específico y sistemas de uso general.

Por el paralelismo de los procesadores

ü  MIMD, Multiple Instruction Multiple Data.
ü  SIMD, Single Instruction Multiple Data.
ü  SISD, Single Instruction Single Data.
ü  Por el tipo de computadora utilizado en el sistema
ü  Estaciones de trabajo (workstations).
ü  Macrocomputadoras (servidores de gran capacidad).
ü  Minicomputadoras (por ejemplo, computadoras personales).
ü  Microcomputadoras (servidores pequeños).
ü  Supercomputadoras.
ü  Terminales ligeros (thin clients).

Por la arquitectura

ü  Arquitectura cliente-servidor.
ü  Arquitectura de 3 capas.
ü  Arquitectura de 4 capas.
ü  Arquitectura de n capas.
ü  Monitor de teleproceso o servidor de transacciones.
ü  Servidor de aplicaciones.

ü  Sistema aislado.


Estructura:

     Los sistemas informáticos suelen estructurarse en subsistemas:
ü  Subsistema físico: asociado al hardware. Incluye entre otros elementos: CPU, memoria principal, placa base, periféricos de entrada y salida, etc.
ü   
ü  Subsistema lógico: asociado al software y la arquitectura; incluye, sistema operativo, firmware, aplicaciones y bases de datos.


Referencias:
https://es.wikipedia.org/wiki/Organizaci%C3%B3n_de_computadoras
http://www.monografias.com/trabajos102/organizacion-del-computador/organizacion-del-computador.shtml
http://www.engendros.galeon.com/U1T5.htm
https://es.wikipedia.org/wiki/Estructura_de_datos
https://es.wikipedia.org/wiki/Sistema_inform%C3%A1tico#Desarrollo

Página Principal

Comentarios