,

Características y funciones del sistema operativo

·

Cuando alguien me pregunta “¿qué hace realmente un sistema operativo?”, respondo sin rodeos: organiza y reparte recursos para que las aplicaciones funcionen sin estrellarse entre sí. El SO decide qué proceso usa la CPU, qué datos viven en RAM, cómo hablamos con el disco y la red, y dónde se guardan los archivos. Esa es la esencia; el resto son detalles y garantías para que todo vaya fluido.

Qué es un sistema informático: hardware y software

Un sistema informático es la suma de hardware (CPU, RAM, discos, periféricos) y software (SO + aplicaciones). La CPU ejecuta instrucciones, la RAM guarda lo “vivo” del momento, el almacenamiento persiste datos, y los periféricos hacen de puerta de entrada/salida. El SO es el “director de orquesta” que gestiona el hardware y provee servicios (archivos, procesos, seguridad) a las apps.

Ejemplo rápido: si abro un editor de texto, el SO carga el programa desde disco a RAM y lo pone en cola para la CPU. Si imprimo, envía los datos al driver de la impresora y gestiona la E/S hasta terminar.

Representación y codificación de la información

Por debajo, todo es binario (0 y 1). Usamos también decimal, octal y hexadecimal para representar datos con más comodidad; por ejemplo, cada dígito hexadecimal equivale a 4 bits. Caracteres como “A” se codifican siguiendo tablas tipo ASCII o Unicode (A = 65 en decimal = 01000001 en binario). Las cantidades se miden en bits/bytes y múltiplos (KB/MB/GB; también KiB/MiB con base 2).

Ejemplo rápido: en Linux puedo curiosear la tabla ASCII con man ascii o imprimir el código de “A” con printf "%d" \'A\'. En Windows, chcp me dice la página de códigos activa.

Elementos y funciones del sistema operativo

Kernel y controladores (drivers)

El kernel es el núcleo que corre con privilegios máximos y expone servicios de sistema (procesos, memoria, archivos, controladores). Un fallo serio aquí puede tumbar el equipo, por eso su diseño es meticuloso.

Gestión de memoria, CPU y E/S

  • Memoria: asigna y libera RAM; usa memoria virtual y paginación para aislar procesos.
  • CPU: planifica qué proceso/hilo corre en cada instante; algoritmos como round-robin o prioridades equilibran respuesta y rendimiento.
  • E/S: coordina dispositivos (teclado, disco, red) a través de drivers, interrupciones y buffers.
  • Sistema de archivos: mantiene tablas de abiertos, inodos, espacios libres, etc.

Interfaz de usuario: CLI vs entorno gráfico

Puedes interactuar con línea de comandos (bash, zsh) o entorno gráfico (Explorador, GNOME, KDE). Ambos traducen tus acciones (clics o comandos) a operaciones del sistema.

Ejemplo rápido: para copiar un archivo, en GUI arrastras; en CLI usas cp origen destino. Mismo resultado, dos interfaces.

Procesos del sistema operativo

Estados del proceso y el planificador

Un proceso es un programa en ejecución que necesita CPU, memoria, archivos y E/S. Suele moverse entre Listo (Ready), Ejecución (Running) y Bloqueado (Waiting/Sleeping); en Linux existen estados más finos (Sleeping, Zombie, etc.). El planificador lo empuja de Listo→Ejecución cuando hay CPU, y lo manda a Bloqueado si espera disco o usuario.

Herramientas: Task Manager, ps, top, señales/kill

En Windows lo visualizo con Administrador de tareas; en Linux, con ps, top o monitores gráficos. Para terminar un proceso: “Finalizar tarea” en Windows o kill en Linux.

Ejemplo rápido: si top muestra un proceso al 100% de CPU, puedo bajar su prioridad o matarlo (kill -9 PID) si está colgado. En Windows, clic derecho → Finalizar tarea hace lo mismo.

Arquitectura del sistema operativo

Kernel monolítico, por capas, cliente-servidor y microkernel

  • Monolítico: todo el núcleo corre junto en modo privilegiado; eficiente pero menos modular (Linux clásico).
  • Por capas: funciones ordenadas jerárquicamente; cada capa sirve a la superior.
  • Cliente-servidor: servicios del SO separados como servidores que se comunican por mensajes.
  • Microkernel: el núcleo minimiza funciones (planificación, IPC, interrupciones) y expulsa servicios al espacio de usuario, ganando modularidad.

Ejemplo rápido: Linux (monolítico con módulos), Windows NT (híbrido) y macOS/Darwin (Mach + capas UNIX) ilustran ventajas y trade-offs: rendimiento vs modularidad.

Sistema de archivos: organización y permisos

Estructura jerárquica en Linux (/) y unidades en Windows (C:\)

El sistema de archivos es árbol jerárquico. En Linux todo cuelga de / (p. ej., /home, /etc); en Windows, cada unidad es un árbol separado (C:\, D:\).

Inodos, metadatos y ACL

Los archivos tienen nombre y metadatos (tamaño, fechas, propietario). Linux guarda atributos en el i-nodo; Windows/NTFS añade atributos (solo lectura, oculto, sistema) y ACL detalladas.

Archivos vs directorios y permisos rwx

En Unix/Linux, permisos rwx para propietario/grupo/otros controlan lectura, escritura y ejecución. En Windows, la ejecución depende de la extensión y las ACL, no de un bit x.

Ejemplo rápido (CLI Linux):

ls -l
drwxr-xr-x  5 usuario grupo 4096 jun  1 10:00 Documentos
-rw-r--r--  1 usuario grupo 1024 jun  1 09:00 nota.txt

La d inicial indica directorio; - indica archivo. Para entrar en un directorio necesitas permiso x; para listar, r + x.

Ejemplos prácticos rápidos

Ver permisos con ls -l y diferencias en Windows

  • Linux: chmod u+x script.sh añade ejecución al propietario.
  • Windows: la ejecución depende de extensión (p. ej., .exe, .bat) y permisos en ACL; puedes ajustar permisos desde Propiedades → Seguridad.

Crear, listar y navegar: mkdir, ls, cd

  • Crear carpeta: mkdir proyectos
  • Entrar: cd proyectos
  • Listar: ls -l
    Estos comandos te obligan a entender permisos y jerarquía, justo lo que el SO protege y organiza.

Conclusiones y recursos para practicar

Si tuviera que condensarlo: el sistema operativo es el árbitro que asigna memoria, planifica CPU, atiende E/S y estructura archivos para que cada app viva en paz con las demás. Dominar sus piezas —kernel, procesos, memoria, arquitectura y archivos— te permite diagnosticar cuellos de botella y trabajar con soltura en cualquier entorno.

Ideas de práctica (5–10 min):

  1. Abre el Administrador de tareas o top y observa qué proceso consume CPU.
  2. En Linux, usa ls -l y traduce permisos; intenta cambiarlos con chmod.
  3. Escribe un número en hex y pásalo a binario (cada dígito hex → 4 bits).

FAQs

¿Qué hace el kernel exactamente?
Administra hardware en modo privilegiado y ofrece servicios: procesos, memoria, archivos y drivers.

¿Por qué el SO usa planificación?
Para repartir CPU entre procesos y mantener respuesta (p. ej., round-robin y prioridades).

¿Linux y Windows organizan igual el disco?
No. Linux cuelga todo de /; Windows separa por unidades (C:\, D:\).

¿Qué diferencia hay entre archivo y directorio?
El archivo guarda datos; el directorio guarda entradas que apuntan a archivos/subdirectorios (i-nodos).

julian lopez jimenez

Hola, encantado de conocerte.

Recibe cada domingo las 3 últimas entradas sobre informática práctica.

Sin spam. Puedes darte de baja cuando quieras. Recibirás un correo para confirmar el alta. Consulta la Política de privacidad.

Recibe nuevas entradas cada semana

Una seleccion de articulos, recursos y novedades sobre informatica, FP y tecnologia aplicada.

julian lopez jimenez

Hola, encantado de conocerte.

Recibe cada domingo las 3 últimas entradas sobre informática práctica.

Sin spam. Puedes darte de baja cuando quieras. Recibirás un correo para confirmar el alta. Consulta la Política de privacidad.

Más sobre este tema