recursal/Fanatic-Fandom huggingface dataset:
Direccion IP(Internet Protocol)

Una dirección IP es una etiqueta numérica que identifica, de manera lógica y jerárquica, a un interfaz (elemento de comunicación/conexión) de un dispositivo (habitualmente una computadora) dentro de una red que utilice el protocolo IP (Internet Protocol), que corresponde al nivel de red del Modelo OSI. Dicho número no se ha de confundir con la dirección MAC, que es un identificador de 48bits para identificar de forma única la tarjeta de red y no depende del protocolo de conexión utilizado ni de la red. La dirección IP puede cambiar muy a menudo por cambios en la red o porque el dispositivo encargado dentro de la red de asignar las direcciones IP decida asignar otra IP (por ejemplo, con el protocolo DHCP). A esta forma de asignación de dirección IP se denomina dirección IP dinámica (normalmente abreviado como IP dinámica)
Arquitectura Segmentada

Esta arquitectura es similar al uso de una cadena de montaje en una fábrica de manufacturación. Una cadena de montaje saca partida del hecho de que el producto pasa atreves de varias etapas de producción. Extendiendo el proceso de producción de una cadena de montaje se puede trabajar sobre los productos en varias etapas como segmentación porque como en una tubería o cause en un extremo nuevo entradas se aceptan antes de que algunas entradas aceptadas con anterioridad aparezcan como salidas en el otro extremo.

Pipeline o tubería es un conjunto de elementos procesadores de datos conectados en serie en donde la salida de un elemento es la entrada del siguiente. Los elementos de pipeline son generalmente ejecutados en paralelos, en esos casos, debe haber un almacenamiento tipo buffer insertado entre elementos
Código fuente

El código fuente de un programa o software es un conjunto de líneas de un texto que debe debe seguir un computador para ejecutar algún programa.el código esta escrito por un programador pero en un primer estado no es ejecutable por el computador.pero se debe ser ejecutado por otro medio de el computador osea buscar algún lenguaje para que pueda ser ejecutado por el software.para esto usan sistemas de traducción (compiladores).
Voltaje

El voltaje es una magnitud física, con la cual podemos cuantificar o “medir” la diferencia de potencial eléctrico o la tensión eléctrica entre dos puntos, y es medible mediante un aparato llamado voltímetro. En cada país el voltaje estándar de corriente eléctrica tiene un número específico, aunque en muchos son compartidos. Por ejemplo, en la mayoría de los países de América Latina el voltaje estándar es de 220 voltios.
Tecnologia De Microondas

¿Tecnologías móvile: por qué es importante?

Hay muchas tecnologías avanzadas que ofrece a este mundo de la actualidad inventos y mejoras técnicas.

Pero el tipo de tecnologías móviles de respuesta han logrado recibir desde sus inicios parece ser realmente increíble.

Desde el principio, las tecnologías móviles han logrado mantener la atención del resto del mundo y en un tiempo muy inferior.

¿Por qué?

Así, la cantidad de connivencias ofrecidas por las tecnologías móviles ha hecho esto posible.

Ha logrado que el nivel de comunicación todo mejor, más conveniente y eficaz en todo el mundo.

Todo lo que necesita para mantener un teléfono móvil y
 son para llamar a cualquiera a pesar de que él o ella vive en este
mundo.

Esto es tan simple y esto es lo que hace a las tecnologías móviles más aceptado y admirado en todo el mundo.

Parece que la gente no puede permanecer o vivir sin las tecnologías móviles.

Rendimiento de calidad a través de media player.

Media player es útil para obtener los mejores resultados en un período de tiempo corto.

Rendimiento de este programa está mejorando con el
tiempo debido a diferentes tipos de actualizaciones en nuestro teléfono
móvil.

Insignia de este programa es reconocida por muchas personas.

Esto es debido a aumento en la demanda de media player.

Los usuarios de este programa se están extendiendo en el mundo y están contentos con los resultados.

Lista de archivos está presente en este programa y se pudieran guardar muchos archivos en la lista de reproducción.

Usuario es capaz de cargar los tipos de archivo que
son compatibles con windows media player para facilitar las operaciones y
 funciones con un rendimiento de calidad.

La fidelidad inalámbrica es todo en el dispositivo
móvil desde hace varios años y es la demanda de tecnologías móviles en
los teléfonos inteligentes.

Al principio, portadores de operador eran una única opción para acceder a internet desde los dispositivos móviles.

Era costoso y lento para usuario y después de la
introducción de la tecnología Wi-Fi en dispositivos de teléfono celular,
 los usuarios pueden muy fácilmente conectar a las redes del hogar y la
oficina, así como tener acceso a internet muy rápido e ininterrumpido.

Esto elimina costo para red de acceso, así como es más rápido que hacer uso de signos de portador del operador.
Plataformas abiertas

==
Plataformas abiertas ==
Los negocios no tienen que estar limitados a un radio de acción
delimitado por la presencia física, gracias a Internet se puede llegar a
 más clientes y más lejos.

Una plataforma abierta, permite la integración en sitios web ya
consolidados a la vez que permite futuras ampliaciones de
funcionalidades.

Todo diseñador web tarde o temprano se verá envuelto en un proyecto de
Ecommerce, no hace falta decir que la plataforma perfecta no existe.
Pero teniendo un amplio abanico de plataformas donde elegir seguro que
encuentras una aplicación de Ecommerce (Open Source) que se adapte a tu
proyecto.

A continuación se mostraran algunas plataformas abiertas, cada una con funcionalidades diferentes:

**1.- Magneto**

Sólo tienes que echarle una ojeada a las empresas que usan Magento,
Samsung o Nespresso entre otros, para hacerte una idea de la clase de
software que es.

Utilizado por 30.000 tiendas posee una versión gratuita y otra a
pagar (Enterprise Edition) que viene repleta de características y
añadidos muy útiles.

**2.- osCommerce**

osCommerce es el software de gestión para ecommerce mas popular, lo usan
 228.700 tiendas online y posee unos 5.800 (algunos son de pago) add-ons
 para potenciar tu tienda virtual.

**3.- OpenCart**
Objetivos de la IHC.

Para cumplir con los objetivos de la
norma ICH10 debemos pensar que el concepto de esta guía es potenciar y
complementar las Buenas prácticas de fabricación *(GMPs Good Manufacturing Practices)*
 por lo que esta guía, no consiste en aumentar el conjunto de requisitos
 si no en un cambio en el enfoque de gestión de lo existente.

En resumen, se trata de instaurar un
sistema de calidad flexible y eficaz basado en la filosofía de los
sistemas ISO, desarrollando las GMPs y apoyado en las normas  ICH Q8 y
Q9 para conseguir :

**1.-** Lograr la realización de un producto conforme

Establecer,
implementar, mantener un sistema para conseguir un producto con los
atributos según los requerimientos de pacientes, acorde con la demanda
de los profesionales del cuidado de la salud, las autoridades
legisladoras asi como otros clientes internos y externos.

**2.-** Establecer y mantener una herramienta /(metodología) de Control.

Para
desarrollar y utilizar un control eficaz, basado en el control de
procesos que garantice  la calidad del producto y su utilidad o
desempeño.

**3.-** Instaurar un proceso de mejora continua

Para identificar e implementar mejoras en los procesois enfocados a la calidad del producto.
 Es este sentido, la gestion de la calidad del riesgo es un factor clave para desarrollar este concepto.
Red de area metropolitana (MAN)

Una Red de área Metropolitana (*Metropolitan Area Network*o *MAN*, en inglés) es una red de alta velocidad (banda ancha) que dando cobertura en un área geográfica extensa, proporciona capacidad de integración de múltiples servicios mediante la transmisión de datos, voz y vídeo, sobre medios de transmisión tales como fibra óptica y par trenzado de cobre a velocidades que van desde los 2 Mbits hasta 155 Mbits.

El concepto de red de área metropolitana representa una evolución del concepto de red de área local a un ámbito más amplio, cubriendo áreas mayores que en algunos casos no se limitan a un entorno metropolitano sino que pueden llegar a una cobertura regional e incluso nacional mediante la interconexión de diferentes redes de área metropolitana.

Una red de área metropolitana puede ser pública o privada. Un ejemplo de MAN privada sería una gran cadena de tiendas departamentales con edificios distribuidos por la ciudad, transportando todo el tráfico de voz y datos entre edificios por medio de su propia MAN y encaminando la información externa por medio de los operadores públicos. Los datos podrían ser transportados entre los diferentes edificios, en forma de paquetes o sobre canales de ancho de banda fijos. Aplicaciones de vídeo pueden enlazar los edificios para reuniones, simulaciones o colaboración de proyectos.

Un ejemplo de MAN pública es la infraestructura que un operador de telecomunicaciones instala en una ciudad con el fin de ofrecer servicios de banda ancha a sus clientes localizados en esta área geográfica
Comentarios

Un comentario es un texto adicional que se añade al código para explicar su funcionalidad, bien a otras personas que lean el programa, o al propio autor como recordatorio. Los comentarios son una parte importante de la documentación de un programa. Los comentarios son ignorados por el compilador, por lo que no incrementan el tamaño del archivo ejecutable; se pueden por tanto, añadir libremente al código para que pueda entenderse mejor.

La programación orientada a objetos facilita mucho la lectura del código, por lo que lo que no se precisa hacer tanto uso de los comentarios como en los lenguajes estructurados. En Java existen tres tipos de comentarios

* Comentarios en una sola línea
* Comentarios de varias líneas
* Comentarios de documentación

Como podemos observar un comentario en varias líneas es un bloque de texto situado entre el símbolo de comienzo del bloque **/\***, y otro de terminación del mismo **\*/**. Teniendo encuentra este hecho, los programadores diseñan comentarios como el siguiente:

```

```

Los comentarios de documentación es un bloque de texto situado entre el símbolo de comienzo del bloque **/\***\*, y otro de terminación del mismo **\*/.** El programa *javadoc* utiliza estos comentarios para generar la documentación del código.

```
/** Este es el primer programa de una
serie dedicada a explicar los fundamentos del lenguaje Java */

```

Habitualmente, usaremos comentarios en una sola línea **/**/, ya que no tiene el inconveniente de aprendernos los símbolos de comienzo y terminación del bloque, u olvidarnos de poner este último, dando lugar a un error en el momento de la compilación. En la ventana de edición del Entorno Integrado de Desarrollo (IDE) los comentarios se distinguen del resto del código por el color del texto.

```
public class PrimeroApp{
    public static void main(String[] args) {
//imprime un mensaje
        System.out.println("El primer programa");
    }
}

```

Un procedimiento elemental de depuración de un programa consiste en anular ciertas sentencias de un programa mediante los delimitadores de comentarios. Por ejemplo, se puede modificar el programa y anular la sentencia que imprime el mensaje, poniendo delante de ella el delimitador de comentarios en una sola línea.

```
        //System.out.println("El primer programa");

```

Al correr el programa, observaremos que no imprime nada en la pantalla.
Trigger

Los Triggers o Disparadores son objetos que se asocian con tablas y se almacenan en la base de datos. Su nombre se deriva por el comportamiento que presentan en su funcionamiento, ya que se ejecutan cuando sucede algún evento sobre las tablas a las que se encuentra asociado. Los eventos que hacen que se ejecute un trigger son las operaciones de inserción (INSERT), borrado (DELETE) o actualización (UPDATE), ya que modifican los datos de una tabla.

Componentes principales

La estructura básica de un *trigger* es:

* **Llamada de activación**: es la sentencia que permite "disparar" el código a ejecutar.
* **Restricción**: es la condición necesaria para realizar el código. Esta restricción puede ser de tipo condicional o de tipo nulidad.
* **Acción a ejecutar**: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales.

Tipos

Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar:

* ***Row Triggers*** (o Disparadores de fila): son aquellas que se ejecutaran cada vez que se llama al disparador desde la tabla asociada al trigger
* ***Statement Triggers*** (o Disparadores de secuencia): son aquellos que sin importar la cantidad de veces que se cumpla con la condición, su ejecución es única.

Pueden ser de sesión y almacenados; pero no son recomendables[*cita requerida*].

Efectos y características

* No aceptan parámetros o argumentos (pero podrían almacenar los datos afectados en tablas temporales)
* No pueden ejecutar las operaciones *COMMIT* o *ROLLBACK* porque estas son parte de la sentencia SQL del disparador (únicamente a través de transacciones autónomas)
* Pueden causar errores de mutaciones en las tablas, si se han escrito de manera deficiente.

Ejemplo

Un sencillo ejemplo (para SQL Server) sería crear un *Trigger* para insertar un pedido de algún producto cuando la cantidad de éste, en nuestro almacén, sea inferior a un valor dado.

CREATE TRIGGER TR\_ARTICULO ON ARTICULOS AFTER UPDATE AS BEGIN INSERT INTO HCO\_ARTICULO (IDARTICULO, STOCK, FECHA) SELECT ID\_ARTICULO, STOCK, GETDATE() FROM INSERTED END

INSERT INTO ARTICULOS VALUES (1, 'MEMORIA', 12, '12/03/2014')

SELECT \* FROM ARTICULOS

UPDATE ARTICULOS SET STOCK = STOCK - 20 WHERE ID\_ARTICULO = 1

SELECT \* FROM HCO\_ARTICULO

Disparadores en MySQL

Los disparadores son soportados en MySQL a partir de la versión 5.0.2. Algunos de los soportes existentes son los disparadores para las sentencias *INSERT*, *UPDATE* y *DELETE*

El estándar SQL:2003 requiere que los disparadores den a los programadores acceso a las variables de un registro utilizando una sintaxis como *REFERENCING NEW AS n*. Por ejemplo, si un disparador está monitoreando los cambios en la columna *salario*, podría escribirse un disparador como:

CREATE TRIGGER ver\_salario

     BEFORE UPDATE ON empleados

     REFERENCING NEW ROW AS n, OLD ROW AS o

     FOR EACH ROW

     IF n.salario <> o.salario THEN

     END IF;
Consumer to Consumer(C2C)

Cuando una persona ya no utiliza algún producto y busca ofrecerlo en venta, puede utilizar el comercio electrónico como medio para realizar esta transacción con otro consumidor. Este tipo se conoce como *consumer to consumer (consumidor a consumidor).*

Esto es una evolución de las tradicionales y  ya conocidas ventas de garaje que está tomando fuerza en Internet. El consumidor final le adquiere al consumidor primario los productos que él ya no quiere o necesita y a los que les podrá dar una nueva utilidad a precios muy accesibles. Se sigue el mismo proceso de compra del comercio electrónico tradicional. Algunas de las ventajas son:

* Reutilización de productos.
* Compras a menores precios y con ofertas únicas en el medio.
* Alcance más allá de un garaje o patio.
Software

Literalmente "software" significa "mercancía suave", lo cual no ayudaría a comprender el significado en castellano. Software se refiere al conjunto de instrucciones preparadas para ser interpretadas por una computadora que realiza procesamiento electrónico de datos.

Todos los componentes lógicos necesarios para realizar una tarea determinada en un sistema informático entran dentro de la clasificación de software, palabra aceptada por la Real Academia Española, dada su utilización popular.

En verdad el software no se refiere sólo a las instrucciones o algoritmos que se ejecutan en una computadora, comprende también la documentación y datos asociados que forman parte del sistema de computación. Así, una canción en formato Mp3 u OGG es software porque ha sido digitalizada (pasada a números).

El software es esencialmente la parte lógica de una computadora, debemos tener en cuenta, también, para comprender el fenómeno, que en francés "software" se dice "logiciel".

Alan Turing desarrolló en 1936 la teoría que conforma la base del software en la actualidad con su ensayo llamado Los números computables.
Teorema de máxima transferencia de potencia

El teorema de máxima transferencia de potencia establece que, dada una fuente, con una resistencia de fuente fijada de antemano, la resistencia de carga que maximiza la transferencia de potencia es aquella con un valor óhmico igual a la resistencia de fuente. También este ayuda a encontrar el teorema de Thevenin y Norton.El teorema establece cómo escoger (para maximizar la transferencia de potencia) la resistencia de carga, una vez que la resistencia de fuente ha sido fijada, no lo contrario. No dice cómo escoger la resistencia de fuente, una vez que la resistencia de carga ha sido fijada. Dada una cierta resistencia de carga, la resistencia de fuente que maximiza la transferencia de potencia es siempre cero, independientemente del valor de la resistencia de carga.
Operadores

Un operador es un símbolo (+, -, \*, /, etc) que tiene una función predefinida (suma, resta, multiplicación, etc) y que recibe sus argumentos de manera infija, en el caso de tener 2 argumentos de manera prefija o postfija, en el caso de tener uno solo (  , o bien,  ).

**TIPOS DE OPERADORES**

* Operadores aritméticos
* Operadores relacionales
* Operadores lógicos
* Operadores a nivel de bit (bitwise operators)
* Operadores especiales

Operadores aritméticos

 Los operadores aritméticos nos permiten, básicamente, hacer cualquier operación aritmética, que necesitemos (ejemplo: suma, resta, multiplicación, etc). En la siguiente tabla se muestran los operadores de los que disponemos en C y su función asociada.

Operadores relacionales

Al igual que en matemáticas, estos operadores nos permitirán evaluar las relaciones (igualdad, mayor, menor, etc) entre un par de operandos (en principio, pensemos en números). Los operadores relacionales de los que disponemos en C son:

 `!=` | Distinto

El resultado de cualquier evaluación de este tipo, es un valor ``cierto'' (true) o ``falso'' (false). La mayoría de lenguajes tienen algún tipo predefinido para representar estos valores (boolean, bool, etc); sin embargo en C, se utilizan valores enteros para representar esto:

 cierto (true)

Operadores lógicos

Como operadores lógicos designamos a aquellos operadores que nos permiten ``conectar'' un par de propiedades (al igual que en lógica):

```
numero = 2701; if ( EsPrimo(numero) && (numero > 1000) ){ /* Ejecutaremos este código si numero */ /* es primo y numero es mayor que 100 */ }

```

Los operadores lógicos de los que disponemos en C son los siguientes:

**Tabla:** Operadores lógicos.

 `!` | Negación

Al igual que con la igualdad hay que tener especial cuidado con los operadores && y , ya que si ponemos sólamente un & o un  , nos estamos refiriendo a un ``and'' o un ``or'' a nivel de bit, por lo que el código puede que no haga lo que queremos (o que algunas veces lo haga y otras veces no).

Operadores a nivel de bit (bitwise operators)

En determinadas ocasiones nos puede interesar manipular datos a nivel de bit; por ejemplo activar o desactivar flags. Un flag es una ``variable'' que puede tomar 2 valores, por lo que se suele representar con un bit. Debido a que en C (y en la mayoría de lenguajes de programación) no existen tipos predefinidos de un bit, lo que se suele hacer es agrupar varios flags en una variable de tipo entero (``short int'', ``int'' o lo que queramos).

Para acceder a estos flags o simplemente para activarlos es necesario utilizar operadores a nivel de bit. Veámoslo en un ejemplo.

La llamada al sistema ``open'' (en POSIX) necesita que se le especifique que hacer con el fichero a abrir: crearlo si no existe, sobreescribirlo si existe, no sobreescribirlo, etc.

**Tabla 3.5:** Operadores a nivel de bit

 &
 >>
 <<
E-Bussines

El mundo electrónico o "mundo virtual" ya es una
realidad. A nuestro alrededor, cada vez más empresas buscan acercarse a
sus clientes, vincularse a sus proveedores o reducir sus costos con
soluciones de e-business. Es un nuevo mercado, de cambios vertiginosos, dónde las decisiones de negocio se combinan con decisiones tecnológicas.

Hacer e-business significa poner los procesos de
negocios de su empresa en Internet. Esto no es tan fácil como diseñar un
 página Web o instalar un paquete de software, se necesita experiencia
en Internet, experiencia en Negocios y utilizar las herramientas
apropiadas.

Miles de compañías en todo el mundo y en Latinoamérica han entrado con paso firme en el mundo del e-business. Son empresas grandes, medianas y pequeñas que están utilizando los recursos
 de Internet para ser más eficientes y hacer mejores negocios.

Nuestra empresa le abre ahora las puertas para
ingresar en el mundo de e-business. No importa si su empresa es grande, mediana o pequeña, o si su presupuesto en tecnología es ampio o reducido, disponemos de una extensa gama de productos y servicios que se
 ajustan a sus requerimientos.
Constructor

Un objeto de una clase se crea llamando a una función especial denominada constructor de la clase. El constructor se llama de forma automática cuando se crea un objeto, para situarlo en memoria e inicializar los miembros dato declarados en la clase. El constructor tiene el mismo nombre que la clase. Lo específico del constructor es que no tiene tipo de retorno.

```
class Rectangulo{
	int x;
	int y;
	int ancho;
	int alto;
   Rectangulo(int x1, int y1, int w, int h){
	x=x1;
	y=y1;
	ancho=w;
	alto=h;
   }
}

```

El constructor recibe cuatro números que guardan los parámetros *x1*, *y1*, *w* y *h*, y con ellos inicializa los miembros dato *x*, *y*, *ancho* y *alto*.

Una clase puede tener más de un constructor. Por ejemplo, el siguiente constructor crea un rectángulo cuyo origen está en el punto (0, 0).

```
class Rectangulo{
	int x;
	int y;
	int ancho;
	int alto;
   Rectangulo(int w, int h){
	x=0;
	y=0;
	ancho=w;
	alto=h;
   }
}

```

Este constructor crea un rectángulo de dimensiones nulas situado en el punto (0, 0),

```
class Rectangulo{
	int x;
	int y;
	int ancho;
	int alto;
   Rectangulo(){
	x=0;
	y=0;
	ancho=0;
	alto=0;
   }
}

```
Coplanificacion

=== Coplanificación.

# =

**Modalidad 1:** Planificación centralizada
• Existe una sola cola para todos los procesos, o varias colas con distintas prioridades.
• Cada proceso puede correr en cualquier procesador.
• Las tareas de planeación son mucho menos importantes con varios  procesadores que si existe un único procesador.

**Modalidad 2:** Planificación distribuida
• Para cada procesador se hace una planificación local (si tiene varios procesos en ejecución) independientemente de lo que hacen los otros procesadores.
• La planificación independiente no es eficiente cuando se ejecutan en distintos procesadores un grupo de procesos relacionados entre sí.
• Se necesita una forma de garantizar que los procesos con comunicación frecuente se ejecuten de manera simultánea.

El concepto de coplanificación significa que el S.D. al realizar la planificación de procesos toma en cuenta los patrones de comunicación entre los procesos,
 es decir que hace una planificación prospectiva del comportamiento de
los procesos con base en sus patrones de comunicación. Para cumplir con su objetivo,la coplanificación debe garantizar que todos los miembros del grupo se ejecuten al mismo tiempo.
Podemos usar una una matriz conceptual donde las columnas son las tablas de procesos  de los procesadores y las filas son espacios de tiempo. De esta manera en cada  columna se poseen todos los procesos que se tienen que ejecutar en un  determinado procesador en todos los tiempos. • Cada procesador luego es planificado a través de un algoritmo de planificación Round Robin donde todos los procesadores ejecutan el proceso que les corresponde en el espacio “0” durante un cierto período fijo; luego todos los procesadores ejecutan el proceso en el espacio “1”, durante un cierto período fijo, etc.
Un tema importante es que se deben mantener sincronizados los intervalos de  tiempo entre las distintas máquinas (y procesadores) y que todos los miembros de un grupo de procesos deben ser colocados en el mismo
número de espacio de tiempo pero en procesadores distintos.

El concepto de coplanificación toma
 en cuenta los patrones de comunicación entre los procesos durante la
planificación, es decir en el momento previo de configuración. Debe garantizar que todos los miembros del grupo se ejecuten al mismo tiempo; para ello se emplea una matriz conceptual en la que las filas son espacios de tiempo y las columnas son las tablas de procesos de los procesadores.
Business to employee(B2E)

La relación comercial *business to employee* (negocio a empleado) se centra principalmente entre una empresa y sus empleados. Es decir, son las ofertas que la propia empresa puede ofrecer a sus empleados directamente desde su tienda online o portal de Internet, con ofertas atractivas que servirán de impulso para una mejora en el desempeño laboral. Este tipo de comercio electrónico se ha convertido en un tema novedoso entre empresas para generar competencia entre sus empleados.

Más allá de una opción, es un portal en donde los empleados pueden utilizar algunos recursos de la empresa. El empleado tendrá la posibilidad de hacer trámites internos en este micro sitio empresarial, que  una vez en la red, llegará a manos del encargado. Algunas de sus ventajas son:

* Reducción de costos y tiempos en actividades internas.
* Comercio electrónico interno, con oportunidades únicas para los empleados.
* Motiva y fideliza al empleado con la empresa.
* Informa, en el momento y en línea para consultar en cualquier momen
Hardware

Literalmente, "hardware" significaría "mercancía dura". Con este concepto se intenta designar a todos los componentes tangibles en un sistema electrónico, es decir, lo que podemos tocar: teclado, mouse, monitor, chips, placas, impresoras, etc. Se podría realizar una analogía con el ser humano y decir que el software es el pensamiento, mientras que el hardware es el cuerpo.

Es confuso relacionar al hardware con componentes "reales" o "físicos" porque esto supondría que los sistemas informáticos poseen componentes no físicos o incluso irreales. El hardware no funcionaría o no tendría utilidad sin un "software", la parte "intangible" y lógica de un sistema informático: un conjunto de instrucciones a realizar por parte del hardware. Además, esta terminología se encuentra hoy tan asentada y difundida que, si bien algunos traductores recomiendan de forma enfática sustituir la palabra software por la idea de "soporte lógico", no existe el menor consenso para echar por tierra el anglicismo "hardware" para dar lugar a una expresión equivalente en nuestra lengua.

En una PC o sistema informático similar (teléfono celular, reproductores portátiles), podemos distinguir entre diferentes componentes: periféricos de entrada (mouse, teclado, escaner, entrada de micrófono, cámara web, lápiz óptico), de salida (parlantes, impresora, monitor [salvo que sea touchscreen]), mixtos (discos rígidos, módems, memorias USB, pantallas interactivas, unidades de lectura de discos ópticos), la Unidad Central de Procesamiento (central processment unit o CPU, el "cerebro" de la máquina), la memoria RAM (almacenamiento temporario de datos, lugar donde se ejecutan programas en conjunto con el CPU y otros componentes de mayor complejidad) y el hardware gráfico (tarjetas de vídeo, las cuales poseen su propia unidad de procesamiento central).
SCPC (Single Channel per Carrier)

Como en el sistema SPADE cada ranura tiene su propia frecuencia portadora y su ancho de banda es ocupado por un solo canal telefónico modulado, esta forma de transmisión se le llama **canal único por portadora** o **SCPC**, y aún cuando en este caso la asignación es por demanda, es fácil comprender que puede haber otros sistemas domésticos o internacionales con SCPC pero de asignación fija; por ejemplo, varios canales individuales SCPC de asignación fija entre México y España. Así mismo, e independientemente de sí se tenga asignación fija o por demanda, un canal SCPC no necesariamente debe conducir telefonía análoga, sino que puede contener un canal telefónico digitalizado o un canal de datos de baja velocidad transmitido con modulación digital, de la cual hay varias ocupaciones utilizadas a la vez en la práctica. El servicio SCPC (Single Channel per Carrier) provee al cliente de un enlace dedicado transparente al protocolo de comunicaciones o aplicación que se utilice su red privada. El servicio establece una portadora por cada enlace (a manera de un canal dedicado), el cual por lo general es de naturaleza Point to Point (punto a punto), lo que quiere decir que interconecta 2 puntos fijos a través de un canal privado, utilizado para la o las aplicaciones que el cliente requiera. El circuito en sí es transparente (clear channel) al tipo de aplicación a utilizarse, dependiendo ésta de los terminales y los controladores de comunicaciones que se instalen en los extremos del circuito permitiendo así la comunicación de todo tipo de información (voz, datos, fax y vídeo**)**.

El servicio SCPC está dirigido principalmente a transmisiones medianas y pesadas de datos, lo cual no significa que el canal no pueda ser multiplexado para brindar a través del mismo enlace servicio de voz, datos y vídeo. En general la utilización que se le dé al enlace depende 100% de la capacidad de los terminales a utilizarse. Un requerimiento típico es el de los clientes que desean enlazar su casa matriz con bodegas o centros de procesamiento ubicados en localidades que no cuentan con acceso telefónico o de existir, es deficiente; se aprovecha así el enlace satelital para tener un medio de comunicación confiable y disponible a tiempo completo para además de cubrir la necesidad fundamental de transferencia de datos, utilizar una fracción del ancho de banda asignado también para un servicio de voz a manera de conexión telefónica.

La tecnología SCPC ofrece ventajas como:

* Enlaces satelitales nacionales e internacionales con velocidades desde 9.6 kbps hasta 2.048 Mbps, con posibilidad de utilizar Frame Relay**.**
* Enlaces punto a punto entre las ciudades por medio de estaciones terrenas ubicadas estratégicamente.
* Administración de la capacidad del canal de acuerdo a sus características de tráfico.
* Alta disponibilidad, confiabilidad y seguridad de la información transmitida.
Encapsulamiento

El concepto de encapsulación

La encapsulación es un mecanismo que consiste en organizar datos y métodos de una estructura, conciliando el modo en que el objeto se implementa, es decir, evitando el acceso a datos por cualquier otro medio distinto a los especificados. Por lo tanto, la encapsulación garantiza la integridad de los datos que contiene un objeto.

### Ocultación de datos

El usuario de una clase en particular no necesita saber cómo están estructurados los datos dentro de ese objeto, es decir, un usuario no necesita conocer la implementación Al evitar que el usuario modifique los atributos directamente y forzándolo a utilizar funciones definidas para modificarlos (llamadas interfaces), se garantiza la integridad de los datos (por ejemplo, uno puede asegurarse de que el tipo de datos suministrados cumple con nuestras expectativas bien que los se encuentran dentro del periodo de tiempo esperado).

La encapsulación define los niveles de acceso para elementos de esa clase. Estos niveles de acceso definen los derechos de acceso para los datos, permitiéndonos el acceso a datos a través de un método de esa clase en particular, desde una clase heredada o incluso desde cualquier otra clase. Existen tres niveles de acceso:

* **público**: funciones de toda clase pueden acceder a los datos o métodos de una clase que se define con el nivel de acceso *público*. Este es el nivel de protección de datos más bajo
* **protegido**: el acceso a los datos está restringido a las funciones de clases heredadas, es decir, las funciones miembro de esa clase y todas las subclases
* **privado**: el acceso a los datos está restringido a los métodos de esa clase en particular. Este es nivel más alto de protección de datos
Conversion de datos en java

**CONVERSIÓN DE TIPOS DE DATOS EN JAVA**

En Java es posible transformar el tipo de una variable u objeto en otro diferente al original con el que fue declarado. Este proceso se denomina **"conversión", "moldeado" o "tipado"** y es algo que debemos manejar con cuidado pues un mal uso de la conversión de tipos es frecuente que dé lugar a errores.

Una forma de realizar conversiones consiste en colocar el tipo destino entre paréntesis, a la izquierda del valor que queremos convertir de la forma siguiente: Tipo VariableNueva = (NuevoTipo) VariableAntigua;

Por ejemplo: int miNumero = (int) ObjetoInteger;      char c = (char)System.in.read();

En el primer ejemplo, extraemos como tipo primitivo int el valor entero contenido en un campo del objeto Integer. En el segundo caso, la función read devuelve un valor int, que se convierte en un char debido a la conversión (char), y el valor resultante se almacena en la variable de tipo carácter c.

El tamaño de los tipos que queremos convertir es muy importante. No todos los tipos se convertirán de forma segura. Por ejemplo, al convertir un long en un int, el compilador corta los 32 bits superiores del long (de 64 bits), de forma que encajen en los 32 bits del int, con lo que si contienen información útil, ésta se perderá. Este tipo de conversiones que suponen pérdida de información se denominan “conversiones no seguras” y en general se tratan de evitar, aunque de forma controlada pueden usarse puntualmente.

De forma general trataremos de atenernos a la norma de que **"en las conversiones debe evitarse la pérdida de información".** En la siguiente tabla vemos conversiones que son seguras por no suponer pérdida de información.

 **float** | Double

No todos los tipos se pueden convertir de esta manera. Como alternativa, existen otras formas para realizar conversiones.

**MÉTODO VALUEOF PARA CONVERSIÓN DE TIPOS**

El método valueOf es un método sobrecargado aplicable a numerosas clases de Java y que permite realizar conversiones de tipos. Veamos algunos ejemplos de uso.

 **miString = miString.valueOf (miDouble)** | El double se transforma en String. Igualmente aplicable a float, int, long.

**No todas las conversiones son posibles.** Muchas veces por despiste los programadores escriben instrucciones de conversión incoherentes como miInteger = (int) miString;. El resultado en este caso es un error de tipo “Inconvertible types”. Un uso típico de valueOf es para convertir tipos primitivos en objetos.
Red de acceso

**Red de acceso** hace mención a aquella parte de la red de comunicaciones que conecta a los usuarios finales con algún proveedor de servicios y es complementaria al núcleo de red. Muchos de los avances tecnológicos que se pueden percibir directamente en el área de las telecomunicaciones corresponden a esta parte de la red, la misma que puede subdividirse en red de distribución/agregación y red de último kilómetro. Esta denominación es independiente de los medios o protocolos utilizados.

Aún cuando en la literatura y en la industria se encuentran una gran cantidad de posibles tecnologías, en la práctica sólo se pueden identificar dos grandes tipos de redes de acceso:

* Acceso por cable físico
* Acceso inalámbrico

En el primer caso, encontramos accesos mediante un cable que puede ser tan simple como un par telefónico o tan especializado como un cable de fibra óptica.

En el segundo caso, los avances más importantes se dan en los accesos de tipo celular, WiFi y recientemente WiMax.
Matematicas discretas

Las matemáticas discretas son un área de las matemáticas encargadas del estudio de los conjuntos discretos: finitos o infinitos numerables.

En oposición a las matemáticas continuas, que se encargan del estudio de conceptos como la continuidad y el cambio continuo, la matemáticas discretas estudian estructuras cuyos elementos pueden contarse uno por uno separadamente. Es decir, los procesos en matemáticas discretas son contables, como por ejemplo, los números enteros, grafos y sentencias de lógica.1

Mientras que el cálculo infinitesimal está fundado en los números reales que no son numerables, la matemática discreta es la base de todo lo relacionado con los números naturales o conjuntos numerables.

Son fundamentales para la ciencia de la computación, porque sólo son computables las funciones de conjuntos numerables.

La clave en matemáticas discretas es que no es posible manejar las ideas de proximidad o límite y suavidad en las curvas, como se puede en el cálculo. Por ejemplo, en matemáticas discretas una incógnita puede ser 2 ó 3, pero nunca se aproximará a 3 por la izquierda con 2.9, 2.99, 2.999, etc. Las gráficas en matemáticas discretas vienen dadas por un conjunto finito de puntos que se pueden contar por separado; es decir, sus variables son discretas o digitales, mientras que las gráficas en cálculo son trazos continuos de rectas o curvas; es decir, sus variables son continuas o analógicas.

**2.-**La matemática discreta es la parte de las matemáticas que estudia objetos discretos. Definir el concepto discreto sin entrar en demasiadas formalidades no es sencillo pero podemos apelar a ciertos ejemplos matemáticos conocidos y contraponerlo al concepto de continuo que es la idea central del curso de Bases de Matemáticas. Lo discreto es lo finito o lo que, si no es finito, presenta el aspecto de los números naturales, objetos bien separados entre sí; lo continuo es lo no finito, lo infinitesimalmente próximo, como los números reales, y de ahí el concepto de límite y las ideas que de dicho concepto se derivan.
La matemática discreta surge como una disciplina que unifica diversas áreas tradicionales de las Matemáticas (combinatoria, probabilidad, geometría de polígonos, aritmética, grafos,...), como consecuencia de, entre otras cosas, su interés en la informática y las telecomunicaciones: la información se manipula y almacena en los ordenadores en forma discreta (palabras formadas por ceros y unos), se necesita contar objetos (unidades de memorias, unidades de tiempo), se precisa estudiar relaciones entre conjuntos finitos (búsquedas en bases de datos), es necesario analizar procesos que incluyan un número finito de pasos (algoritmos).

**3.-**Parte de la matemática que estudia los objetos Discretos (distintos o no conectados)

Son usadas en donde los objetos son contados, cuando las relaciones entre conjuntos finitos.

son estudiados y cuando los procesos que involucran un numero finito de pasos son analizados.
Dispositivos de entrada y salida

Un dispositivo de entrada o salida puede ser cualquier tipo de unidad funcional o subsistema que forma parte del conjunto integral del sistema del ordenador. En todos los casos, pueden enviar señales o procesar información para establecer distintos tipos de comunicación interna y externa. El término entrada y salida o input / output (del inglés) también refiere a la ejecución de acciones u operaciones a través de dichos dispositivos. La mayoría de estos dispositivos permiten tanto la entrada como la salida de datos.

Típicamente, las unidades de input y output en un ordenador pueden ser el teclado, ratón o mouse, joystick, micrófono, webcam, escáner, monitor, altavoz o parlantes, auriculares, impresora, proyector, unidades de almacenamiento, CD o DVD, módem, tarjeta de red, USB y fax, entre otros.

El funcionamiento de estos dispositivos depende de su propósito, pero también puede variar y ser, alternativamente, de entrada, o bien, de salida. Por ejemplo, para un teclado el movimiento de la mano del usuario es una entrada de datos, mientras que la señal eléctrica que envían al ordenador es una salida. Lo mismo ocurre con casi cualquiera de estos aparatos.

Hoy en día es prácticamente imposible el uso de un ordenador sin el empleo de uno o más dispositivos de esta índole. Muchos de ellos permiten no sólo convertir información y agilizar el uso de las funcionalidades de una computadora, sino también conectarla con otros ordenadores, brindarle acceso a Internet, operar con dispositivos analógicos y hasta combinar sus funciones entre sí.

La planificación de E/S o de entrada y salida hace referencia a la organización que realiza un sistema operativo respecto del orden en que las diversas peticiones de lectura y escritura serán ejecutadas. Es decir, la prioridad que otorgará a las distintas unidades de input y output.
Red de area amplia (WAN)

Una red de área amplia puede ser descripta como un grupo de redes individuales conectadas a través de extensas distancias geográficas. Los componentes de una red WAN típica incluyen:

* Dos o más redes de área local (LANs) independientes.
* Routers conectados a cada LAN
* Dispositivos de acceso al enlace (Link access devices, LADs) conectados a cada router.
* Enlaces inter-red de área amplia conectados a cada LAD

La combinación de routers, LADs, y enlaces es llamada inter-red.

La inter-red combinada con las LANs crea la WAN.

Un dispositivo de acceso al enlace (LAD) es necesario para convertir las señales para ser transmitidas desde la LAN en un formato compatible con el tipo de enlace de área amplia inter-red utilizado.

Las conexiones entre LADs pueden ser punto a punto o a través de la red intermedia de un proveedor de servicios de red.

Nota: Una red intermedia se define como una red utilizada para conectar dos o más redes.

En un enlace punto a punto, los LADs se comunican directamente entre sí sobre un circuito de telecomunicaciones. Este circuito puede ser temporal, como el de una red conmutada de telefonía pública, o permanente, por ejemplo una línea de datos dedicada contratada a un proveedor.

Algunos ejemplos de LAD incluyen:

* Modem.
* Data service unit/channel service unit (DSU/CSU).
* Terminal adapter (TA).
* Packet assembler/disassembler (PAD).
* Frame Relay access device (FRAD).

En un enlace de red intermedia, los LAD son conectados una red de transporte de datos, controlada y administrada por uno o más proveedores de servicios de red. Las conexiones al proveedor de servicios de red son realizadas usando enlaces punto a punto temporales o permanentes. Una vez que los datos son recibidos por el proveedor de servicios de red, son transferidos hasta la LAN de destino a través de una red de área amplia inter-red dedicada.

Los proveedores de servicio de red reciben múltiples flujos de datos en forma simultánea desde varias organizaciones. Todos los datos son transferidos un paquete a la vez por la red del proveedor de servicios, potencialmente con cada paquete tomando un camino diferente. El enrutamiento se basa en la información de direccionamiento incluida en el paquete.

Existen muchas conexiones y rutas posibles en la topología en forma de malla de la red del proveedor. Varias tecnologías de enrutamiento y conmutación a alta velocidad son utilizadas por el proveedor de servicios de red para dirigir los paquetes hasta su destino. Dado que existen múltiples caminos, un paquete puede ser enrutado para evitar cualquier falla o área congestionada de la red, el enrutamiento del paquete es dinámico.

Cuando se usan las redes de alta velocidad de un proveedor de servicos de red como enlaces de red intermedios, no existe un circuito predefinido de extremo a extremo entre las LAN comunicadas; es por ello que las tasas de transmisión de la inter-red pueden ser aumentadas o disminuidas según se requiera mediante acuerdos con el proveedor de servicios de red.

Internet es la red intermedia global más grande. Otros ejemplos incluyen redes satelitales y de relevo de tramas (Frame Relay)
Algebra de conjuntos

El álgebra de conjuntos se encarga de definir las operaciones, reglas y propiedades que podemos aplicar a los conjuntos. Podemos decir que un conjunto es una agrupación, variedad, clase o colección de objetos que se denominan elementos del conjunto. Si utilizamos símbolos como S podemos ver representado que otro elemento “a” pertenezca o está contenido en el conjunto S, o lo que es igual, el conjunto S contendrá al elemento a. Un conjunto S se define si dado un objeto a, se sabe con seguridad que o a ε S o a ε/ S (esto significa que, a no pertenece a S). Un conjunto se representa habitualmente mediante llaves que contienen sus elementos, ya sea escribiendo todos y cada uno de los elementos, o dando una fórmula, regla o proposición que los describa.

Los diferentes tipos de conjuntos que podemos encontrar son los siguientes:

A un conjunto, cualquiera sea lo nombraremos con una letra mayúscula.

El **Conjunto universal** es aquel que contiene a todos los conjuntos de los que estemos relacionando, lo designaremos con la letra u mayúscula.

El **elemento de un conjunto**, es un objeto Individual que forma parte de ese conjunto. α∈A.

Dos **conjuntos** son**iguales** si están formados por los mismos elementos.

El **conjunto vacío** es aquel que no tiene ningún elemento, lo nombraremos con el siguiente símbolo ø . Estamos evidentemente de acuerdo en que si no contiene ningún elemento, no tenemos un conjunto, sin embargo la definición de conjunto vacío o nulo como tal es sumamente útil.

Dado un conjunto A, se llama complementario del mismo, y se representa por Ac, al conjunto que se forma por los elementos del universo que no son de A.

Se dice que B es **subconjunto** de A, y se representa B ⊂ A , si todos los elementos de B pertenecen a A. Diremos también que B se incluye en A.

Dados dos conjuntos A y B, se llama **unión**de ambos, y se representa A ∪ B, al conjunto formado por los elementos que pertenecen a A o a B.

Se llama **intersección** y se representa A ∩ B, al conjunto formado por los elementos que pertenecen a A y a B.

Si dos conjuntos no tienen elementos comunes, se llaman d**isjuntos** y su intersección es el conjunto vacío.

Veamos a continuación un ejemplo un ejemplo más claro:

*La unión de los conjuntos (A U B) es el conjunto de todos los elementos que pertenecen a A a B o a ambos.*

La intersección de conjuntos representada como (A ∩ B) es el conjunto de todos aquellos elementos que pertenecen tanto al conjunto A como al B.

El complemento de un conjunto Ac es el conjunto que se forma por los elementos no pertenecientes a A.

*Podemos observar también, la diferencia de conjuntos de complemento relativo (A-B) la diferencia de A y B, es el conjunto de todos los elementos de A que no pertenecen a su vez B.*

Veremos a continuación una tabla con las propiedades del álgebra de conjuntos el la cual podemos observar algunas conocidas propiedades tales, como la distributiva. Asociativa y conmutativa:
Skyhold

**Skyhold** is a magically floating city and the capital of Dragonhorn. Skyhold is home to mostly metallic dragonborn, and a number of metallic dragons. The city is ruled by a council of clan elders and the Wyrmspeaker. The Wyrmspeaker is a special representative of the city's dragons, as the dragons rarely attend the council meetings.
JDBC

***Java Database Connectivity***, más conocida por sus siglas **JDBC**, es una API que permite la ejecución de operaciones sobre bases de datos desde el lenguaje de programación Java, independientemente del sistema operativo donde se ejecute o de la base de datos a la cual se accede, utilizando el dialecto SQL del modelo de base de datos que se utilice.

El API JDBC se presenta como una colección de interfaces Java y métodos de gestión de manejadores de conexión hacia cada modelo específico de base de datos. Un manejador de conexiones hacia un modelo de base de datos en particular es un conjunto de clases que implementan las interfaces Java y que utilizan los métodos de registro para declarar los tipos de localizadores a base de datos (URL) que pueden manejar. Para utilizar una base de datos particular, el usuario ejecuta su programa junto con la biblioteca de conexión apropiada al modelo de su base de datos, y accede a ella estableciendo una conexión; para ello provee el localizador a la base de datos y los parámetros de conexión específicos. A partir de allí puede realizar cualquier tipo de tarea con la base de datos a la que tenga permiso: consulta, actualización, creación, modificación y borrado de tablas, ejecución de procedimientos almacenados en la base de datos, etc.

JDBC ofrece el paquete `java.sql`, en el que existen clases muy útiles para trabajar con bases de datos.

 Connection
 Statement
 PreparedStatement
 ResultSet