Chuletas y apuntes de Informática y Telecomunicaciones de Primaria

Arquitectura de Computadoras: CPU, Memoria y Sistema Binario

Informática y Telecomunicaciones4,76 KB

Arquitectura de Computadoras

Unidad Aritmético-Lógica (ALU)

En computación, la unidad aritmético-lógica (ALU, por sus siglas en inglés Arithmetic Logic Unit) es un circuito digital que calcula operaciones aritméticas (suma, resta, multiplicación, etc.) y lógicas (si, y, o, no) entre dos números. Diversos circuitos electrónicos necesitan realizar algún tipo de operación aritmética; incluso un reloj digital usa una ALU minúscula para sumar 1 al tiempo actual y verificar si debe activar la alarma. Los circuitos más complejos se encuentran en los microprocesadores modernos. Estos procesadores tienen una ALU muy compleja y potente. De hecho, un microprocesador moderno puede tener múltiples núcleos, cada uno con varias unidades de...

Continuar leyendo "Arquitectura de Computadoras: CPU, Memoria y Sistema Binario" »

Problemes amb el Programa Motor: Adaptació i Flexibilitat

Informática y Telecomunicaciones3,08 KB

Problemes amb el Programa Motor

Si tinc un problema motor, hi ha diversos aspectes a considerar:

  • No sabem com s’adquireixen les habilitats noves.
  • Emmagatzemar els programes motors i seleccionar-los seria molt difícil, perquè tindríem infinits.

Teoria del Senyor Schmidt

A mesura que el senyor Schmidt anava perfeccionant la teoria, va corregir la idea dels programes motors, dient que es creaven programes motors generals que permetien adaptar-se a diferents situacions. Els programes motors presenten unes variables:

Invariants

Les invariants són variables que no es poden modificar; si es modifiquen, s’està canviant l’habilitat i se n’està creant una de nova. Això es coneix com a canvi del programa motor (canvi d’habilitat). Trobem tres

...

Continuar leyendo "Problemes amb el Programa Motor: Adaptació i Flexibilitat" »

Conceptos Esenciales de Java: Clases Abstractas, Interfaces, SQL y JDBC para Conectividad de Bases de Datos

Informática y Telecomunicaciones3,34 KB

Conceptos Fundamentales de Programación Orientada a Objetos en Java

Clases Abstractas

Las clases abstractas son clases que no se pueden instanciar; se usan únicamente para definir subclases.

En Java, una clase se considera abstracta si al menos uno de sus métodos no tiene implementación (se etiqueta con la palabra reservada abstract).

Uso de las Clases Abstractas

Se utilizan cuando se desea definir una abstracción que englobe objetos de distintos tipos y se busca aprovechar el polimorfismo.

Interfaces

Una interfaz es un tipo de clase completamente abstracta (una clase sin implementación).

En Java, las interfaces se declaran con la palabra reservada interface, de manera similar a como se declaran las clases.

En la declaración de una interfaz,...

Continuar leyendo "Conceptos Esenciales de Java: Clases Abstractas, Interfaces, SQL y JDBC para Conectividad de Bases de Datos" »

Protección Contra Software Malicioso: Tipos, Acciones y Medidas Preventivas

Informática y Telecomunicaciones60,2 KB

Software Malicioso (Malware)

El software malicioso, comúnmente conocido como malware, se refiere a cualquier tipo de software que puede amenazar un sistema o causar molestias al usuario. Este puede alterar el funcionamiento de una computadora, modificando o enviando información a terceros sin nuestro consentimiento.

Propagación del Malware

La propagación del malware puede ocurrir de dos maneras principales:

  • A través del software: Aprovechando debilidades en el sistema operativo o en algún programa específico.
  • Asociada a las personas: Debido al uso indebido por desconocimiento o exceso de confianza.

Clasificaciones del Malware

El malware se clasifica según:

  • El impacto.
  • La forma de propagación.
  • Las acciones que realiza.

Impacto

Se distinguen tres...

Continuar leyendo "Protección Contra Software Malicioso: Tipos, Acciones y Medidas Preventivas" »

Conceptos Esenciales de Procesos y Concurrencia en Sistemas Operativos

Informática y Telecomunicaciones4,57 KB

Conceptos Fundamentales de Procesos y Concurrencia en Sistemas Operativos

La programación multiproceso considera la posibilidad de que múltiples procesos se ejecuten simultáneamente sobre el mismo código de programa.

Definiciones Clave

Proceso
Un programa que se encuentra en ejecución. Cada proceso tiene un identificador único y temporal asignado, conocido como PID (Process ID). Es común que un proceso genere otros procesos durante su ciclo de vida.
Llamadas al Sistema (System Calls)
Son la interfaz que el kernel proporciona para que los programas de usuario puedan acceder de forma segura a determinadas partes del sistema. Esto previene que instrucciones peligrosas sean ejecutadas directamente por programas de usuario, garantizando la estabilidad
...
Continuar leyendo "Conceptos Esenciales de Procesos y Concurrencia en Sistemas Operativos" »

Modelos de Gestión de Memoria y Almacenamiento en Sistemas Operativos: Working-Set, Buddy System y NAS

Informática y Telecomunicaciones3,8 KB

Working-Set: Modelo del Conjunto de Trabajo

El modelo Working-Set (Conjunto de Trabajo) está basado en la suposición de la localidad de ejecución de los programas. Utiliza un parámetro A que define la ventana del conjunto de trabajo.

La idea es examinar las A referencias de páginas más recientes que forman el conjunto de trabajo. Si una página está siendo usada de forma activa, se encontrará dentro del conjunto de trabajo; si ya no está siendo utilizada, será eliminada después de A unidades de tiempo tras la última referencia que se hiciera a la misma.

Esta estrategia impide la hiperpaginación al mismo tiempo que mantiene el grado de multiprogramación con el mayor valor posible.

Principio de Localidad de Referencia

A medida que un...

Continuar leyendo "Modelos de Gestión de Memoria y Almacenamiento en Sistemas Operativos: Working-Set, Buddy System y NAS" »

Fundamentos de la Arquitectura de Computadoras Digitales

Informática y Telecomunicaciones4,69 KB

Arquitectura Fundamental de Computadoras Digitales

Una computadora consta de tres componentes básicos, interconectados entre sí:

  • Procesador
  • Memoria
  • Dispositivos de Entrada/Salida

Buses de Interconexión

La interconexión de estos bloques se realiza mediante tres buses:

  • Bus de datos: Lleva los datos entre la CPU, la memoria y los módulos de entrada/salida.
  • Bus de direcciones: Es controlado por la CPU y se utiliza para direccionar posiciones de memoria y puertos de entrada/salida.
  • Bus de control: Son las señales que utiliza el procesador para controlar a los restantes dispositivos del sistema.

Microprocesadores y Microcontroladores

Ambos son CPU implementadas en un único chip. Difieren en su campo de aplicación:

  • Microcontroladores: Son para aplicaciones
...
Continuar leyendo "Fundamentos de la Arquitectura de Computadoras Digitales" »

Optimización de transferencia de datos en consultas SQL

Informática y Telecomunicaciones7,11 KB

Respuestas:

1)

a_ Tamaño relación Clientes (nodo 1) = 5000 * 123 bytes = 615000 bytes

Tamaño relación Sucursales (nodo 2) = 100 * 71 bytes = 7100 bytes

b_ Sentencia SQL:

Select Apellido_y_Nombre, Nombre_Sucursal from Clientes inner join Sucursales on Numero_Sucursal = Nro_Sucursal

Nodo 3 => resultado

Ape y Nom Clientes à 30 bytes

Nom Sucursal à 30 bytes

Resultado Consulta: (30+30)*500 = 300.000 bytes

Existen 3 soluciones posibles (INNER JOIN):

I) Nodo 1 – Nodo 3

Nodo 2 – Nodo 3

Total transferencia: 615.000 + 7.100 = 622.100 bytes

II) Nodo 1 – Nodo 2 à 615.000 bytes

Nodo 2 – Nodo 3 à 300.000 (resultado consulta)

Total transferencia: 615.000 + 300.000 = 915.000 bytes

III) Nodo 2 – Nodo 1 à 7.100 bytes

Nodo 1 – Nodo 3 à 300.000 bytes (Consulta)...

Continuar leyendo "Optimización de transferencia de datos en consultas SQL" »

Conceptos Clave de Paradigmas de Programación: Funcional, Lógica y Orientada a Objetos

Informática y Telecomunicaciones9,25 KB

Transparencia Referencial y Paradigma Funcional

La transparencia referencial es una propiedad esencial en programación que asegura que una expresión pueda ser reemplazada por su valor sin alterar el comportamiento del programa. Esto implica que el valor de una expresión es independiente de su contexto, facilitando el razonamiento sobre el código y su optimización.

Este concepto es fundamental en el paradigma de programación funcional, donde las funciones son tratadas como ciudadanos de primera clase y se prioriza el uso de expresiones sobre instrucciones. La transparencia referencial promueve la inmutabilidad de los datos y minimiza los efectos secundarios, resultando en un código más predecible y comprensible.

Definición de Funciones

...
Continuar leyendo "Conceptos Clave de Paradigmas de Programación: Funcional, Lógica y Orientada a Objetos" »

Fundamentos de Comunicación de Datos: Conceptos, Medios y Protocolos

Informática y Telecomunicaciones7,75 KB

Conceptos Básicos de Comunicación de Datos

Definición y Componentes

Comunicación de datos: Es el proceso de transmitir información en formato binario entre dos o más puntos. Consta de los siguientes elementos:

  • Emisor: Dispositivo que envía los datos.
  • Receptor: Dispositivo que recibe los datos.
  • Mensaje: La información que se transmite (los datos).
  • Medio: El camino físico o lógico que recorren los datos desde el origen hasta el destino.

Unidades y Estructuras de Datos

Bit: Es la unidad de información más pequeña. Un conjunto de 8 bits forma 1 byte.

Trama: Una secuencia o tira de bits organizada según un formato específico.

Paquete: Fracciones de un mensaje más grande. Cada paquete contiene información de direccionamiento (procedencia y...

Continuar leyendo "Fundamentos de Comunicación de Datos: Conceptos, Medios y Protocolos" »