Microkernels - Minix Sistemas Operativos 2 – Usac 2009

Slides:



Advertisements
Presentaciones similares
Estructuras en Sistemas Operativos
Advertisements

ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
Proyectos de Ley Relacionados con Software Libre o Open Source -Congresista Edgar Villanueva Proy. Nro "Ley de Software Libre“ - Congresista Daniel.
OMAR SANCHEZ ROBLES HECTOR PEREZ GARCIA. “Sistemas de cómputo compuesto por un gran número de CPU´s conectados mediante una red de alta velocidad”, Tanenbaum.
El núcleo o kernel.
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
Integrante: Yohandry Cueto Carnet: # Contenido Kernel Linux Limitaciones del Kernel Linux Kernel Mach Que es Hurd Arquitectura Ventajas Distribuciones.
Al igual que un equipo no puede trabajar sin un sistema operativo, una red de equipos no puede funcionar sin un sistema operativo de red. Si no se dispone.
1 Indice del Curso Tema 1 - Introducción Tema 2 - Comandos Tema 3 - Procesos y Entorno Tema 4 - Shell y Editores Tema 5 - Distribuciones e Instalación.
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
ELEMENTO DE COMPETENCIA 3
SOFTWARE LIBRE, OPEN SOURCE E HISTORIA DE LINUX TOVAR LÓPEZ IAN GUSTAVO PROFESOR RENÉ DOMINGUEZ ESCALONA ADMINISTRA SISTEMAS OPERATIVOS GRUPO 503.
Microkernels - Introducción Sistemas Operativos 2 – Usac 2009.
¿Que es PHP? PHP Hypertext Preprocessor Y solo porque me quiero hacer el profesor cool y meter un chiste: PHP también significa: Para Hacer Páginas.
¿Que es PHP? PHP Hypertext Preprocessor Y solo porque me quiero hacer el profesor cool y meter un chiste: PHP también significa: Para Hacer Páginas.
WINDOWS Elvira Abajo Lera Octubre, 2008.
Sistemas operativos Linux
Repaso.
Introducción a Sistemas Operativos
Linux Objetivo: El alumno conocerá la importancia del sistema operativo Linux, así como sus funciones.
SISTEMAS OPERATIVOS Sistema de Archivos.
PHP Hypertext Preprocessor
Programación Orientada a Eventos
MetaLib Activar Primo Central como recurso
Conceptos Básicos de Programación
INSTALACION LINUX UBUNTU
Usando StreamReader y StreamWriter
CURSO DE FUNDAMENTOS DE PROGRAMACIÓN
Historia de las computadoras Dispositivos de entrada
Presentamos.
SISTEMAS OPERATIVOS.
Usando StreamReader y StreamWriter
Usando StreamReader y StreamWriter
Instalaciones Desatendidas
Linux Linux es un sistema operativo diseñado por cientos de programadores de todo el planeta, aunque el principal responsable del proyecto es Linux.
Funciones de un Sistema Operativo (S.O.) Elementos de un S.O.
¿Qué es un sistema operativo y para qué sirve? Un sistema operativo (SO) es un programa informático cuyo principal objetivo es permitir.
TIPOS DE SISTEMAS OPERATIVOS ● Sistemas Operativos de multiprogramación (o sistemas operativos de multitarea). ● Sistemas Operativos distribuidos. ● Sistemas.
SISTEMAS OPERATIVOS. El sistema operativo es un conjunto de programas que: ■Inicializa el hardware del ordenador. ■Suministra rutinas básicas para controlar.
ESTRUCTURA DE S.OPERATIVO
ESTRUCTURA DE SISTEMAS OPERATIVOS
ESTRUCTURA DE SISTEMAS OPERATIVOS  ESTRUCTURA MONOLÍTICA  ESTRUCTURA JERÁRQUICA  ESTRUCTURA MAQUINA VIRTUAL  ESTRUCTURA CLIENTE-SERVIDOR  ESTRUCTURA.
MIDDLEWARE Y PROGRAMACION WEB DISTRIBUIDA. ¿ QUE ES MIDDLEWARE?
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED
ESTRUCTURA DE UN SISTEMA OPERATIVO MALLMA CAMARGO KEVIN Ing. Sistemas.
Estructura de un sistema operativo ALUMNO: MENDOZA MAMANI CARLOS ALBERTO CICLO: VI TURNO: NOCHE.
Estructura de los sistemas Operativos 1. Componentes de un sistema operativo  Administración de procesos  Administración de memoria  Subsistema de Entrada/Salida.
Estructura de un sistema operativo Mendoza Mamani Carlos Alberto.
Estructura de los Sistemas Operativos Alumna:Arratea Almeyda Aracelli.
Lenguajes del lado del cliente
ESTRUCTURA DE SISTEMAS OPERATIVOS Carbajal Rojas karla.
Tema 2 Estructura de un programa en C. IWI Tema 2 Programa en C U n programa en C es una serie de instrucciones en un lenguaje muy especifico (similar.
MANEJO DE UBUNTU COMANDOS SHELL / TERMINAL.
Programación Modular Programación de Computadoras - Hugo Vega Grupo2: Reina Rodríguez Miriam Salluca.
Acme Acme es un editor de texto y shell gráfico del sistema operativo Plan 9 from Bell Labs, diseñado e implementado por Rob Pike. Puede usar el lenguaje.
INDICE ¿QUE ES LINUX? HISTORIA DE LINUX CARACTERISTICASUTILIDADES VENTAJAS Y DESVENTAJAS CONTENIDO DE LINUX ¿QUE ES MS-DOS? FUNCIONES DE MS-DOS.
1 TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño.
Es un ordenador de software que puede ejecutar un sistema operativo por el mismo, este tipo de sistemas operativos, presentan una interface a cada proceso.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
ESTRUCTURA DE LO SISTEMAS OPERATIVOS Presentado por: Jennifer.
Estructura de Sistemas Operativos
SISTEMA OPERATIVO Un sistema operativo es un programa o conjunto de programas de un sistema informático que gestiona los recursos de Hardware y provee.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS. Estos sistemas no tienen una estructura definida, sino que son escritos como una colección de procedimientos donde.
Conjunto de programas contenidos en un núcleo o kernel que efectúan la gestión de los procesos básicos de un Sistema informático, y permite la normal.
Estructura de los Sistemas Operativos
ESTRUCTURA DE SISTEMAS OPERATIVOS MOSQUERA HERRERA CLAUDIA ANGELICA ANDROID WINDOWS APPLE LINUX.
Hilos de Procesamiento. Hilos Concepto Beneficios Hilos a nivel kérnel y a nivel usuario Modelos multihilos Hilos de Solaris 2 Hilos de Java.
Transcripción de la presentación:

Microkernels - Minix Sistemas Operativos 2 – Usac 2009

Minix Un UNIX más Que se ha mantenido pequeño Que tiene un microkernel Y que aun siendo pequeño es multitarea y bien diseñado Totalmente modular Con un stack TCP/IP Hecho en C como los machos

Arquitectura . . . Lo primero que debemos entender

El kernel en minix El componente central Basicamente como dicta la filosofia de los microkernels solo maneja el acceso al hardware y la comunicación entre procesos

¿Versus Linux (el viejo linux)? * Todos los servicios se obtienen en los servidores mediante llamadas IPC

Las llamadas al sistema Desde el usuario al kernel Send, receive y sendrec Los procesos de usuario estan condenados a la ultima Si uno quiere que un susbsistema haga algo basta con enviarle un mensaje

IPC . . . en minix El IPC se maneja asi Un proceso envia un mensaje y el destinatario al kernel El kernel lo envia al destinatario correcto (mediante el UID indicado) Funcionan a manera de demonios

Las llamadas al sistema Table.c FS independiente

Y por si tenían duda Todo es a traves del kernel (sea cual sea la religión del kernel). Tanto hardware (drivers) como software (ver el caso de FORK)

¿Como se programan? Un programa accesa a una llamada a traves de una biblioteca En este caso si queremos crear una llamada tenemos que crear la llamada y la biblioteca o la función de acceso correspondiente El prototipo lo encuentran en /usr/include/unistd.h

Entrando en detalle Si queremos implementar nuestra llamada necesitamos editar y seguir la estructura de table.c no_sys, /* 0 = unused */ do_exit, /* 1 = exit */ do_fork, /* 2 = fork */ do_usac/* 77 = XXX */ nuestra llamada. Ademas de escribir el método de la llamada debemos usar el proto.h

Algunas otras Debemos informar a la biblioteca de la nueva llamada Esto se hace ubicando un archivo .c en el directorio /lib/posix con la sintaxis _llamada.c #include <lib.h> #define fork _fork #include <unistd.h> PUBLIC pid_tfork() { message m; return(_syscall(MM, FORK, &m)); }

Y este codigo significaba Se llama a _syscall Se elige entre MM o FS (cuando el kernel recibe una llamada lo primero que hace es convocar a MM/FS) El segundo parametro define el tipo de servicio (ver /usr/include/minix/callnr.h) Y repitiendo un programa de usuario NO puede ejecutar la llamada directamente, tiene que usar un mensaje (ver /usr/include/minix/type.h)

¿Y ahora? Prueben minix por si mismos Editor similar a vi – elvis Editor similar a nano – elle Buscan algo: find -name foo.c Si quieren ver el codigo de una llamada busquen el getset.c Editar el codigo y copiar por ftp, wget o ¿telnet? O ir más alla y leer esto http://www.csd.uoc.gr/~hy345/assignments/03/vim_c.pdf O esto:http://minix1.woodhull.com/faq/vmwctool.html