Está en la página 1de 12

B2 T2 Periféricos

Ficha 1
Periféricos

Este tema tiene dos dimensiones importantes a conocer, por un lado tenemos que conocer las
novedades de las tecnologías que veremos en el tema como por ejemplo versiones del Thunderbolt, de
USB y sus conectores, conexiones NVME Vs SATA y ese tipo de cosas y por otro lado debemos entender
cómo funcionan las cosas porque a veces nos obsesionamos mucho con los datos (acrónimos,
velocidades y datos Ad-Hoc varios) y dejamos de lado la parte conceptual y de repente no sabemos el
concepto de un Chipset o de una memoria Caché o en general para que valen las cosas.

Esta primera parte asienta las bases conceptuales de los periféricos y su relación con el resto de la
computadora y en concreto con la CPU.

Pensemos en un dispositivo concreto, por ejemplo, un teclado. Este dispositivo se conecta a través de
una interface. En hardware una interface son aquellas reglas físicas y lógicas que le dan forma, por
ejemplo, un puerto serie, uno paralelo, IDE, SATA, PCI, etc. La interface es un conjunto de todo y no de
un determinado conector ya que puede existir un interfaz que tenga conectores múltiples y no siempre
el mismo.

Google: Interface: “Dispositivo capaz de transformar señales generadas por un aparato en señales
comprensibles por otro”.

Así que un dispositivo conectado a través de esa interface se conecta a un determinado “ controlador”
que para el teclado es el 8042. En este caso el controlador es el chip que está especializado en atender a
este dispositivo. En concreto este chip (el 8042) está especializado para entender la lógica del teclado,
por eso tiene unos registros de: control, de estado y de datos. Es algo físico así que cuando pulsamos
una tecla se transmite a través de la interface por ese conector y con una serie de reglas en el registro
de “control” se indicará que se ha pulsado una tecla, en el de “estado” que se ha liberado y en el de
“datos” el código de la tecla, por ejemplo.

¿Pero dónde está ese controlador (como parte física del hardware)? En la placa base, por ejemplo, en
este caso concreto del teclado en el "Chipset Sur". El chipset (norte y sur) es un circuito auxiliar que se
encarga de gobernar algunos dispositivos, el teclado está en el Chipset Sur porque ya dijimos que es un
dispositivo lento. A veces sobre todo en placas más antiguas este controlador podíamos encontrarlo
directamente en la placa con un chip independiente.

Ahora bien, una parte física no podrá funcionar sin un software que haga que la información fluya de
alguna manera, es decir que cause alguna acción cuando pulsamos por ejemplo alguna tecla ya que de
otra manera la información se quedaría en el controlador. Esa parte del software es el " driver" del
dispositivo que sería el programa especializado en manipular la información que está dentro del
controlador que tenemos asociado, por ejemplo, los drivers del teclado, del HDD, etc. Este software está
por encima del controlador físico. Pero no todo puede ser software, sino que siempre tiene que haber
un controlador que sirve para atender la parte física del dispositivo.

Para el examen el controlador sería la parte física y el driver sería la parte lógica.

Existe una conexión del controlador del dispositivo con otro chip que se llama "PIC (controlador
programado de interrupciones)". El PIC lo que hace es “interrumpir” a la CPU.
P á g i n a 1 | 12
B2 T2 Periféricos
La relación del controlador con la CPU, es decir, ¿cómo le dice el controlador a la CPU que tiene que
hacer algo? ¿qué ha ocurrido una cosa y que debe ser atendida? (por ejemplo, que hemos pulsado una
tecla), el mecanismo básico que se implementa en las CPUs para poder hacer eso se llama
"interrupciones" y llegan a la CPU a través del PIC que tiene unas patitas que se llaman "IRQs (interrup
request)”. Estas IRQs se pueden poner en stack, es decir, se pueden enlazar unos chips con otros si
tenemos muchos dispositivos.

Estás IRQs le comunican a la CPU que necesita atender una interrupción como por ejemplo que hemos
pulsado una tecla.

El proceso seria: pulsamos una tecla  controlador de dispositivo  PIC  CPU.

Google: Controlador programable de interrupciones: Intel 8259 (aquí podemos ver que el controlador
8042 del teclado está conectado a través del IRQ1: “IRQ1 - Intel 8042 teclado controlador”)
https://es.wikipedia.org/wiki/Intel_8259

Lo que está haciendo la CPU está reflejado en el "CP (counter program)" que es un registro que apunta
a las instrucciones que se quieren ir ejecutando. El CP indica la dirección de memoria de la siguiente
instrucción a ejecutar.

Pensemos entonces que la CPU está ocupada ejecutando una rutina y de repente se pulsa una tecla. En
ese momento la CPU debe interrumpir su trabajo para atender a ese evento que ha ocurrido. La CPU no
tiene por sí misma la lógica de saber qué hacer con esa interrupción así que el PIC a través de una
“salida de solicitud de interrupción” llamada "INTR" le va a comunicar a la CPU que se ha producido
una interrupción de hardware. En ese momento la CPU para atender a esa solicitud, lo primero que hace
es reconocer la interrupción a través de una “línea de reconocimiento de interrupción” llamada “INTA”.

El PIC está programado con una tabla interna que sabe cuál es y donde está la rutina que sirve para
tratar la IRQ_1. EL PIC lo que va a hacer es sacar por unas determinadas líneas de datos (en el mismo
chip d0...d7) la dirección donde está localizada las instrucciones de esa rutina y la CPU las localizara a
través de los "vectores de interrupciones” (en este caso el 09H).

Cuando la CPU recibe a través de la línea INTR una interrupción, tiene que cambiar el CP y reorganizar
las instrucciones. No obstante, la CPU no sabe cuál es la dirección de la rutina a ejecutar, pero si el chip
así que éste le va a informar el vector correspondiente ejemplo: 09h

El PIC está informando a la CPU que existe una tabla en las primeras posiciones de la memoria que ha
sido cargada al arrancar la máquina a través de la BIOS. No tiene nada que ver con el SO, es un software
anterior a éste utilizado para poder gobernar la máquina, no obstante, luego se completara esta tabla de
rutinas con más cosas.

Así pues, existe una tabla de rutinas que se llama "tabla de vectores de interrupciones" que es una zona
reservada en la memoria, al principio de esta, que contiene direcciones, es una tabla de punteros a
rutinas de la BIOS que ya están cargadas en la memoria. Por ejemplo, esta dirección es la dirección de la
rutina de atención al teclado, esta otra de la atención a lo que sea, etc. Es un código que atiende a la
interrupción hardware número X. A esas rutinas se les llaman "ISR (interrupt service routine)", esta ISR
es con lo que llamamos al driver de la memoria, es la rutina de atención a la interrupción.

P á g i n a 2 | 12
B2 T2 Periféricos
wiki: ISR routine/interrupt handler: ISR Interrupt service routine
https://en.wikipedia.org/wiki/Interrupt_handler

Una rutina de servicio de interrupción (ISR) es una rutina de software que el hardware invoca en
respuesta a una interrupción. ISR examina una interrupción y determina cómo manejarla, ejecuta el
manejo y luego devuelve un valor de interrupción lógico. Si no se requiere más manejo, el ISR notifica al
Kernel con un valor de retorno.

wiki: interrupt vector table https://en.wikipedia.org/wiki/Interrupt_vector_table

Esta tabla de vectores tiene toda la información necesaria para poder cambiar el CP (Counter Program)
de la CPU y poder ejecutar la instrucción dada por el PIC. Dado que la CPU no sabe qué hacer con esa
instrucción, se va a ir a la tabla en busca de la dirección del vector de interrupciones que tiene asociado
para la IRQ1. Es decir, se tiene que ir a la dirección X de la tabla donde está la posición 09h por ejemplo
que es donde está la dirección del driver del dispositivo del teclado. Le va a dar paso cambiando el CP
para que en lugar de ejecutar la rutina que se tenía programada cambie el orden por esta que se acaba
de añadir (interrumpir) con la ISR guardando todo para continuar después.

Esto le va a servir al CP para poner la dirección de esa ISR y la dirección de esa rutina hará lo que tenga
que hacer con los registros que sean necesarios en el controlador del dispositivo, teclado en nuestro
ejemplo, manipular este registro, leer este dato, el estado en que se encuentra dependiendo de la lógica
de cada dispositivo, leer cualquier estado de esos registros u obrar en consecuencia como por ejemplo
mandarlo a la pantalla o lo que sea que tiene que hacer esa rutina.

Una vez terminada de ejecutarse esa rutina de la ISR a la que la CPU ha saltado, volveremos, con los
datos que se han guardado en la pila de la CPU, a restaurar el contenido de ejecución en el que estaba
antes de que fuera interrumpida.

Por la parte del software es lo mismo ya que existen unas instrucciones a bajo nivel, por ejemplo,
INT21H o INT80H que invocan a una llamada al sistema del Kernel del SO. Si hacemos INT21H estamos
invocando una llamada al sistema operativo en MS-DOS mientras que si hacemos y INT80H es una
“system call” de Linux. Si yo hago una interrupción 80h a la memoria, al vector de interrupciones 80h
que tiene esa rutina que ha sido registrada por el SO al arrancar, esta rutina tendrá por ejemplo un
switch "if=registro AX1=1 llamar a un “Subsystem” que sabe abrir un fichero y si le hemos puesto la AX2
que es =0 hará otra cosa.

El 80h y el 21h es la única parte de acceso al Kernel del SO a través de la entrada de la System Calls
distribuidas y repartirá el curro entre los distintos procesos demandados. El tratamiento de la
instrucción es el mismo, pero no pasamos por el PIC, y hace que la CPU se detenga directamente, pare el
contexto de ejecución en el que se encontraba el “CP” y se desplace a donde se tenga que desplazar, en
estos casos a los vectores 80h y 21h.

El envío y recepción de datos entre la CPU y un dispositivo a priori, en nuestro ejemplo al pulsar una
tecla, es un método muy sencillo, pero existen algunas instrucciones más que habrán de ser estudiadas.

Existen dos relaciones más entre la CPU y los dispositivos, la primera es la sincronización entre ellos que
puede ser por:

P á g i n a 3 | 12
B2 T2 Periféricos
1. Pulling, con este método se está consultando todo el tiempo si hay cambios en el contador del
dispositivo para hacer lo que se tenga que hacer. Consume mucho tiempo en ciclos de la CPU y
se llama "bucles de espera activa". Mientras que el dispositivo no diga nada es tiempo perdido
haciendo comprobaciones para ver si hay alguna tarea que realizar. Por ejemplo: El móvil me
avisa cuando recibo un WhatsApp o soy yo de manera manual el que lo consulta todo el tiempo.
2. Por interrupciones, es el modelo en el que el sistema me avisa de que tengo una tarea. En el
ejemplo del WhatsApp de antes es cuando el terminal me pita al recibir un mensaje. El
dispositivo me está avisando de oficio que tengo que lanzar la rutina de atención a esa
interrupción.
3. Por DMA (direct memory Access), que sería el acceso directo a la memoria, sin pasar por la CPU.
Es utilizada para dispositivos que manejan mucha información y que de otra manera estarían
todo el rato molestando a la CPU lo cual ralentizaría mucho el sistema. Para esto utilizaremos
una técnica para indicarle a la CPU que vamos a iniciar una transacción de información entre el
dispositivo para no tener que pasar todo el rato por la CPU. Se establece una especie de ciclo de
transacciones DMA en el que vamos a transferir datos aquí y allá y desde este dispositivo a otro
y así no tener que molestar a la CPU. Esta tarea se realiza directamente por DMA.

Revisar: DMA Vs UltraDMA

DMA. Todo esto no sirve para eliminar todas las interrupciones que no van a aportar valor cuando lo
hacemos contra la CPU y de esta manera vamos a molestarla una sola vez y en cuanto iniciamos la
transferencia de datos ya no la molestaremos más, sino que vamos a transferir los datos directamente
entre el disco duro y la memoria, por ejemplo.

El acceso directo a memoria (DMA, del inglés Direct Memory Access) permite a cierto tipo de
componentes de una computadora acceder a la memoria del sistema para leer o escribir
independientemente de la unidad central de procesamiento (CPU). Muchos sistemas hardware utilizan
DMA, incluyendo controladores de unidades de disco, tarjetas gráficas y tarjetas de sonido. DMA es una
característica esencial en todos los ordenadores modernos, ya que permite a dispositivos de diferentes
velocidades comunicarse sin someter a la CPU a una carga masiva de interrupciones.

UDMA es una tecnología más avanzada y que provee unas transferencias mucho más rápidas

La segunda relación entre la CPU y los dispositivos para poder gobernar todos esos registros seria
mediante transferencia y se haría a través de instrucciones de tipo “in/out” más el número de puerto al
que está asociado el dispositivo. Las instrucciones in/out nos van a servir para poder gobernar los
registros del controlador asociado a cada dispositivo tanto para enviarle información como para recibirla
de ellos.

¿Cómo podemos mandar la información a un dispositivo de salida? A la dirección de memoria de


entrada podemos especificarle que se refiera a la memoria principal o que se refiera a un dispositivo. En
este caso en lugar de la dirección de memoria se indicará el número del puerto del dispositivo (ojo NO
confundir con los puertos TCP). El número del puerto es el que identifica al dispositivo y si yo me quiero
referir por ejemplo al puerto de la impresora (LPT) pues habría que indicarle la información
correspondiente.

P á g i n a 4 | 12
B2 T2 Periféricos
En el caso del teclado, este tiene 2 números de puerto: 64h para poder leer el status o mandar
comandos y el 60h que es la tecla que hemos pulsado.

Cuando la CPU es interrumpida de lo que estaba haciendo, se guardan en una pila las cosas para poder
recuperar el control más tarde.

Cuando un dispositivo interrumpe a la CPU debemos ser capaces bien de leer o bien de enviarle cosas.
Lo primero a tener en cuenta será el mecanismo de cómo nos vamos a sincronizar (por ejemplo, por
envío o recepción de datos entre la CPU y un dispositivo) y lo segundo será fase de transferencia. Por
ejemplo, primero el teclado interrumpe (por interrupciones) a la CPU y segundo a través de la INTR voy
a poder leer esa tecla que ha hecho que se interrumpa. Las propiedades de cada interrupción se
establecen dentro del PIC, incluso se podrían enmascarar, pero a priori en el PIC es donde se prioriza
todo esto.

¿Los números de puertos de los dispositivos estarían definidos?

La RAM se carga al inicio y es poblada con las direcciones de la ISR. Lo que se guarda en la BIOS son los
parámetros de configuración de algunas cosas. por ejemplo, el orden de arranque, es decir es pura
parametrización y luego las rutinas que están en el chip se cargan en la memoria. Podríamos decir que
son cosas totalmente diferentes y que en una hay datos y en la otra funciones.

La “IVT (Interruption Vector Table)” es la parte de la RAM que tiene todas esas direcciones. La tabla de
vectores está en la RAM en esas primeras posiciones.

Wiki: Acceso directo a memoria (DMA) https://es.wikipedia.org/wiki/Acceso_directo_a_memoria

Los vectores de interrupción son las direcciones de memoria dónde están las rutinas que ejecuta la CPU.

!! Ojo ¡¡ que nos suene el chip “Intel 8259” porque es una pieza importante dentro de la estructura del
hardware.

Ficha 2
Ahora ya nos vamos a dispositivos concretos

Ópticos: nos interesan los formatos del sistema de ficheros que se manejan: ISO9660 (CD_ROM) y
“UDF” (DVD). Existen algunas extensiones para que por ejemplo el formato ISO cuyo sistema de ficheros
no soportaba nombres largos pueda hacerlo. Para esto en concreto añadimos una extensión llamada
"Joilet" que los soporta, hay otra para poder arrancar desde el CD llamada "el torito".

Wiki: Joliet https://es.wikipedia.org/wiki/Joliet_(inform%C3%A1tica)

Wiki: Universal Disk Format (UDF) https://es.wikipedia.org/wiki/Universal_Disk_Format

Estas cosas están muy obsoletas, pero no está de más conocerlo por si vemos algo reseñable.

Con respecto a los discos duros tenemos que conocer las interfaces además de la propia arquitectura de
estos que viene determinada por ejemplo por: los cilindros (que son el conjunto de pistas que están en
el mismo vertical (por ejemplo, la pistan Nº x que existe en cada plato) y pistas y que cada pista se divide
en sectores (que es la información mínima que manejamos) y los Clúster que son la agrupación de varios
sectores.

P á g i n a 5 | 12
B2 T2 Periféricos
Google: HDs cilindros ==> imágenes: sectores, pistas, cilindros y clúster (2bis)

Aquí la información es magnética mientras que en los discos ópticos es grabada con láser.

Si yo lo que quiero es mandarle al controlador de un HD la instrucción "léeme el sector número X"


tendré que indicarle toda la geometría en 3D de la ubicación de ese sector, es decir, cilindro, pista y
sector. Pero así, el direccionamiento es algo complejo por lo que cuando un SO quiere tratar con un HD
lo suyo es que este la transmita esa posición de forma lineal, como si los sectores estuvieran ordenados
por números del 0 a un millón, por ejemplo. Así el HDD debería conocer las coordenadas internamente
con referencia a este método lineal. Este método de direccionamiento es lo que se llama "LBA (Logic
Block Address)".

wiki: Direccionamiento de bloque lógico https://en.wikipedia.org/wiki/Logical_block_addressing

El direccionamiento de bloques lógicos (LBA) es un esquema común que se utiliza para especificar la
ubicación de los bloques de datos almacenados en dispositivos de almacenamiento de computadora,
generalmente sistemas de almacenamiento secundario, como unidades de disco duro. LBA es un
esquema de direccionamiento lineal particularmente simple; los bloques se ubican mediante un índice
entero, siendo el primer bloque LBA 0, el segundo LBA 1, y así sucesivamente.

Ejemplo, LBA puede numerar a los sectores como si estuvieran todos seguidos e internamente el HDD
cuando se le pida el sector 444 será igual en coordenadas al Cilindro 15, en la pista 2 de sector 633. El SO
maneja un sistema lineal sin preocuparme por dónde está en el mundo 3D del HD. Es un truco para
poder trabajar como en un espacio lineal de números y no tener que andar con 3 coordenadas.

Discos duros en estado sólido o SSD. (¡OJO! cuidado de las traducciones porque es Unidad de Estado
Sólido (Solid State Drive) la "D" no es de “disc” sino de "Drive")

Son discos duros basados en memorias flash/nand. Son como un pendrive muy gordo y en función de la
tecnología de fabricación pueden ser capaces de manejar 1, 2, 3 o 4 bits por celda (SLC, MLC, TLC y QLC
respectivamente). Estos discos y dependiendo de su fabricación pueden ser son más caros y más fiables
o más baratos y menos fiables.

Web: ¿Qué es la memoria NAND Flash? https://hardzone.es/reportajes/que-es/memoria-nand-flash/

 SLC (Single Level Cell): es la primera que llegó al mercado; cada una de sus celdas de memoria
es capaz de almacenar solo un bit de información, y por lo tanto es la que menos desgaste tiene
de todos los tipos de memoria NAND Flash y la más rápida a la hora de acceder a los datos. Sin
embargo, debido a que solo cabe un bit por celda, su densidad es extremadamente baja.
 MLC (Multi Level Cell): su coste de fabricación es sensiblemente inferior a la SLC, y por ello
cobró importancia rápidamente. Esta NAND es capaz de almacenar dos bits por celda, así que la
densidad aumenta literalmente al doble, aunque también tiene una durabilidad bastante menor
a causa de ello.
 TLC (Triple Level Cell): el rendimiento de este tipo es bastante inferior a los anteriores ya que se
pueden almacenar hasta tres bits en cada celda, lo que también aumenta mucho su desgaste. Lo
bueno es que los dispositivos con este tipo de memoria tienen unas densidades muy elevadas.

P á g i n a 6 | 12
B2 T2 Periféricos
 QLC (Quad Level Cell): es la evolución de la memoria TLC, y se pueden almacenar hasta cuatro
bits por celda. Con las nuevas generaciones y mejoras en los algoritmos, se logró que su
desgaste fuera incluso menor que TLC.

Les van fatal los ciclos de escritura, sí prácticamente no escribiremos en ellos durarían mucho tiempo
porque la lectura les va fenómeno, pero se van estropeando a medida que los vamos utilizando. Existen
algunas técnicas para poder paliar este efecto, pero al final terminan cascando por ese lado. Estos discos
duros no son mecánicos así que se calientan menos, no tienen vibraciones etc.

Las “interfaces” son los conectores, pero también esas reglas lógicas de acceso al dispositivo. Los hay
serie y paralelo. La serie serían los IDE/PATA y los SCSI

wiki: wwn / wwid y tambien OVI  World Wide Name (nombre a nivel mundial) y World Wide Identifier
(identificador a nivel mundial), cuyos acrónimos son respectivamente WWN y WWID, hacen referencia a
un identificador único en una red de almacenamiento de fibra óptica o Serial Attached SCSI (SAS).

Los SATA van desde la versión 1 hasta la 6 y desde 1,5 gigabytes a 6 gigabytes

Los SAS (Serial Attached SCSI), a cada dispositivo se le asigna un WWN (World Wide Number).

Ver velocidades en la ficha. Ej. SAS-4 va a 22,5 Gbps Vs SATA que es el mejor de los casos alcanza los 6
Gbps

Los SSD clásicos son los que su interfaz es SATA así, el mayor rendimiento que nos dé dependerá de su
interface, esto es, no nos dará más de 6 gigabyte por segundo. No obstante, han aparecido algunos
formatos específicos M.2 y NVME.

 M.2 reemplaza al SATA, pero va por la interface SATA así que, como convergen aquí, también
mueren aquí, es decir en 6 Gbps. M.2 es el conector, es decir el formato.
 El NVME no es SATA, sino que internamente se conecta al PCIe adoptando sus características en
cuanto a transferencia de datos se refiere.

Google: M.2 disc ==> Amazon para ver las características de algún modelo

En el caso de los NVME estos no pasan por el SATA, sino que están conectados al Bus PCIe alcanzando
unas transferencias de hasta 3000 MBps por segundo. Los NVME se pueden incluso conectar por fuera
de la caja.

web: ¿Cuál es la diferencia entre los discos NVMe, SATA y M2?


https://noticias.cec.es/index.php/2020/10/13/cual-es-la-diferencia-entre-los-discos-nvme-sata-y-m2/

Ficha 3
Niveles RAID

Wiki: https://es.wikipedia.org/wiki/RAID

RAID es una especie de virtualización del almacenamiento que busca garantizar la seguridad de la
información, pero existe una derivada aparte de la seguridad que es el rendimiento. Si tengo varios
discos y puedo leer de ellos a la vez seguramente tenga mayor rendimiento de E/S en mi sistema. Esa
redundancia nos viene ofreciendo esas dos grandes ventajas: rendimiento, pero sobre todo seguridad.

P á g i n a 7 | 12
B2 T2 Periféricos
RAID básicamente es un conjunto de unidades físicas que trabajan como una unidad lógica. Existen
sistemas RAID basados en hardware, es decir necesitan una tarjeta llamada "controladora RAID". Está a
veces viene integrada en la misma placa base y con ella se soporta un sistema RAID y otras necesito una
tarjeta de expansión para solucionar el tema. También cabe la posibilidad de hacerlo por software.

Existe en GitHub una receta para hacer RAID en Linux.

Pedir a Dani un LAB en Linux qué le pasó un alumno (lo dice en el minuto 1:34:51 del video de la clase) y
que utiliza la herramienta "MDADM" que sustituye a la antigua “tool” de las antiguas distribuciones de
Linux.

wiki: RAID ==> JBob (Just a Bunch of disk o Just Bunch of Drive) Ver la tabla para consulta. JBOD
(derivado de "sólo un montón de discos"): describe varias unidades de disco duro que funcionan como
unidades de disco duro independientes individuales.

Web: https://forum.huawei.com/enterprise/es/%C2%BFcu%C3%A1l-es-la-diferencia-entre-raid-y-jbod/
thread/609572-100251#:~:text=JBOD%20significa%20(%22Conjunto%20de%20discos,duros
%20expuestos%20como%20dispositivos%20individuales.

En esta configuración, cada unidad se considera un dispositivo independiente, de forma similar a las
unidades de disco duro independientes. Todos los discos aparecerán en su ordenador como discos duros
individuales, divididos en las particiones creadas por la utilidad de gestión de discos del sistema
operativo. Una gran ventaja de JBOD es el uso de la capacidad completa de ambas unidades. Asimismo,
en caso de fallo de una de las unidades, no se pierden los archivos almacenados en la unidad correcta.
Sin embargo, esta configuración no proporciona ninguna de las ventajas de RAID 0 (velocidad) ni RAID 1
(protección de datos completa).

La capacidad total de una matriz JBOD es la suma de capacidades de cada uno de sus discos, o C = n*d
donde: C = capacidad disponible n = número de discos d = capacidad de disco Por ejemplo, en una
matriz JBOD con cuatro unidades de 1000 GB de capacidad cada una, la capacidad total de la matriz
sería de 4000 GB: C = (4*1000)

wiki: non-RAID drive architecture ==> https://en.wikipedia.org/wiki/Non-RAID_drive_architectures

Según la tabla, en los RAID de nivel 2 y 3 el acceso a la información se produce en paralelo, esto quiere
decir que si tengo 4 discos voy a acceder a los 4 a la vez. En los niveles 4, 5 y 6 de RAID el acceso de los
discos es independiente.

Como hemos visto el acceso puede ser en paralelo o independiente, así en el RAID de nivel 2 y 3 utilizan
acceso paralelo donde los HDD miembros participan en la ejecución de cada E/S de manera simultánea
dependiendo de la controladora podría tener un algoritmo u otro con alguna pequeña diferencia. Se
calcula el código "Hamming" que en este caso es un código de detección y corrección, es aquí donde se
encuentra la redundancia. En informática, el código de Hamming es un código detector y corrector de
errores que lleva el nombre de su inventor, Richard Hamming. En los datos codificados en Hamming se
pueden detectar errores en un bit y corregirlos, sin embargo, no se distingue entre errores de dos bits y
de un bit (para lo que se usa “Hamming extendido”). Esto representa una mejora respecto a los códigos
con bit de paridad, que pueden detectar errores en solo un bit, pero no pueden corregirlo.

El RAID 2 distribuye bits en “N” número de discos y en otros distintos calcula la paridad M.
P á g i n a 8 | 12
B2 T2 Periféricos
En nivel 3, se distribuyen tiras en “N” número discos más 1 de paridad así que toda la paridad se
encuentra en un solo disco.

Ficha 4
Los niveles RAID 4 y 6 trabajan de forma independiente, es decir manejan tiras de información más
grandes e igual que RAID 3 manejan "N" discos de datos + 1 de paridad.

En el caso del 5 se distribuyen los datos en todos los discos y en RAID 6 es similar al nivel 5 pero la
redundancia se escribe en 2 unidades (dual redundancy)

Luego existen los “niveles anidados”, RAID 0+1 (divisiones & Espejo) y RAID_1+0 (Espejo & Divisiones)

web: micrograma.com: RAID_5

En el RAID_5 si cascaran 2 discos perderíamos la información, sin embargo RAID_6 soporta que 2 HDs
mueran.

Web: profesionalreview.com ==> Raid_1+0 y RAID_5+0

Youtube: Video RAID parity explained ==> nombre del video: RAID_5, explained, de 6 diciembre 2009
( 6:11 mins). Este video nos muestra cómo se calcula la paridad en un sistema RAID_5

Youtube: What is RAID_0, 1, 5 & 10 ?? del 9 de agosto de 2015 (5:03 mins.)

Ficha 5
Tipos de pantallas

En la ficha podemos encontrar una pequeña avanzadilla de los tipos, pero echar un ojo.

Es interesante conocer qué a nivel de visualización existen 2 tipos: "RASTER o VECTORIAL".

En la VECTORIAL se regenera mucho más fielmente la imagen, utiliza recursos matemáticos geométricos
para generarla y por su lado, el RASTER crea la imagen por filas, a su vez, existen 2 formatos, el primero
es “progresivo” y genera la imagen de forma muy fidedigna y el segundo, es “enlazado” que da menos
calidad, aunque es más rápido y ocupa menos tamaño. En este caso, primero hace las líneas pares y
luego las impares (que es lo que produce el parpadeo).

Así pues, tenemos visualizaciones vectoriales o rasterizadas

Interfaces:

 VGA, que es analógica


 DVI, existen varias recomendaciones incluyendo una que es analógica. DVI-d (es solo digital),
DVI-a (es solo analógica) y DVI-i (que es digital y analógica)
wiki: DVI Digital Visual Interface
 HDMI, es un estándar que sirve para audio y video. Existen distintas versiones, desde la 1 a la
2.1 que soporta hasta 8k y 60 Hz
 D-Port (Display Port)

P á g i n a 9 | 12
B2 T2 Periféricos
¡¡OJO!! tenemos que sabernos las resoluciones, la profundidad de bits (cantidad de información color x
pixel). Por ejemplo, con 8 bits (1 byte) tenemos 256 colores. TRUE Color= 24 bits de color, así que
2^24=1677216 colores

wiki: true color

El HDMI 2.1 nos ofrece por ejemplo hasta 48 Gb/s para dar soporte al 10k

wiki: high definition multimedia interface

Buses de gráficos pueden ser: PCI, AGP o PCIe

Escáner

Conocer 4 cosas. Lo que tiene para escanear, el CCD que es el fotosensor. Las resoluciones que se miden
en PPP (DPI data per inche) y la tecnología OCR como técnica de reconocimiento de caracteres y los
Interface: TWAIN, ISIS, WIA, SANE que son para tratar con distintos dispositivos de distintos fabricantes.

Web: TWAIN, ISIS, WIA y SANE ==> https://www.dynamsoft.com/blog/insights/document-scanning-


twain-wia-isis-sane/

Ficha 6
Tipos de impresoras, mirar más o menos cómo funcionan. Por ejemplo, en las laser el toner se transfiere
al papel mediante electricidad estática. La imagen se carga estáticamente y el "FUSE" adhiere de forma
electrostática ese polvillo del tóner. Ideas generales

Modelo de color CMYK: modelo de color sustractivo. Para revisar

IMPORTANTE: Lenguajes de "descripción de páginas" (PDL), esta es la parte más importante de la ficha.
Los más conocidos son: PostScript y PCL, pero existen otros como XPS, PDF y DVI.

Lenguaje de descripción de páginas https://es.wikipedia.org/wiki/Lenguaje_de_descripci


%C3%B3n_de_p%C3%A1ginas

Un lenguaje de descripción de páginas “LDP (Page Description Language)” describe el formato de las
páginas, la colocación del texto y los elementos gráficos como mapas de bits o como objetos vectoriales
para obtener una calidad de impresión óptima. Aunque los lenguajes de descripción de páginas son
completos y podrían utilizarse para crear programas, no se usan con este propósito pues son
interpretados, y consecuentemente lentos. Hacen que el computador envíe a la impresora un fichero
con la descripción de las páginas a ser impresas por un programa o plataforma independiente. Algunas
impresoras pueden interpretar directamente este lenguaje. Finalmente, la impresora recibe el fichero, lo
procesa y genera el mapa de bits que será impreso.

Otro término para lo mismo es: Lenguaje de Control de Impresora “PCL (Printer Control Language)”.

Los LDP más conocidos quizá sean PCL de Hewlett Packard y Postscript de Adobe. Estos son verdaderos
lenguajes de programación. Sin embargo, muchos LDP no son lo suficientemente completos como para
ser considerados como tales.

wiki: Printer command languajes:

P á g i n a 10 | 12
B2 T2 Periféricos
 PCL https://es.wikipedia.org/wiki/Printer_Command_Language
 PostScript https://es.wikipedia.org/wiki/PostScript

Son lenguajes de comandos que le vamos a enviar a la impresora y esta los va a entender.

LAB. tool IText rups ==> GitHUb/release/itext 7 rups-7.1

Ficha 7
Conectividad pura y dura

Firewire, aunque está bastante en desuso pueden llegar a preguntarlo así que estudiar características y
velocidades. Ver Firewire Vs USB

Google: que es, para que sirve y diferencias con USB

Wiki: IEEE_1394

Thunderbolt, conocido como "Light Peack”, usa tecnología óptica. Es interesante por:

 Puede conectar dispositivos con distintos protocolos (Ej. Display-Port, Ethernet, etc.)
 Soporta transferencia bidireccional
 Ofrece QoS

Existen distintas versiones y velocidades y tiene algunas cosas muy rompedoras, como que la versión 3
por ejemplo tienen un conector USB tipo C.

wiki: Thunderbolt (bus) ==> in English

Con la versión Thunderbolt 3, estamos hablando del mismo concepto, del mismo controlador pero
mejorado, con mucha más velocidad, pero sigue siendo el estándar de Thunderbolt, pero con el
conector en la versión 3 de tipo USB_C. No obstante, detrás de ese conector no hay un USB "controler"
sino un THBOLT "controler" que no tiene nada que ver. La cosa es, conector tipo USB_C, pero interface
al que accedemos Thunderbolt_3

Thunderbolt 3 permite conectar distintos dispositivos, esto quiere decir que para un conector universal
como el tipo USB_C y con un solo controlador Thunderbolt internamente en la máquina podemos dar
acceso a dispositivos desde fuera que se conecten, por ejemplo, por Display-Port, HDMI, y Ethernet, es
decir es multiprotocolo.

USB. Cosas importantes:

Primero, lo clásico, el que gobierna el estándar USB es la “USB Implement Forum (USB IF)”.

También necesitamos conocer las versiones y las velocidades.

Los conectores que NO son siempre el mismo. De hecho, el conector no tiene relación entre el conector
y el “USB controler” de dentro. Todos los conectores pueden llevar todos los conectores excepto el 3.2
que obligatoriamente debe llevar el conector tipo "C"

Un USB puede hacer entrega de potencia. Existe una parte del estándar USB aparte de las velocidades
que se llama "USB PD (Power delivery)". Este dependiendo de la versión nos entregará más o menos
potencia (2,5w, 4,5w o 100w).
P á g i n a 11 | 12
B2 T2 Periféricos
Google: imagenes: USB Power Standars

La especificación tiene unas potencias por defecto y por conector, pero con el "Power Delivery (PD)"
podemos obtener más potencia dependiendo del dispositivo. Así el USB de mi máquina, dependiendo
de la versión entregará una potencia u otra y si además cumple con el estándar “PD” serán otras.

Amazon: USB power delivery. Aquí podemos ver que los dispositivos según su diseño pueden cumplir
con un tipo de PD y luego además el conector será tipo A, B, o C con sus distintas versiones 1, 2, 3, etc.

wiki: USB_4 https://es.wikipedia.org/wiki/USB4

¡¡ OJO¡! Pregunta de examen: ¿En que se basa Thunderbolt 3 para llegar hasta 40 Gbps? En USB tipo C

wiki: stack register https://es.wikipedia.org/wiki/Registro_de_pila

P á g i n a 12 | 12

También podría gustarte