Está en la página 1de 29

SISTEMAS

OPERATIVOS
UNIX Y LINUX
POR: María Rodriguéz. Richard Dugarte.
César Hidalgo. Adrian Núñez.

Universidad Nacional
Experimental de la Gran
Caracas
•UNIX
El origen del sistema está ligado al desarrollo de un proyecto iniciado en 1968. En aquel momento un
grupo de investigadores de General Electric, AT&T Bell y del MIT (Instituto Tecnológico de
Massachussets). El resultado de estas investigaciones se bautizó como MULTICS (Sistema Multiplexado de
Información y Computación).
Sin embargo, no fueron inútiles. Posteriormente la idea de este proyecto se vuelve a retomar y conduce al
desarrollo en 1969 del sistema operativo UNIX por Ken Thomson, Dennis Ritchie y otros investigadores,
algunos de ellos integrantes del grupo de programadores que llevó a cabo el proyecto MULTICS. Más
adelante, en 1970, el nombre sufre una pequeña variación y pasa a llamarse UNIX, con el que se le conoce
actualmente.
•LINUX
En 1991, un estudiante finlandés, Linus Torvalds, decidió diseñar, basándose en el modelo MINIX,
un sistema operativo capaz de ejecutar 386 tipos de arquitecturas. Este sistema operativo se denominó
Linux y mostraba el siguiente mensaje en el foro de discusión comp.os.minix:

“Hola todos los que están utilizando MINIX – Estoy diseñando un sistema operativo
gratuito (se trata solo de un pasatiempo, no será gigante y profesional como GNU)
para clones AT 386 (486).”
•UNIX
OBJETIVO: El objetivo que persiguieron los primeros diseñadores de UNIX fueron
conseguir un sistema operativo que permitiera un desarrollo eficiente de programas, que
fuera pequeño y eficiente en el uso de la memoria y fácil de mantener.

FUNCIONES: Siendo un sistema operativo desarrollado originalmente por AT & T Bell


Laboratories. Es un sistema operativo muy madura conocida por su estabilidad y
fiabilidad. Aunque hay varias implementaciones diferentes de UNIX, incluyendo la
distribución estándar de Berkley (BSD), System V de IBM y Hewlett-Packard HP / UX,
que son muy similares en su diseño y funciones. Dichas funciones en común serian:
Arquitectura, Servidores, Estaciones de Trabajo.
•LINUX
OBJETIVO: Un sistema operativo diseñado para aprovechar al máximo las
capacidades de cualquier ordenador que fuese totalmente compatible con UNIX y
que, de esta manera, permitiese ejecutar todos los programas gratuitos compatibles
con UNIX y desarrollador por la “Free Software Foundation” que vienen con licencia
GNU.

FUNCIONES: Su sistema operativo tiene tres funciones principales:

• Administrar los recursos de la computadora, como la unidad central de


procesamiento, la memoria, las unidades de disco y las impresoras.

• Establecer una interfaz de usuario.


Características de UNIX:
• Adaptación:
Los usuarios pueden correr sus propios programas.
• Programable:
Permite el control de dispositivos como impresoras, escáner, Entre otros.
• Multisistema:
Permite la compilación o adaptación de programas debido a que es de código abierto.
• Potente: Sus comandos incorporados son de amplia aplicación en los programas.
• Multiusuario: Es utilizable por muchas personas en forma simultánea conectadas a un cerebro central.
• Multitarea: Este programa puede realizar tareas en un mismo momento.
• Estético: Buena presentación y gráficos de alta calidad, comandos congruentes, eficientes y simples.
Características de LINUX:
Gratis: Una de las principales razones por las que muchos usuarios eligen Linux o al menos le dan
una oportunidad es por el hecho de que se trata de un sistema operativo gratuito.
Código abierto: Sus creadores decidieron que Linux fuese un sistema de código abierto, lo que
hizo que se liberase su código fuente para que cualquiera pueda desarrollar nuevas capacidades o
funciones y las ponga a disponibilidad de todo el mundo.
Seguro: La seguridad es una de las características más importantes de Linux. Debido a que se trata
de un sistema libre, son pocos los que se interesan en crear virus para el sistema.
Personalizable: Puedes usarlo a tu antojo, prepararlo, modificarlo.
Independiente: Otra de las grandes características de Linux es que se trata de un sistema operativo
que puede ser modificado y distribuido libremente.
Estable: Es considerado uno de los sistemas más robustos y estables, de ahí que sea el sistema más
utilizado en servidores y ordenadores
En 1963 la empresa Digital Equipment Corporation empezó a comercializar una serie
de ordenadores llamados PDP conocidos como miniordenadores que representaron una
revolución. Posiblemente fue el miniordenador con el diseño de más éxito de la historia.

Fue la primera mini computadora que interconectaba todos los elementos del sistema,
procesador, memoria y periférico, en un único bus de comunicación, bidireccional y
asíncrono. Este dispositivo, llamado UNIBUS, permitía a los dispositivos enviar, recibir o
intercambiar datos sin necesidad de pasar por la memoria.
En 1972 se tomó la decisión de escribir nuevamente UNIX, pero esta
vez en el lenguaje de programación C. Este cambio significaba que UNIX
podría ser fácilmente modificado para funcionar en otras computadoras
(de esta manera, se volvía portable) y así otras variaciones podían ser
desarrolladas por otros programadores.
BSD son las siglas de Berkeley Software Distribution. Así se llamó a las distribuciones
de código fuente que se hicieron en la Universidad de Berkeley en California y que en
origen eran extensiones del sistema operativo UNIX de AT&T Research. Varios proyectos
de sistemas operativos de código abierto tienen su origen en una distribución de este código
conocida como 4.4BSD-Lite.
Hay dos tipos comunes de interfaces de usuario en el dispositivo de visualización:

Una interfaz de línea de comandos (CLI) es una interfaz de usuario (UI) basada en texto que se utiliza
para ver y administrar archivos de computadora. Las interfaces de línea de comandos también se
denominan interfaces de usuario de línea de comandos, interfaces de usuario de consola e interfaces de
usuario de caracteres.

La Interfaz gráfica de usuario, conocida también como GUI (Graphical user interface) es el entorno que
utiliza un conjunto de imágenes y objetos gráficos para representar información y acciones disponibles
en la interfaz mediante las cuales una máquina y el usuario interactúan.
La forma que el usuario tiene de acceder a
los servicios del kernel es mediante la
shell. Se puede considerar como el
intérprete de comandos, que permite que
los comandos y programas que tecleamos
sean ejecutados.
Mozilla Firefox Gedit Picasa

Java Gimp Sublime Text


El kernel está conformado por 5 grandes subsistemas de las
cuales son:

1. Planificador de procesos (sched)


2. Administrador de memorias (mm)
3. Sistema del archivo virtual (vfs)
4. La interfaz de red (net)
5. La comunicación entre procesos(ipc)
Proceso en Unix: Se puede definir como un programa en ejecución ya que es el multiproceso, que lo cual
conlleva la posibilidad de que un usuario pueda estar ejecutando varios procesos simultáneamente desde un
mismo terminal.

En general un proceso consta de varias zonas:

Código Datos Pilas Registro Información


general
Proceso en Linux: En esta es una serie de instrucciones que vienen de un programa que está en ejecución,
existe diferentes elementos que incorporar un proceso como la prioridad de ejecución del proceso que le
indica a Linux cuantos CPU utilizar y el tiempo máximo de ejecución del proceso.

Cuando linux se ejecuta, el kernel de linux tiene la primera prioridad de ejecución, conocida como PID 1
(Process ID).
Administración de Memoria en UNIX: En este se administran un sistema de

intercambios de segmentos de un proceso entre la memoria principal y la

memoria secundaria, llamado swapping, lo que significa que se debe mover la

imagen de un proceso al disco si este excede la capacidad de la memoria

principal, y copiar el proceso completo a memoria secundaria. . Esto lo que hace

es durante su ejecución, los procesos son cambiados de y hacia la memoria

secundaria que se requiera.


Administración de Memoria en LINUX: En esta el Kerne se encarga de escribir

el contenido de un bloque de memoria que no está siendo utilizado al disco

rígido de forma que esta porción de memoria quede disponible para otro

propósito. Cuando los bloques originales vuelven a ser requeridos, que son

leídos y colocados nuevamente en memoria.


•Los sistemas de archivo en Unix:

tienen una estructura general en la que los detalles son exactos y pueden variar un poco, en
las cuales los conceptos centrales son superbloque, nodo-i, bloques de datos, bloques de
directorios, y bloques de indirección. El superbloque tiene un sistema de archivos en
conjunto, como su tamaño. Un nodo-i tiene toda la información de un archivo y el número de
nodo-i que representa al archivo. El nodo-i contiene los números de varios bloques de datos,
que se utilizan para almacenar los datos en el archivo.
•Los sistemas de archivos en Linux:

Son bastante distintos al que se utiliza en Windows, de manera que la organización,


ejecución y perisología de los archivos se hace de manera distinta. La principal ventaja es
que en los archivos Linux, el usuario que crea los archivos puede gestionarlos como desee,
ya que son de su propiedad, es decir, el mismo usuario puede decidir quien los ve, los lee y
quien los ejecuta. Existen diferentes tipos de sistemas de archivos, y en Linux los sistemas
nativos son ext2 y ext3.
El nombre MINIX significa mini por qué es lo suficientemente pequeño para poderlo entender.

MINIX se vio envuelto en muchos problemas legales, para remediar este problema el creador de
MINIX Andrew S. Tanenbau (Que fue profesor de ciencias en la universidad libre de Ámsterdam, Países
bajos),escribe un nuevo sistema desde cero este tiene compatibilidad con Unix.

Luego además de eliminar los problemas legales, no forma parte de un sistema operativo, sino que se
ejecuta como programa de usuario, lo cual esto ayuda al fácil manejo del programa para los estudiantes,
además de ser escrito en lenguaje de programación C.
El desarrollo de MINIX no solo tuvo como propósito el fin educacional, sino que
también buscaba resolver un problema de factibilidad, como se di antes, tiene menos
trabajo que los núcleos monolíticos arquetípicos de UNIX. Como, por ejemplo:

• Funciones del Núcleo:

1. Recoger las interrupciones físicas de los dispositivos y las llamadas al sistema de


los procesos.

2. Gestionar el CPU.

3. Dar un modelo más abstracto a los procesos.


• Funciones de la capa de controladores:

Esta capa comprende todas las llamadas “tareas”, que son lo que otros sistemas
operativos llaman manejadores o controladores de dispositivo (drivers). Por cada
dispositivo a controlar, es decir, por cada manejador, hay una tarea ejecutándose en
este nivel.

Además de las tareas “normales” de control de dispositivos, hay una adicional,


llamada “tarea del sistema”, que copia entre regiones de memoria.

Aunque las tareas tienen mayores privilegios que los procesos de usuario y tienen
mayor prioridad a la hora de ejecutarse, a efectos de comunicación son igual que los
procesos, es decir, mandan y reciben mensajes.
• Funciones de la capa de nivel de usuario:

La capa superior comprende todos los procesos “normales” de nivel de usuario, es


decir, los intérpretes de órdenes, como el bash o el ash; los compiladores, como el gcc
o el g++; los servicios del sistema, como el lpd o el syslogd, entre otros.

Ningún proceso de esta capa puede acceder a zonas de memoria de otros procesos,
estén en la capa que estén. Si se tienen que comunicar, se mandan mensajes, y las
copias en memoria las hacen el núcleo mismo o el servicio del sistema.

Por otro lado, por tener los menores privilegios, si hay un solo proceso de otra capa
intentando ejecutarse, obtendrá la CPU antes. Es decir, que no se ejecutará ningún
proceso del nivel 4 mientras haya procesos de otras capas intentándolo.
1. p_int_blocked: Indica si el proceso tiene una interrupción física
2. p_int_held: Indica si el proceso está bloqueado por alguna razón que no le deje ejecutarse.
3. p_nextheld: Apunta al siguiente proceso en la lista de procesos bloqueados.
4. p_messbuf: Puntero a un “almacén” en memoria donde se guardan los mensajes recibidos.
5. p_callerq: Apunta al primer proceso que está bloqueado.
6. p_sendlink: Este campo es un puntero al siguiente proceso que está bloqueado intentando mandar un
mensaje al mismo proceso que el actual.
7. p_getfrom: Indica al proceso del que está intentando recibir el proceso actual.
8. p_nextready: Apunta al siguiente proceso que esté preparado para ejecutarse.
9. p_flags: Es un campo de indicadores. Si el valor es cero, es que el proceso puede ejecutarse. Si no, hay
algún problema. Este campo se interpreta como una máscara de bits, que puede tener los siguientes
valores:
1) P_SLOT_FREE
2) NO_MAP
3) SENDING
4) RECEIVING
Según todo lo anterior, debemos tener siempre presente que cualquier tarea que implique
ejecución se representará en MINIX por un proceso (interrupciones, llamadas al sistema,
procesos de usuario, tareas del sistema), o al menos uno que lo represente o incluya; y que
cada proceso tendrá asociado una estructura con todos los campos anteriores que servirán
para desempeñar las labores de planificación y comunicación de tales procesos.
• Requerimientos de Unix: • Requerimientos de Linux:

1. 512 MB de RAM. 1. Núcleo Linux, versión 3.10 o superior


2. Un procesador de 1 GHz. 800 MB para 2. glibc2, versión 2.17 o superior
el código y los datos de la plataforma 3. PC compatible con Pentium (Pentium III, Athlon, aunque se
Eclipse. recomienda un sistema más reciente)
3. Un monitor adecuado para el sistema 4. 256 MB de RAM (se recomienda 512 MB de RAM)
operativo con un tamaño de pantalla de al 5. Al menos 1,55 GB disponibles en disco
menos 1024x768. 6. Servidor X con resolución de 1024 × 768 (se recomienda
más alta), con al menos 256 colores
7. Gnome 3.18 o más reciente, con el paquete at-spi 1.32
(necesario para la compatibilidad con las herramientas de
tecnología de asistencia [AT]), u otra interfaz gráfica de usuario
compatible (tal como KDE, entre otras).
Las implicaciones de seguridad en Unix y Linux se dividen en 3 partes ya sea áreas o dominios
dependiendo de la parte del sistema que se vea involucrado:

1 la seguridad en las cuentas.

2 los sistemas de archivos.

3 la red.
GRACIAS POR TU
AT E N C I Ó N

También podría gustarte