lunes, 11 de octubre de 2021

Memorias PROM, EPROM, EEPROM Y FLASH

 PROM (programmable read-only memory, memoria programable de solo lectura)

Es una memoria digital donde el valor de cada bit depende del estado de un fusible (o anti fusible), que puede ser quemado una sola vez. Por esto la memoria puede ser programada (pueden ser escritos los datos) una sola vez a través de un dispositivo especial, un programador PROM. Estas memorias son utilizadas para grabar datos permanentes en cantidades menores a las ROMs, o cuando los datos deben cambiar en muchos o todos los casos.

Programación

Una PROM común se encuentra con todos los bits en valor 1 como valor por defecto de las fábricas; el quemado de cada fusible, cambia el valor del correspondiente bit a 0. La programación se realiza aplicando pulsos de altos voltajes que no se encuentran durante operaciones normales (12 a 21 voltios). El término Read-only (sólo lectura) se refiere a que, a diferencia de otras memorias, los datos no pueden ser cambiados (al menos por el usuario final).

Historia

La memoria PROM fue inventada en 1956 por Wen Tsing Chow, trabajando para la «División Arma», de la American Bosch Arma Corporation en Garden City, Nueva York. La invención fue concebida a petición de la Fuerza aérea de los Estados Unidos, para conseguir una forma más segura y flexible para almacenar las constantes de los objetivos en la computadora digital del MBI Atlas E/F.

La patente y la tecnología asociadas fueron mantenidas bajo secreto por varios años mientras el Atlas E/F era el principal misil de Estados Unidos. 

El término «quemar», refiriéndose al proceso de grabar una PROM, se encuentra también en la patente original, porque como parte de la implementación original debía quemarse literalmente los diodos internos con un exceso de corriente para producir la discontinuidad del circuito. Las primeras máquinas de programación de PROMs también fueron desarrolladas por ingenieros de la División Arma bajo la dirección del Sr. Chow y fueron ubicados el laboratorio Arma de Garden City, y en la jefatura del Comando estratégico aéreo de las Fuerzas Aéreas.

EPROM  Erasable Programmable Read-Only Memory (ROM programable borrable)

Es un tipo de chip de memoria ROM no volátil inventado por el ingeniero Dov Flohman. Está formada por celdas de FAMOS (Floating Gate Avalanche-Injection Metal-Oxide Semiconductor) o “transistores de puerta flotante”, cada uno de los cuales viene de fábrica sin carga, por lo que son leídos como 1 (por eso, una EPROM sin grabar se lee como FF en todas sus celdas). Se programan mediante un dispositivo electrónico que proporciona voltajes superiores a los normalmente utilizados en los circuitos electrónicos. Las celdas que reciben carga se leen entonces como un 0.

Las memorias EPROM se programan mediante un dispositivo electrónico, como el Cromemco Bytesaver, que proporciona voltajes superiores a los normalmente utilizados en los circuitos electrónicos. Las celdas que reciben carga se leen entonces como un 0.

Una vez programada, una EPROM se puede borrar solamente mediante exposición a una fuerte luz ultravioleta.​ Esto es debido a que los fotones de la luz excitan a los electrones de las celdas provocando que se descarguen. Las EPROM se reconocen fácilmente por una ventana transparente en la parte alta del encapsulado, a través de la cual se puede ver el chip de silicio y que admite la luz ultravioleta durante el borrado.

Como el cuarzo de la ventana es caro de fabricar, se introdujeron los chips OTP (One-Time Programmable, programables una sola vez). La única diferencia con la EPROM es la ausencia de la ventana de cuarzo, por lo que no puede ser borrada. Las versiones OTP se fabrican para sustituir tanto a las EPROM normales como a las EPROM incluidas en algunos microcontroladores. Estas últimas fueron siendo sustituidas progresivamente por EEPROMs (para fabricación de pequeñas cantidades donde el coste no es lo importante) y por memoria flash (en las de mayor utilización).

Una EPROM programada retiene sus datos durante diez o veinte años, y se puede leer un número ilimitado de veces. Para evitar el borrado accidental por la luz del sol, la ventana de borrado debe permanecer cubierta. Las antiguas BIOS de los ordenadores personales eran frecuentemente EPROM y la ventana de borrado estaba habitualmente cubierta por una etiqueta que contenía el nombre del productor de la BIOS, su revisión y una advertencia de copyright.

Las EPROM pueden venir en diferentes tamaños y capacidades. Así, para la familia 2700 se pueden encontrar:



Borrado

Una memoria EPROM puede ser borrada con una lámpara de luz UV, del tipo UV-C, que emita radiación en torno a los 2537 Å (Angstrom) o 254nm, a una distancia de unos 2.5 cm de la memoria. La radiación alcanza las células de la memoria a través de una ventanilla de cuarzo transparente situada en la parte superior de la misma.

Para borrar una EPROM se necesita que la cantidad de radiación recibida por la misma se encuentre en torno a los 15 W/〖𝑐𝑚〗^2 durante un segundo. El tiempo de borrado real suele ser de unos 20 minutos debido a que las lámparas utilizadas suelen tener potencias en torno a los 12 mW/cm² (12 mW x 20 x 60 s = 14.4 W de potencia suministrada). Este tiempo también depende del fabricante de la memoria que se desee borrar. En este tiempo todos sus bits se ponen a 1.

Es importante evitar la sobreexposición del tiempo de radiación a las EPROM; es decir, la potencia luminosa suministrada a la memoria, pues se produce un envejecimiento prematuro de las mismas.

Debido a que la radiación solar e incluso la luz artificial proveniente de tubos fluorescentes borra la memoria lentamente (de una semana a varios meses), es necesario tapar dicha ventanilla con una etiqueta opaca que lo evite, una vez que son grabadas.

Se debe aclarar que una EPROM no puede ser borrada parcial o selectivamente; de ahí que por muy pequeña que fuese la eventual modificación a realizar en su contenido, inevitablemente se deberá borrar y reprogramar en su totalidad.





EEPROM (Electrically Erasable Programmable Read-Only Memory, ROM programable y borrable eléctricamente)

Es un tipo de memoria ROM que puede ser programada, borrada y reprogramada eléctricamente, a diferencia de la EPROM que ha de borrarse mediante un aparato que emite rayos ultravioleta. Son memorias no volátiles.

Las celdas de memoria de una EEPROM están constituidas por un transistor MOS, que tiene una compuerta flotante (estructura SAMOS), su estado normal está cortado y la salida proporciona un 1 lógico.

Aunque una EEPROM puede ser leída un número ilimitado de veces, sólo puede ser borrada y reprogramada entre 100.000 y un millón de veces.

Estos dispositivos suelen comunicarse mediante protocolos como I²C, SPI y Microwire. En otras ocasiones, se integra dentro de chips como microcontroladores y DSPs para lograr una mayor rapidez.

EEPROM de Silicon Storage Technology 39VF512.



FLASH

Permite la lectura y escritura de múltiples posiciones de memoria en la misma operación. Gracias a ello, la tecnología flash, mediante impulsos eléctricos, permite velocidades de funcionamiento superiores frente a la tecnología EEPROM primigenia, que solo permitía actuar sobre una única celda de memoria en cada operación de programación.



Se trata de la tecnología empleada en las memorias USB, unidades de estado sólido y las actuales BIOS.

La historia de la memoria flash siempre ha estado muy vinculada con el avance del resto de las tecnologías a las que presta sus servicios como routers, módems, BIOS de las PC, wireless, etcétera. En 1984, fue Fujio Masuoka quien inventó este tipo de memoria como evolución de las EEPROM existentes por aquel entonces.​ Intel intentó atribuirse la creación de esta sin éxito, aunque sí comercializó la primera memoria flash de uso común. Entre los años 1994 y 1998, se desarrollaron los principales tipos de memoria conocidas, como la SmartMedia o la CompactFlash. La tecnología pronto planteó aplicaciones en otros campos. 

En 1998, la compañía Río comercializó el primer reproductor de audio digital sin piezas móviles aprovechando el modo de funcionamiento de la memoria flash. Este producto inauguraría una nueva clase de reproductores que causarían una revolución en la industria musical llevando al escándalo Napster, el lanzamiento del iPod y el eventual reemplazo de los reproductores de cinta y CD.



En 1994, SanDisk comenzó a comercializar tarjetas de memoria (CompactFlash) basadas en estos circuitos, y desde entonces la evolución ha llegado a pequeños dispositivos de mano de la electrónica de consumo como reproductores de MP3 portátiles, tarjetas de memoria para videoconsolas y teléfonos móviles, capacidad de almacenamiento para las PC Card que permiten conectar a redes inalámbricas y un largo etcétera, incluso llegando a la aeronáutica espacial.



Generalidades

Económicamente hablando, el precio en el mercado cumple la ley de Moore aumentando su capacidad y disminuyendo el precio.

Algunas de sus ventajas son una gran resistencia a los golpes, tiempos de acceso más rápidos, bajo consumo de energía y un funcionamiento silencioso, ya que no contiene actuadores mecánicos ni partes móviles comparados con un disco duro convencional. Su pequeño tamaño también es un factor determinante a la hora de escoger para un dispositivo portátil, así como su ligereza y versatilidad para todos los usos hacia los que está orientado. En vista de ello, comienzan a popularizarse las unidades SSD que usan memoria flash en lugar de platos.

Sin embargo, todos los tipos de memoria flash solo permiten un número limitado de escrituras y borrados, generalmente entre 10.000 y un millón, dependiendo de la celda, de la precisión del proceso de fabricación y del voltaje necesario para su borrado. Además su relación costo capacidad es menos favorable respecto a otros medios como los discos ópticos y los discos duros.

Este tipo de memoria está fabricado con puertas lógicas NOR y NAND para almacenar los ceros (0) o unos (1) correspondientes.

Los sistemas de ficheros para estas memorias están en pleno desarrollo aunque ya en funcionamiento como por ejemplo JFFS originalmente para NOR, evolucionado a JFFS2 para soportar además NAND o YAFFS, ya en su segunda versión, para NAND. Sin embargo, en la práctica se emplea un sistema de ficheros FAT por compatibilidad, sobre todo en las unidades de memoria extraíble.

Otra característica ha sido la resistencia térmica de algunos encapsulados de tarjetas de memoria orientadas a las cámaras digitales de gama alta. Esto permite funcionar en condiciones extremas de temperatura como desiertos o glaciares ya que el rango de temperaturas soportado abarca desde los –25 °C hasta los 85 °C.

Las aplicaciones más habituales son:

  • Las memorias USB que, además del almacenamiento, puede incluir otros servicios como, lector de huella digital, radio FM, grabación de voz y, sobre todo como reproductores portátiles de MP3 y otros formatos de audio.
  • Las PC Card (descontinuado).
  • Las tarjetas de memoria flash que son usadas para almacenar fotos y videos en las cámaras digitales. También son comunes en los teléfonos móviles y tabletas para ampliar la capacidad de almacenamiento.


Existen varios estándares de encapsulados promocionados y fabricados por la mayoría de las multinacionales dedicadas a la producción de hardware. Los más comunes hoy en día son Secure Digital, Compact Flash y Memory Stick.

Acceso a bajo nivel

Flash, como tipo de EEPROM que es, contiene una matriz de celdas con un transistor evolucionado con dos puertas en cada intersección. Tradicionalmente solo almacenan un bit de información. Las nuevas memorias flash, llamadas también dispositivos de celdas multinivel, pueden almacenar más de un bit por celda variando el número de electrones que almacenan.

Estas memorias están basadas en el transistor FAMOS (Floating Gate Avalanche-Injection Metal Oxide Semiconductor) que es, esencialmente, un transistor NMOS con un conductor (basado en un óxido metálico) adicional localizado o entre la puerta de control (CG – Control Gate) y los terminales fuente/drenador contenidos en otra puerta (FG – Floating Gate) o alrededor de la FG conteniendo los electrones que almacenan la información.

Memoria flash de tipo NOR

En las memorias flash de tipo NOR, cuando los electrones se encuentran en FG (Floating Gate), modifican (prácticamente anulan) el campo eléctrico que generaría CG (control Gate) en caso de estar activo. De esta forma, dependiendo de si la celda está a 1 o a 0, el campo eléctrico de la celda existe o no. Entonces, cuando se lee la celda poniendo un determinado voltaje en CG, la corriente eléctrica fluye o no en función del voltaje almacenado en la celda. La presencia/ausencia de corriente se detecta e interpreta como un 1 o un 0, reproduciendo así el dato almacenado. 

En los dispositivos de celda multinivel, se detecta la intensidad de la corriente para controlar el número de electrones almacenados en FG e interpretarlos adecuadamente. 

Para programar una celda de tipo NOR (asignar un valor determinado) se permite el paso de la corriente desde el terminal fuente al terminal drenador, entonces se coloca en CG un voltaje alto para absorber los electrones y retenerlos en el campo eléctrico que genera. Este proceso se llama hot-electrón injection. 

Para borrar (poner a “1”, el estado natural del transistor) el contenido de una celda, expulsar estos electrones, se emplea la técnica de Fowler-Nordheim tunnelling, un proceso de tunelado mecánico-cuántico. Esto es, aplicar un voltaje inverso bastante alto al empleado para atraer a los electrones, convirtiendo al transistor en una pistola de electrones que permite, abriendo el terminal drenador, que los electrones abandonen el mismo. Este proceso es el que provoca el deterioro de las celdas, al aplicar sobre un conductor tan delgado un voltaje tan alto.

Es necesario destacar que las memorias flash están subdivididas en bloques (en ocasiones llamados sectores) y por lo tanto, para el borrado, se limpian bloques enteros para agilizar el proceso, ya que es la parte más lenta del proceso. Por esta razón, las memorias flash son mucho más rápidas que las EEPROM convencionales, ya que borran byte a byte. No obstante, para reescribir un dato es necesario limpiar el bloque primero para después reescribir su contenido.



Memoria flash de tipo NAND

Las memorias flash basadas en puertas lógicas NAND funcionan de forma ligeramente diferente: usan un túnel de inyección para la escritura y para el borrado un túnel de ‘soltado’. Las memorias basadas en NAND tienen, además de la evidente base en otro tipo de puertas, un costo bastante inferior, unas diez veces de más resistencia a las operaciones, pero solo permiten acceso secuencial (más orientado a dispositivos de almacenamiento masivo), frente a las memorias flash basadas en NOR que permiten lectura de acceso aleatorio. 

Sin embargo, han sido las NAND las que han permitido la expansión de este tipo de memoria, ya que el mecanismo de borrado es más sencillo (aunque también se borre por bloques) lo que ha proporcionado una base más rentable para la creación de dispositivos de tipo tarjeta de memoria. Las populares memorias USB o también llamadas Pendrives, utilizan memorias flash de tipo NAND.



Comparación de memorias flash tipo NOR y NAND

Para comparar estos tipos de memoria se consideran los diferentes aspectos de las memorias tradicionalmente valorados.

  • La densidad de almacenamiento de los chips es actualmente bastante mayor en las memorias NAND.
  • El costo de NOR es mucho mayor.
  • El acceso NOR es aleatorio para lectura y orientado a bloques para su modificación.
  • En la escritura de NOR podemos llegar a modificar un solo bit. Esto destaca con la limitada reprogramación de las NAND que deben modificar bloques o palabras completas.
  • La velocidad de lectura es muy superior en NOR (50-100 ns) frente a NAND (10 µs de la búsqueda de la página + 50 ns por byte).
  • La velocidad de escritura para NOR es de 5 µs por byte frente a 200 µs por página en NAND.
  • La velocidad de borrado para NOR es de 1 ms por bloque de 64 KB frente a los 2 ms por bloque de 16 KB en NAND.

La fiabilidad de los dispositivos basados en NOR es realmente muy alta, es relativamente inmune a la corrupción de datos y tampoco tiene bloques erróneos frente a la escasa fiabilidad de los sistemas NAND que requieren corrección de datos y existe la posibilidad de que queden bloques marcados como erróneos e inservibles.

En resumen, los sistemas basados en NAND son más baratos pero carecen de una fiabilidad que los haga eficientes, lo que demuestra la necesidad imperiosa de un buen sistema de ficheros. Dependiendo de qué sea lo que se busque, merecerá la pena decantarse por uno u otro tipo.


martes, 21 de septiembre de 2021

Diagramas de Venn

 Un diagrama de Venn usa círculos que se superponen u otras figuras para ilustrar las relaciones lógicas entre dos o más conjuntos de elementos. A menudo, se utilizan para organizar cosas de forma gráfica, destacando en qué se parecen y difieren los elementos. Los diagramas de Venn, también denominados "diagramas de conjunto" o "diagramas lógicos", se usan ampliamente en las áreas de matemática, estadística, lógica, enseñanza, lingüística, informática y negocios. 


Muchas personas los vieron por primera vez en la escuela cuando estudiaron Matemática o Lógica, ya que los diagramas de Venn se convirtieron en una parte del plan de estudio de la "nueva Matemática" en la década de 1960.
Estos pueden ser diagramas sencillos que involucran dos o tres conjuntos con algunos elementos o pueden volverse muy sofisticados, por ejemplo, en presentaciones en 3D, ya que utilizan seis o siete conjuntos o más.
Se usan para hacer un análisis detallado y para representar cómo se relacionan los elementos entre sí dentro de un "universo" o segmento determinado. Los diagramas de Venn permiten a los usuarios visualizar los datos de forma clara y con gran alcance y, por este motivo, se utilizan comúnmente en presentaciones e informes. Se relacionan estrechamente con los diagramas de Euler, pero se diferencian en que estos últimos omiten los conjuntos si estos no contienen elementos. Los diagramas de Venn muestran las relaciones incluso si un conjunto está vacío.

Historia

Los diagramas de Venn llevan el nombre del lógico británico, John Venn. Él escribió sobre ellos en un artículo redactado en 1880 titulado "De la representación mecánica y diagramática de proposiciones y razonamientos" en la revista "Philosophical Magazine and Journal of Science".
Pero las raíces de este tipo de diagrama se remontan a un período muy anterior, al menos 600 años atrás. Alrededor del año 1200, el filósofo y lógico Ramon Llull (Raimundo Lulio en español) de Mallorca, usó un tipo de diagrama similar, escribió la autora M.E. Baron en un artículo redactado en 1969 que realizaba un seguimiento de su historia. Ella también atribuye el crédito al matemático y filósofo alemán, Gottfried Wilhelm von Leibnitz de haber dibujado diagramas similares a finales de 1600.
En la década de 1700, el matemático suizo Leonard Euler (que se pronuncia Oy-ler) inventó lo que luego se conocería como "diagrama de Euler", el predecesor más directo del diagrama de Venn. De hecho, John Venn se refería a sus propios diagramas como "círculos de Euler" y no "diagramas de Venn". El filósofo estadounidense Clarence Irving (C.I.) Lewis publicó por primera vez el término "diagramas de Venn" en su libro escrito en 1918 llamado, "A Survey of Symbolic Logic".
Los diagramas de Venn continuaron evolucionando en los siguientes 60 años con avances de la mano de expertos, como David W. Henderson, Peter Hamburger, Jerrold Griggs, Charles E. “Chip” Killian y Carla D. Savage. Su trabajo se centraba en los diagramas de Venn simétricos y su relación con los números primos o aquellos indivisibles por otros números que no sean 1 y el número mismo. Uno de estos diagramas simétricos, basado en el número primo 7, se conoce ampliamente en las esferas matemáticas como "Victoria".
Otros nombres destacados en el desarrollo de los diagramas de Venn son A. W. F. Edwards, Branko Grunbaum y Henry John Stephen Smith. Entre otras cosas, modificaron las figuras en los diagramas para permitir una representación más sencilla de los diagramas de Venn en un número cada vez mayor de conjuntos.

Ejemplo

Supongamos que nuestro universo es de mascotas y queremos comparar qué tipo de mascota tenemos en común los miembros de nuestra familia.
  • El conjunto A contiene mis preferencias: perro, ave y hámster.
  • El conjunto B contiene las preferencias del miembro B de la familia: perro, gato, pez.
  • El conjunto C contiene las preferencias del miembro C de la familia: perro, gato, tortuga, serpiente.
  • La superposición, o intersección, de los tres conjuntos incluye solamente al perro. Al parecer, tendremos un perro.

Glosario de diagrama de Venn

Conjunto

Una colección de cosas. Dada la versatilidad de los diagramas de Venn, las cosas pueden ser realmente lo que quieras. Pueden ser elementos, objetos, miembros o términos similares.

Unión

Todos los elementos de los conjuntos.

Intersección

Los elementos que se superponen en los conjuntos. A veces se denominan "subconjuntos".

Diferencia simétrica entre dos conjuntos

Todo, excepto la intersección.



Complemento absoluto

Todo lo que no está en el conjunto.

Complemento relativo

En un conjunto pero no en el otro.


Diagrama de Venn a escala

También se denomina "área proporcional". Se modifica el tamaño de los círculos (y otras figuras) con base en su representación proporcional de la totalidad.



Diagramas de Venn y conjuntos

Los diagramas de Venn proporcionan una vista pictórica de los conjuntos. En un diagrama de Venn, un rectángulo describe el conjunto universal. Los subconjuntos del conjunto universal se dibujan como círculos. 


El interior de un círculo representa los elementos de ese conjunto. En la figura se observan dos conjuntos A y B dentro del conjunto universal U. Los elementos que no están en A ni en B están en la región 1. Los elementos en la región 2 están en A pero no en B. La región 3 representa A ∩ B, los elementos comunes a A y B. La región 4 comprende los elementos en B pero no en A.



Sea U un conjunto universal y sean A, B y C subconjuntos de U. Las siguientes propiedades se cumplen.
a) Leyes asociativas:
(𝐴∪𝐵)∪𝐶=𝐴∪(𝐵∪𝐶),        (𝐴∩𝐵)∩𝐶=𝐴∩(𝐵∩𝐶)
b) Leyes conmutativas:
𝐴∪𝐵=𝐵∪𝐴,       𝐴∩𝐵=𝐵∩𝐴
c) Leyes distributivas:
𝐴∩(𝐵∪𝐶)=(𝐴∩𝐵)∪(𝐴∩𝐶),          𝐴∪(𝐵∩𝐶)=(𝐴∪𝐵)∩(𝐴∪𝐶)
d) Leyes de identidad:
𝐴∪∅=𝐴,          𝐴∩𝑈=𝐴

f) Leyes de idempotencia:
𝐴∪𝐴=𝐴,          𝐴∩𝐴=𝐴
g) Leyes de acotación:
𝐴∪𝑈=𝑈,          𝐴∩∅=∅
h) Leyes de absorción:
𝐴∪(𝐴∩𝐵)=𝐴,          𝐴∩(𝐴∪𝐵)=𝐴




Fuentes:
¿Qué es un diagrama de Venn? | Lucidchart

Johnsonbaugh, R. (2005). Matemáticas discretas. Pearson Educación.

lunes, 20 de septiembre de 2021

Conjuntos

 Un conjunto es simplemente una colección de objetos. En ocasiones se hace referencia a los objetos como elementos o miembros. Si un conjunto es finito y no muy grande, es posible describirlo por la lista de los elementos en él. 

Teoría de conjuntos 

La teoría de conjuntos es la rama de la matemática que estudia a los conjuntos. Fue introducida como disciplina por el matemático ruso Georg Cantor, quien definió al conjunto como la colección de elementos finitos o infinitos y lo utilizó para explicar las matemáticas.

Cantor estudió el conjunto de números racionales y naturales y fue revolucionario su descubrimiento de los conjuntos de números infinitos, ya que develó la existencia de infinitos de diferentes tamaños al asegurar que siempre se puede encontrar un infinito mayor.

Los descubrimientos de Cantor no fueron bien recibidos en el ámbito matemático de finales del siglo XIX. Sin embargo, hoy es considerado un visionario en el estudio de lo que él denominó los transfinitos, estudio que contribuyó al de los conjuntos abstractos e infinitos.

Tipos de conjuntos

A la hora de formar un conjunto, la manera y el porqué de la agrupación de los elementos que lo conforman puede variar dando lugar a diferentes tipos de conjuntos, que pueden ser:
  • Conjuntos finitos. Sus elementos pueden contarse o enumerarse en su totalidad. Por ejemplo: los meses del año, los días de la semana o los continentes.
  • Conjunto infinito. Sus elementos no se pueden contar o enumerar en su totalidad, debido a que no tienen fin. Por ejemplo: los números.
  • Conjunto unitario. Está compuesto por un único elemento. Por ejemplo: La Luna es el único elemento en el conjunto “satélites naturales de la Tierra”.
  • Conjunto vacío. No presenta ni contiene elementos.
  • Conjunto homogéneo. Sus elementos presentan una misma clase o categoría.
  • Conjunto heterogéneo. Sus elementos difieren en clase y categoría.
Respecto a la relación entre conjuntos, pueden ser:
  • Conjuntos equivalentes. La cantidad de elementos entre dos o más conjuntos es la misma.
  • Conjuntos iguales. Dos o más conjuntos están compuestos por elementos idénticos.

Subconjunto

Se denomina subconjunto al conjunto que se encuentra dentro de otro conjunto, es decir, el conjunto A es subconjunto del conjunto B, si todos los elementos de A están incluidos en B.
Por ejemplo:
  • Los mamíferos son un subconjunto del conjunto animales.
  • Los números impares son un subconjunto del conjunto números naturales.
  • Los países de América del Sur son un subconjunto del conjunto países del mundo.
  • Los meses de primavera son un subconjunto del conjunto meses del año.
  • Los niños de primer grado son un subconjunto del conjunto de niños de la escuela.

La palabra conjunto también se emplea en otras áreas, tal es el caso de:
  • Conjunto musical. Agrupación que contiene dos o más personas que, a través de la voz o instrumentos musicales, representan obras musicales.
  • Conjunto en programación. Agrupación de diversos valores, que no tienen un orden determinado ni valores duplicados.
  • Conjunto vocal. Agrupación de personas que interpretan una obra musical de forma coordinada.
  • Conjunto numérico. Agrupación de números mediante una serie de propiedades estructuradas.
  • Conjunto de instrucciones. Agrupación de instrucciones que una CPU de computadora puede ejecutar.


Por ejemplo, la ecuación
𝐴 = {1, 2, 3, 4} 
describe un conjunto A integrado por cuatro elementos 1, 2, 3 y 4. Un conjunto se determina por sus elementos y no por el orden particular en el que se enumeren. Así, es lo mismo si A se especifica como
𝐴 = {1, 3, 4, 2}
Se supone que los elementos que forman un conjunto son distintos, y aunque por alguna razón podemos tener duplicados en la lista, sólo una ocurrencia de cada uno está en el conjunto. Por esta razón, también podemos describir el conjunto 𝐴 definido  anteriormente como
𝐴 = {1, 2, 2, 3, 4}
Si un conjunto es finito grande o infinito, se describe mediante una propiedad necesaria para ser miembro. Por ejemplo, la ecuación
𝐵 = {𝑥 | 𝑥 𝑒𝑠 𝑢𝑛 𝑒𝑛𝑡𝑒𝑟𝑜 𝑝𝑎𝑟, 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑜} 
describe el conjunto B formado por todos los enteros pares, positivos; es decir, B consiste en los enteros 2, 4, 6, etcétera. La barra vertical “|” se lee “tal que”. 
                                    𝐵 = {𝑥 | 𝑥 𝑒𝑠 𝑢𝑛 𝑒𝑛𝑡𝑒𝑟𝑜 𝑝𝑎𝑟, 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑜}
La ecuación anterior  se leería “B es igual al conjunto de todas las x tales que x es un entero par, positivo”. Aquí, ser “un entero par, positivo” es la propiedad necesaria para pertenecer al conjunto. Observe que la propiedad aparece después de la barra vertical.

Conjunto nulo

El conjunto sin elementos se llama conjunto vacío (o nulo) y se denota por 𝜙. Así, 
𝜙 = {}.

Conjuntos iguales

Dos conjuntos 𝑋 y 𝑌 son iguales y escribimos 𝑋 = 𝑌,  si 𝑋 y 𝑌  tienen los mismos elementos. Dicho de otra manera,  𝑋 = 𝑌 si para cada 𝑥, si 𝑥 ∈ 𝑋, entonces 𝑥 ∈ 𝑌 (de manera que todo elemento de 𝑋 es un elemento de 𝑌) y para toda 𝑥, si 𝑥 ∈ 𝑌, entonces 𝑥 ∈ 𝑋 (de manera que todo elemento de Y es un elemento de X). 

En símbolos, X = Y si y sólo si 
                                            ∀𝑥((𝑥∈𝑋→𝑥∈𝑌)∧(𝑥∈𝑌→𝑥∈𝑋))
Esta última caracterización es una manera de probar que los dos conjuntos son iguales.

Ejemplos de conjuntos

Si
𝐶 = {1,3} y 𝐴 = {1,2,3,4}
entonces 𝐶 es un subconjunto de 𝐴, y se escribe 𝐶 ⊆ 𝐴.
En símbolos, 𝑋 es un subconjunto de 𝑌 si
                                                               ∀𝑥(𝑥∈𝑋→𝑥∈𝑌)
En palabras, X es un subconjunto de Y si para toda x, si x está en X, entonces x está en Y.

Conjunto potencia

En matemáticas, el conjunto potencia de un conjunto dado es otro conjunto formado por todos los subconjuntos del conjunto dado. Por ejemplo, dado el conjunto:
𝐴={1,2,3}
el conjunto potencia es:
Ƥ(𝐴)= {𝜙,{1},{2},{3},{1,2},{2,3},{1,3},{1,2,3}}
El conjunto potencia A también se denomina conjunto de las partes de A, o conjunto de partes de A y se denota Ƥ(𝐴) donde 2|𝐴| es el cardinal de las partes de A, es decir, |Ƥ(𝐴)|=2|𝐴| .
El conjunto potencia de A es la clase o colección de los subconjuntos de A. El conjunto potencia A (o conjunto de partes o conjunto de las partes) es el conjunto Ƥ(𝐴) formado por todos los subconjuntos de A:
𝑏∈Ƥ(𝐴) cuando 𝑏⊆𝐴
Ejemplos
El conjunto potencia de 𝐴 = {𝑎, 2, 𝑐} es:
Ƥ(𝐴)={𝜙, {𝑎},{2},{𝑐},{𝑎,2},{𝑎,𝑐},{2,𝑐},{𝑎,2,𝑐}}
El conjunto potencia de 𝐴 = {𝑥} es:
Ƥ(𝐴)={𝜙, {𝑥}}

Unión, intersección, diferencia, complemento.

Si se tienen dos conjuntos X y Y, existen varias operaciones de conjuntos que implican a X y Y que pueden producir un nuevo conjunto. El conjunto
𝑋 ∪ 𝑌 = {𝑥 ┤|𝑥 ∈ 𝑋 𝑜 𝑥 ∈𝑌 }
se llama unión de X y Y. La unión consiste en todos los elementos que pertenecen a X o a Y (o a ambos).
El conjunto
𝑋 ∩ 𝑌 = {𝑥 ┤|𝑥 ∈ 𝑋  𝑦  𝑥 ∈𝑌 }
se llama intersección de X y Y. La intersección consiste en todos los elementos que pertenecen a X y Y.
El conjunto
𝑋 − 𝑌 = {𝑥 ┤|𝑥 ∈ 𝑋  𝑦  𝑥 ∉𝑌 }
se llama diferencia (o complemento relativo). La diferencia X − Y consiste en todos los elementos en X que no están en Y
Ejemplo:
Si 𝐴 = {1, 3, 5} y 𝐵 = {4, 5, 6}, entonces
𝐴∪ 𝐵 = {1, 3, 4, 5, 6}
𝐴 ∩ 𝐵 = {5}
𝐴 − 𝐵 = {1, 3}
𝐵 − 𝐴 = {4, 6}.
Observe que 𝐴 − 𝐵 ≠ 𝐵 − 𝐴


Los conjuntos X y Y son disjuntos si X ∩ Y = ∅. Se dice que una colección de conjuntos S es disjunta por pares si siempre que X y Y son conjuntos diferentes en S, X y Y son disjuntos.
Los conjuntos
{1, 4, 5} y {2, 6}
son disjuntos. La colección de conjuntos
𝑆 = {{1, 4, 5}, {2, 6}, {3}, {7, 8}}
son disjuntos por pares.
En ocasiones, se trata con conjuntos donde todos son subconjuntos de un conjunto U. Este conjunto U se llama conjunto universal o universo. El conjunto U debe estar dado explícitamente o poder inferirse del contexto. Dado un conjunto universal U y un subconjunto X de U, el conjunto 𝑈−𝑋 se llama complemento de X y se escribe 𝑋'.

Sea 𝐴 = {1, 3, 5}. 
Si U, un conjunto universal, se especifica como 𝑈 = {1, 2, 3, 4, 5}, entonces 𝐴'= {2, 4}. Por otra parte, si un conjunto universal se especifica como 𝑈 = {1, 3, 5, 7, 9}, entonces 𝐴'= {7, 9}. Es evidente que el complemento depende del universo en el que se está trabajando.
Dado el espacio muestral y los conjuntos:
U= {0,1,2,3,4,5,6,7,8}     A = {2,4,6}   B = {1,3,5}   C = {0,3,6}
Calcule:
A∩B={∅}

B-C={1,5}

C-B={0,6}

A'={0,1,3,5,7,8}

B'={0,1,3,5,6}

A'∩B'={0,1,3,5,7,8}∩{0,2,4,6,7,8}={0,7,8}

(A'∩B')-C={0,7,8}-{0,3,6}={7,8}


Bibliografía

  • "Conjunto". Autor: Equipo editorial, Etecé. De: Argentina. Para: Concepto.de. Disponible en: https://concepto.de/que-es-un-conjunto/. Última edición: 5 de agosto de 2021. Consultado: 16 de septiembre de 2021 - Fuente: https://concepto.de/que-es-un-conjunto/
  • Johnsonbaugh, R. (2005). Matemáticas discretas. Pearson Educación.

sábado, 6 de febrero de 2021

Sistemas operativos multiusuario y multitarea

 

Multiusuario

            La palabra multiusuario se refiere a una característica de ciertos sistemas operativos, aunque en ocasiones también puede aplicarse software otro tipo (ej. aplicaciones de base de datos) e incluso a sistemas de cómputo.

            En general se le llama multiusuario a la característica de un sistema operativo o programa que permite proveer servicio y procesamiento a múltiples usuarios simultáneamente. La acción se produce estrictamente en forma pseudo-simultánea bajo el concepto tiempo compartido.

            En ocasiones pueden aplicarse a programas de computadora de otro tipo e incluso a sistemas de cómputo. En contraposición existen los sistemas monousuario, que proveen servicio y procesamiento a un solo usuario a la vez. En la categoría de multiusuario se encuentran todos los sistemas que cumplen simultáneamente las necesidades de dos o más usuarios, que comparten los mismos recursos.

            Actualmente este tipo de sistemas se emplean especialmente en redes, pero los primeros ejemplos de sistemas multiusuario fueron los centralizados, aquellos en que múltiples usuarios compartían una única unidad central, con recursos de CPU, disco y memoria, a través del uso de múltiples terminales "bobas" (monitores y teclados).

            En un sistema multiusuario los recursos que se comparten son, normalmente, una combinación de:

  • Procesador.
  • Memoria.
  • Almacenamiento secundario (en disco duro).
  • Programas.
  • Periféricos como impresoras, plóteres, escáneres, etc.

De tal modo que múltiples usuarios utilizan una única computadora, comparten programas y usan un sistema operativo unificado. Cada usuario tiene la impresión de que es atendido simultáneamente.

            En los sistemas operativos antiguos, la idea de multiusuario guarda el significado original de que este puede ser utilizado por varios usuarios al mismo tiempo, permitiendo la ejecución concurrente de programas por parte de distintos usuarios.

            Aunque la idea original de tiempo compartido o el uso de terminales bobas no es ya el más utilizado. Esto debido a que los computadores modernos pueden tener múltiples procesadores, o proveer sus interfaces de usuario a través de una red, o en casos especiales, ya ni siquiera existe un solo computador físico proveyendo los servicios, sino un conjunto de computadoras en red o conectadas por un bus de alta velocidad y actuando en concierto para formar un clúster.

            El principio del concepto es facilitar compartir los recursos de procesamiento, almacenamiento y periféricos varios, reduciendo el tiempo ocioso en el (o los) procesador(es), e indirectamente implica reducción de los costos de energía y equipamiento para resolver las necesidades de cómputo de los usuarios.

            Ejemplos de sistemas operativos con característica de multiusuario son VMS y Unix, así como sus múltiples derivaciones (e.g. IRIX, Solaris, etc.) y los sistemas tipo Unix como Linux, FreeBSD y Mac OS X.

            En la familia de los sistemas operativos Microsoft Windows, desde Windows 95 hasta la versión Windows 2000, proveen soporte para ambientes personalizados por usuario, pero no admiten la ejecución de múltiples sesiones de usuario mediante el entorno gráfico.

            Las versiones de Windows 2000 server y Windows 2003 server ofrecen el servicio Terminal Server el cual permite la ejecución remota de diferentes sesiones de usuario.

Sistemas operativos multiusuario

            Definición

            Un sistema operativo multiusuario es un sistema operativo de computadora que permite que múltiples usuarios accedan a un único sistema con un sistema operativo en él. Se utiliza generalmente en grandes ordenadores centrales.

            Características del sistema operativo multiusuario

            Multitarea: al utilizar un sistema operativo multiusuario, podemos realizar varias tareas a la vez, es decir, podemos ejecutar más de un programa a la vez.

            Ejemplo: podemos editar un documento de Word mientras navegamos por Internet.

            Uso compartido de recursos: podemos compartir diferentes periféricos como impresoras, discos duros o podemos compartir un archivo o datos. Para ello, a cada usuario se le da una pequeña porción de tiempo de CPU.

            Procesamiento en segundo plano: significa que cuando los comandos no se procesan en primer lugar, luego se ejecutan en segundo plano mientras otros programas interactúan con el sistema en tiempo real.

            Tipos de sistema operativo multiusuario

            Los sistemas operativos multiusuario son de tres tipos:

            a. Sistemas distribuidos: en este, los diferentes equipos se gestionan de tal manera que pueden aparecer como un solo equipo. Entonces, se forma una especie de red a través de la cual pueden comunicarse entre sí.

            2. Sistemas con intervalos de tiempo (tiempo compartido): en esto, se asigna un período corto a cada tarea, es decir, a cada usuario se le asigna un intervalo de tiempo del tiempo de la CPU. Como sabemos, estos intervalos de tiempo son pequeños, por lo que a los usuarios les parece que todos están usando la computadora central al mismo tiempo.

            3. Sistemas multiprocesador: en este, el sistema operativo utiliza más de un procesador.







            Ventajas del sistema operativo multiusuario

            • Cuando una computadora en la red se ve afectada, esta no afecta a otra computadora en la red. Entonces, el sistema se puede manejar de manera eficiente.

            • Diferentes usuarios pueden acceder al mismo documento en su computadora.

            Ejemplo: si una computadora contiene el archivo pdf al que el otro usuario desea acceder, entonces el otro usuario puede acceder a ese archivo.

            • Usamos el sistema operativo multiusuario en el proceso de impresión para que diferentes usuarios puedan acceder a la misma impresora y el sistema operativo normal no deba realizar este proceso.

            • Las aerolíneas también usan este sistema operativo para reservar boletos.

            • Hacemos uso del sistema operativo multiusuario en profesores y personal bibliotecario para el manejo y búsqueda de libros. En estos, el registro del libro se almacena en una computadora mientras que los otros sistemas que están conectados pueden acceder a esa computadora para consultar los libros.

            Desventajas del sistema operativo multiusuario

            • A veces, compartir los datos se vuelve peligroso ya que los datos privados también se comparten.

            • El ataque de virus se lleva a cabo en todas las computadoras al mismo tiempo que las computadoras se comparten. Entonces, si una computadora se ve afectada, otra también se verá afectada.

            • Se comparte la información de la computadora.

            Sistemas operativos multitarea

            El sistema operativo multitarea proporciona la interfaz para ejecutar las múltiples tareas del programa por un solo usuario al mismo tiempo en un sistema informático.

            Por ejemplo, cualquier tarea de edición (Word) se puede realizar mientras otros programas se ejecutan al mismo tiempo (Chrome, Spotify, etc.).

            Tipos de sistema operativo multitarea

            Verdadera multitarea

            La verdadera multitarea es la capacidad de ejecutar y procesar múltiples tareas simultáneamente sin demora en lugar de cambiar tareas de un procesador a otro. Puede realizar un par de tareas en paralelo con el hardware o software subyacente.

            Multi tareas preventivo

            La multitarea preventiva es una tarea especial que se asigna al sistema operativo de la computadora, en la que se toma la decisión de cuánto tiempo dedica a una tarea antes de asignar otra tarea para usar el sistema operativo. El sistema operativo tiene el control para completar todo este proceso, por lo que se conoce como "preventivo".

            Multitarea cooperativa

            La multitarea cooperativa se conoce como “multitarea no preventiva”. El objetivo principal de la multitarea cooperativa es ejecutar la tarea actual y liberar la CPU para permitir la ejecución de otra tarea. Esta tarea se realiza llamando a monitor de tareas. El cambio de contexto se ejecuta cuando se llama a esta función.

            Ventajas del sistema operativo multitarea

q  Tiempo compartido

            En la cual, a todas las tareas se les asigna un tiempo específico, por lo que no necesitan tiempo de espera para la CPU.

q  Gestionar varios usuarios

            Este sistema operativo es más cómodo para manejar a varios usuarios al mismo tiempo, y varios programas pueden ejecutarse sin problemas sin degradar el rendimiento del sistema.

q  Memoria asegurada

            El sistema operativo multitarea tiene una gestión de memoria bien definida, porque este sistema operativo no proporciona ningún tipo de permiso de programas no deseados para desperdiciar la memoria.

q  Gran memoria virtual

            El sistema operativo multitarea contiene el mejor sistema de memoria virtual. Debido a la memoria virtual, cualquier programa no necesita mucho tiempo de espera para completar sus tareas, si se produce este problema, esos programas se transfieren a la memoria virtual.

q  Procesamiento en segundo plano

            El sistema operativo multitarea crea el mejor entorno para ejecutar los programas en segundo plano. Estos programas en segundo plano no son transparentes para los usuarios normales, pero estos programas ayudan a ejecutar otros programas sin problemas, como firewall, software antivirus y más.

q  Buena confiabilidad

            El sistema operativo multitarea proporciona diversas flexibilidades para múltiples usuarios, y ellos están más satisfechos con ellos. En el cual, todos los usuarios pueden operar programas únicos o múltiples sin problemas.

q  Usar varios programas

            Los usuarios pueden operar múltiples programas como navegador de Internet, PowerPoint, MS Excel, juegos y otras utilidades al mismo tiempo.

q  Optimizar los recursos informáticos

            El sistema operativo multitarea es capaz de manejar sin problemas los recursos de varias computadoras, como RAM, dispositivos de entrada / salida, CPU, disco duro y más.

            Desventajas del sistema operativo multitarea

q  Aumento de la memoria

            La computadora puede tener un rendimiento lento, debido a que ejecuta varios programas al mismo tiempo porque la memoria principal se carga más al cargar varios programas. La CPU no puede proporcionar un tiempo separado para cada programa y su tiempo de respuesta aumenta. La razón principal de este problema es que utiliza menos RAM de capacidad. Entonces, para obtener una solución, se puede aumentar la capacidad de RAM.

q  Refuerzo del procesador

            La computadora puede ejecutar programas lentamente debido a la baja velocidad de sus procesadores, y su tiempo de respuesta puede aumentar mientras se manejan múltiples programas. Necesita una mejor potencia de procesamiento para superar este problema.

q  Calentamiento de CPU

            Varios procesadores se vuelven más ocupados a la vez para ejecutar cualquier tarea en la naturaleza multitarea, por lo que la CPU produce más calor.

Fuentes:

https://www.tutorialspoint.com/operating_system/os_properties.htm#:~:text=The%20OS%20handles%20multitasking%20in,system%20at%20a%20reasonable%20cost.

http://digitalthinkerhelp.com/what-is-multitasking-operating-system-with-their-examples-types/

https://medium.com/@rmsrn.85/multitasking-operating-system-types-and-its-benefits-deb1211c1643

https://science.jrank.org/computer-science/Multitasking_Operating_Systems.html

https://ecomputernotes.com/fundamental/disk-operating-system/multitasking-operating-system

https://www.tiposde.com/sistema_operativo_multiusuario.html

https://www.oposinet.com/temario-de-gestion-administrativa-fp/temario-1-gestion-admistrativa/tema-47-explotacin-y-administracin-de-sistemas-operativos-monousuario-y-multiusuario/

https://ecomputernotes.com/fundamental/disk-operating-system/multi-user-operating-system