Está en la página 1de 10

Sistemas Operativos

Tarea 1

1. Explique detalladamente el concepto de kernel monolítico y el microkernel.

El kernel es un administrador de procesos que crea el entorno necesario


para que los procesos puedan ejecutarse. Existen dos grandes
clasificaciones de kernels con respecto a su diseño: Los kernels monolíticos
y los microkernels.

La principal característica del kernel monolítico es permitir que funcionen


como redes, videos y acceso a otros periféricos sean permitidos a través del
kernel-space. Esto es posible a través del uso de módulos. Es decir que un
módulo, a pesar de no estar en el mismo código del kernel, es ejecutado en
el espacio de memoria del kernel. Siendo así, a pesar de los módulos del
kernel sigue siendo único y centralizado.

Los kernels Monolíticos representan el diseño más simple y la única opción


hasta los 80s. Se implementan en forma de un gran programa corriendo en
un único espacio de direccionamiento. La comunicación dentro del kernel es
trivial porque todo corre en kernel space en el mismo espacio de
direccionamiento: se invocan funciones. Los defensores de este modelo citan
la simplicidad y performance como principales ventajas. La mayoría de los
kernels Unix son monolíticos. Linux es un kernel monolítico aunque toma
muchas ideas de los microkernels: Diseño modular, Scheduleable /
preemptible (KCPs), Soporte para kernel threads, Módulos dinámicos en
demanda. Sin embargo, no tiene perdida de performance asociada al
microkernel dado que todo corre en kernel mode y la comunicación es a
través de invocaciones de funciones.

Como ejemplos de kernels Monolíticos están: Linux, BSDs, Solaris.


Respecto a los microkernels:

Es una designación de un sistema operativo que posee apenas un núcleo


que provee recursos mínimos necesarios para el ambiente. Otras
funcionalidades se logran a través de servidores o servers que se localizan
en el user-space. Provee servicios como gerenciamiento del espacio de
memoria, gerencia de hilos y comunicación entre los procesos (IPC). Sin
embargo, servicios como redes, video son considerados como no esenciales.

La funcionalidad está distribuida entre procesos separados, usualmente


llamados servers. En teoría, solo los procesos que realmente lo requieren son
los que deberían ejecutarse en el kernel space, y el resto en user space. Se
incluye un mecanismo de comunicación entre procesos, que ofrece
comunicación entre servers a través de mensajes. Tiene un diseño modular y
permite un fácil reemplazo de subsistemas. Existen costos asociados: un
pasaje de mensajes con una mayor overhead que invocación directa a la
función. Se producen context switches de kernel-space a user-space y
viceversa. Esto involucra que todos los sistemas basados en microkernels
ahora ejecutan sus servers en kernel space. El kernel de windows NT y Mack
son ejemplos de microkernels y ninguno de ellos corre los servers en user
spaces.

Ejemplo de Microkernels: Aix, Minix, Mach, QNX.

2. Qué son los módulos dinámicamente cargados que posee linux.


El kernel de Linux es modular, esto quiere decir, que está construido de tal
forma que podemos añadirle “trozos” de kernel durante la marcha, y si ciertas
partes del mismo no se están usando, podemos eliminarlas tranquilamente.
Una de las mejores características de GNU/Linux es la posibilidad de
extender el conjunto de facilidades que ofrece el “kernel” en tiempo de
ejecución (Love, 2010). Esto significa que se pueden agregar (o eliminar)
funcionalidades en el núcleo mientras el sistema está activo.

Cada pieza de código que se agrega al “kernel” en tiempo de ejecución, se


denomina módulo.

GNU/Linux ofrece una gran variedad de clases de módulos, entre los que se
encuentran (pero no se limitan a ellos) los drivers del dispositivo. Cada
módulo está constituido por código objeto que se enlaza dinámicamente en
tiempo de ejecución utilizando el comando “insmod”, y puede ser
desenlazado utilizando el comando “rmmod”.

El código modularizado se ejecuta en el espacio de direcciones del “kernel”.


Usualmente los drivers del dispositivo realizan dos tareas fundamentales,
algunas funciones en el módulo se ejecutan en respuesta a llamadas al
sistema y otras se encargan de manejar las solicitudes de interrupción. Linux
nos permite cargar y descargar componentes del sistema operativo
dinámicamente según los vaya necesitando.

La ventaja de que sea modular, para el caso de Linux, es que se pueden


agregar o descargar módulos sin necesidad de reiniciar el sistema y en
algunos casos sin necesidad de recompilar el kernel. Las fuentes en C de
cada versión del kernel cuentan con controladores para diversos dispositivos.
Cuando se compila una versión, algunos de esos controladores pueden
unirse con el kernel, estáticamente, otros pueden dejarse como módulos para
cargarse / descargarse cuando la parte estática del kernel esté operando y
otros pueden ser excluidos del proceso de compilación, y por lo tanto no
podrán ser usados ni cuando el kernel esté operando.

3. Explique las características de los sistemas Minix, BSD, Linux y Mac OS-X.

Sistema Minix

Es un sistema operativo basado en Unix, una de sus características es que


está basado en la arquitectura microkernel, la versión que actualmente se
encuentra disponible es la Minix 3.4.0rc6, ya que la versión 3 está orientada a
desarrollar un Sistema Operativo que se pueda usar en maquinas de pocos
recursos, este sistema usa el las ventana X11, este último en un software
para dotar interfaz gráfica, integra más de 650 aplicaciones UNIX, es
multiusuario, actualmente la licencia empleada para la distribución de Minic
es BSD.

BSD

BSD significa Berkeley Software Distribution. Es el nombre de las


distribuciones de código fuente de la Universidad de California, Berkeley, que
originalmente eran extensiones del sistema operativo UNIX.
El sistema operativo completo incluye:
● El kernel BSD
● La biblioteca C
● Utilidades como shells, utilidades de archivos, compiladores y
enlazadores.
● El sistema X Window
● Muchos otros programas y utilidades

Las versiones de BSD existentes y que se conocen son FreeBSD, NetBSD


OpenBSD, estos proporcionan el sistema en tres “versiones” diferentes. Al
igual que Linux, a los lanzamientos se les asigna un número como 1.4 o 1.6.

Las características de cada una de las versiones de BSD son:

FreeBSD tiene como meta ofrecer un alto rendimiento y facilidad de usa al


usuario final, y es uno de los favoritos de los proveedores de contenido web,
Se ejecuta en varias plataformas y tiene significativamente más usuarios que
otros proyectos.

NetBSD tiene como meta la máxima portabilidad, se ejecuta en máquinas


que abarcan desde PDAs hasta grandes servidores, e incluso se ha utilizado
en misiones espaciales de la NASA. Es una opción particularmente buena
para ejecutar en hardware antiguo que no sea Intel.

OpenBSD tiene como meta la seguridad y la integridad del código, combina


del concepto de código abierto y una revisión rigurosa del código que dan
como fruto un sistema muy correcto, este sistema ha sido elegido por
instituciones preocupadas por la seguridad como lo son bancos, bolsas de
valores y departamentos gubernamentales. Al igual que NetBSD, OpenBSD
funciona en gran variedad de plataformas.

Linux
Linux es un sistema operativo el cual ha sido desarrollado para poder utilizar
un 100% sus funciones y capacidades, algunas de sus características son:
tiene código abierto, esto significa que da la libertad de que miles de usuarios
voluntarios aportan al sistemas con nuevas ideas y creatividad, en otras
palabras hace que el código fuente de Linux sea gratuito totalmente, es
multiusuario esto quiere decir que Linux está en las manos de usuarios
haciendo que estos tengan la ventaja de acceder a aplicaciones y/o recursos
al mismo tiempo, es personalizado lo cual quiere decir que los usuarios
tienen la libertad de poder instalar o cambiar el entorno gráfico a través de
aplicaciones como programas, ventanas y el entorno del escritorio, es seguro,
mucho se habla de la seguridad de este sistemas operativo, muchos dicen
que se debe a que Linux es libre y transparente que los usuarios no ven la
necesidad de perjudicar a otros usuarios con virus. Por último una de sus
características, se diría que la más que hace la esencia de Linux es su
diversidad de software, es decir el conjunto de software que está dirigido a un
grupo en específico de usuarios, un ejemplo de los software están Ubuntu,
Fedora, Android y Debian.

Mac OS-X

Es un sistema operativo de Apple orientado a equipos de sobremesa y


computadores portátiles, la versión actual es Mac OS X El Capitán 10.11.6,
es un sistema basado en Unix y usa HFS+ quee es un sistema de archivos
desarrollado por Apple, es el sistema operativo más avanzado del mundo,
esta es la décima versión del sistema operativo desarrollado por Apple para
computadores Macintosh. Su sencillez, su fiabilidad y su facilidad de uso. La
arquitecturas de Mac OS X se derivan de OpenStep, el cual fue diseñado
para ser portable, con el objetivo de facilitar la transferencia de una
plataforma a otra. Multilenguaje, su modelo de desarrollo es de código
cerrado con componentes de código abierto. Su seguridad también es muy
destacable, no a nivel de Linux pero si decente, no recibe muchos virus, sso
pierde el tiempo con alertas de seguridad constantes, el acceso restringido a
los archivos del sistema es el responsable de gran parte de la seguridad. Sin
embargo el sistema permite modificaciones cuando es requerido. Ofrece un
sistema de varios niveles de las defensas contra virus y otras aplicaciones
maliciosas o malware.

4. Qué conclusiones podría sacar sobre las posibles aplicaciones de los


anteriores sistemas operativos en computadores de escritorio, servidores,
computadores industriales y dispositivos móviles.

Minix principalmente está hecho para realizar sistemas operativos para


maquinas con pocos recursos, lo cual hace que su función sea solo esta, ya
que su objetivo no ha sido ser el sistema operativo central de un computador
BSD, este es un sistema que tiene varios sistemas por asi decirlos, muchos
de estos son usado al igual que Linux, hay uno en esencial que fue usado por
la NASA el cual es el NetBSD por sus características, esto lo convierte que
este se puede usar en servidores o en computadores industriales o grandes
servidores como se pudo ver en el apartado donde se habló de BSD.

Tanto Linux como MacOS X están orientados a el uso cotidiano en


computadores personales de usuarios, pero se tiene entendido que muchas
empresas trabajan sus servidores principalmente en el sistema operativo
Linux, por todas las características que mencionamos con anterioridad Linux,
tambien Linux puede ser usado en dispositivos móviles, un ejemplo sería el
sistema operativo Android, ya que Linux es flexible frente al uso de las
aplicaciones que se pueden tener.

5. Buscar similitudes y establecer cuales son las diferencias más destacadas


que puede encontrar entre UNIX y MULTICS.

Multics (Multiplexed Information and Computing Service) fue diseñado para


ser un sistema modular construido a partir de bancos de procesadores de alta
velocidad, memoria y equipos de comunicaciones. Por diseño, algunas partes
de la computadora podrían apagarse para recibir servicio sin afectar a otras
partes de los usuarios. Aunque este nivel de procesamiento se supone para
muchos sistemas en la actualidad, tal capacidad no estaba disponible cuando
se inició Multics.

Multics también se diseñó teniendo en cuenta la seguridad militar, tanto para


ser resistente a ataques externos como para proteger a los usuarios del
sistema entre sí. Por diseño, la información ultrasecreta, secreta, confidencial
y no clasificada podía coexistir en la misma computadora: el sistema Multics
fue diseñado para evitar que la información que había sido clasificada en un
nivel llegara a manos de alguien que no había sido autorizado para ver la
información. Multics finalmente proporcionó un nivel de seguridad y servicio
que aún no ha sido superado por muchos de los sistemas informáticos
actuales, incluido, quizás, Unix.

Grandes planes, pero en 1969 el proyecto Multics estaba muy atrasado. Sus
creadores habían prometido mucho más de lo que podían cumplir dentro del
marco de tiempo proyectado. Ya en desventaja debido a la distancia entre
sus laboratorios de Nueva Jersey y el MIT, AT & T decidió retirarse del
Proyecto Multics.
Ese año, Ken Thompson, un investigador de AT & T que había trabajado en
Multics, se hizo cargo de una computadora PDP-7 sin usar para perseguir
algunas de las ideas por su cuenta. Pronto se unió a Thompson Dennis
Ritchie, quien también había trabajado en Multics. Peter Neumann sugirió el
nombre Unix para el nuevo sistema. El nombre era un juego de palabras con
el nombre Multics y una bofetada al proyecto que continuaba en Cambridge.
Mientras que Multics intentó hacer muchas cosas, Unix intentó hacer una
cosa bien: ejecutar programas. La fuerte seguridad no formaba parte de este
objetivo.

6. El S.O. Linux maneja varias distribuciones; enumere características de 5


distribuciones Linux teniendo en cuenta lo siguiente:
a. Empresa o comunidad que lo distribuye
b. Características de la licencia de distribución
c. Que interfaz gráfica posee
d. Quién brinda el soporte técnico

Nombre Empresa o Licencia de distribución Interfaz gráfica Soporte técnico


comunidad que
los distribuye

Red Hat IBM, Google ● Administración de No hay Soporte


Enterprise Cloud Platform, Servidores. interfaz gráfica personalizado,
Linux Amazon Web ● Virtualización. asociada. Se oferta Enhanced
Services y ● Interoperabilidad. instala por Solution Support
Microsoft Azure ● Infraestructura de aparte
Aplicaciones. GNOME o
● Contenedores. MATE
● Gestión de Identidades.
● Gestión de Recursos.
● Herramientas.

Debian Ubuntu su ● La disponibilidad en varias GNOME Ayuda en


principal arquitecturas tiempo real
distribuidor, ● Una amplia colección de usando IRC
Deepin, entre software disponible. (Internet Relay
otros ● Un grupo de herramientas Chat)
para facilitar el proceso de
instalación y actualización
del software

Fedora Linux (cualquier ● Una copia completa legible No hay ask.fedoraprojec


usuario puede del código fuente interfaz gráfica t.org para
descargarlo u correspondiente a la asociada. Se preguntas entre
obtenerlo en versión de Fedora instala por la comunidad o
sitios online) disponibles. aparte discusion.fedora
● Compilación de paquetes GNOME o project.org para
de software MATE algo mas
convencional.

Arch Linux XFCE ● Sencillez: Arch Linux define No hay Preguntas


KDE la simplicidad como sin interfaz gráfica frecuentes o al
E17 adiciones o modificaciones asociada. Se staff de Arch
Cinnamon innecesarias. instala por Linux en los
Fluxbox ● Modernidad: Arch Linux se aparte foros de su
Razor-qt esfuerza por mantener las GNOME o página
LXDE últimas versiones estables MATE https://archlinux.
Enlightenment de su software siempre que org/
se pueda evitar
razonablemente la rotura
sistémica de paquetes.
● Pragmatismo: El análisis
técnico y el debate basados
en evidencias son lo que
importa, no la política ni la
opinión popular.
● Versatilidad: Arch Linux es
una distribución de uso
general, ofrece al usuario la
posibilidad de crear un
sistema personalizado
eligiendo entre miles de
paquetes de alta calidad.

Tails Tails org - GNU/GPL VERSION 3 GNOME - Documen


RISEUP - Copyright © a Tails tación de
ACCESNOW - Código fuente: paquetes de tails
EFF Debian - Pregunta
TOR bajo licencia creative s
NSA commons 3.0 frecuente
THEISCPROJEC - Tails siempre comienza s
T desde el mismo estado - Lista de
LOOKTOTHERI limpio y todo lo que haces problema
GHT desaparece s
EXAMSUCCESS automáticamente cuando conocido
WORDABLE apagas Tails. s
LOGIN - Almacenamiento - Lista de
LOCKDOWN persistente cifrado problema
- Tor Browser con uBlock , s
un navegador seguro y un conocido
bloqueador de anuncios s con
- Thunderbird , para correos tarjetas
graficas
electrónicos encriptados - Lista de
- KeePassXC , para crear y cosas
almacenar contraseñas que se
seguras corregira
- LibreOffice , una suite no
ofimática mejorara
- OnionShare , para n en la
compartir archivos a través proxima
de Tor version
- Las aplicaciones se - Problema
bloquean automáticamente s abiertos
si intentan conectarse a en GitLab
Internet sin Tor. - Reportaci
- Todo el almacenamiento ón de
persistente se cifra bugs.
automáticamente. - Abrir
- Tails no escribe nada en el problema
disco duro. Toda la en GitLab
memoria se borra al - Mesa de
apagar. ayuda por
- email
- Chat
XMPP

En cada caso debe referenciar las respuestas.

Referencias.

Zabaljáuregui, M. Introducción al kernel Linux. Recuperado el, 4.

Monteiro, M. Sistemas Operacionais. SELEÇÃO TUTORES PRESENCIAIS.

Iglesias-Benitez, A., Toledano-Hernández, A., Toledo-Enriquez, D., Gentile


Martínez-Casado, J., & González-Aguilera, D. J. (2014). Desarrollo de un driver
GNU/Linux para sistemas de adquisición de datos embebidos. Revista Cubana de
Ciencias Informáticas, 8(2), 35-51.

Garfinkel, S., Spafford, G., & Schwartz, A. (2003). Practical UNIX and Internet
security. " O'Reilly Media, Inc.".

Minix. Recuperado de https://www.ecured.cu/Minix


Conoce las características del sistema Linux. [Tecnología]. Recuperado de:
https://www.scribbr.es/normas-apa/fuentes-de-internet-sin-autor-fecha-o-titulo/

¿Qué es y cuales son las características de MAC OS X?. [Reportaje] (04 de mayo
del 2014). Recuperado de: https://computerhoy.com/noticias/software/que-es-
cuales-son-caracteristicas-mac-os-x-11551

https://www.redhat.com/es

https://www.debian.org/

https://fedoraproject.org/wiki/Fedora_Project_Wiki

https://archlinux.org/

https://hpc.ac.upc.edu/PDFs/dir13/file000419.pdf

https://docs.freebsd.org/es_ES.ISO8859-1/articles/explaining-bsd/article.html

https://wiki.archlinux.org/index.php/Arch_Linux

También podría gustarte