Está en la página 1de 22

Universidad Simn Bolvar Sistemas de Operacin II

GNU/LINUX

CANAIMA GNU/LINUX

Proyecto GNU
Compilador GCC

Biblioteca C

Interpretador de comandos

Compatibles con UNIX

Otros

Kernel Linux
Caractersticas comunes con UNIX:
Multi-tarea Memoria virtual Librerias compartidas Carga por demanda Otras.

Los controladores de dispositivos y las extensiones del ncleo normalmente se ejecutan modo kernel y se pueden cargar y descargar fcilmente como mdulos, mientras el sistema contina funcionando sin interrupciones.

GNU/LINUX
Las aplicaciones de sistema creadas por el proyecto GNU

NCLEO LINUX

GNU/LINUX

Kernel
* Administra la memoria para todos los programas y procesos en ejecucin. * Administra el tiempo de procesador de los programas y procesos en ejecucin. * Se encarga de que el acceso a los perifricos/elementos de nuestro ordenador sea de manera cmoda.

Gestor de Procesos

Completely Fair Scheduler CFS


Los procesos listos para ejecutarse son almacenados en un rbol rojo-negro. Segn el virtual runtime se selecciona el prximo proceso a ejecutarse. Lleva el control del tiempo que corre cada proceso para garantizar una planificacin justa. El timeslice que es asignado a cada proceso depende de su prioridad: Prioridad esttica: es fijada por el usuario o por otro programa. Prioridad dinmica: es asignada por el planificador durante el tiempo de ejecucin del proceso, y es el valor revisado para seleccionar el siguiente proceso a ejecutar.

Memoria Virtual
Tabla de pginas con tres niveles: Directorio de pginas: un proceso activo tiene slo un directorio de pginas, donde cada entrada en el mismo, seala a una pgina del directorio intermedio de pginas. Para un proceso activo, el directorio debe estar en la memoria principal. Directorio intermedio de pginas: es el que puede ocupar varias pginas y donde cada entrada al directorio seala a una pgina de la tabla de pginas. Tabla de pginas: sta tambin puede ocupar varias pginas y en cada entrada se hace referencia a una pgina virtual del proceso.

Memoria
Asignacin de pginas - Bloques de pginas contiguos correspondientes a bloques de marcos de pginas contiguos. - Utiliza el sistema de colegas donde el ncleo mantiene una lista de grupos de marcos de pgina contiguos de tamao fijo. Algoritmo de reemplazo de pginas - Algoritmo del reloj: asocia un bit de uso y un bit de modificacin a cada pgina de la memoria principal. - En Linux utiliza una variable edad. Una pgina con un envejecimiento 0 es una pgina vieja que no se ha referenciado en bastante tiempo y es la mejor candidata para el reemplazo.

Disco

CFQ

Se utiliza Completely Fair Scheduling como opcin desde el

kernel 2.6.6 (mayo de 2004) y por defecto a partir de la versin 2.6.18 (septiembre de 2004).

El algoritmo sirve las peticiones de acuerdo a la prioridad de los Hay tres tipos de prioridad (en orden de mayor a menor):

procesos.

Real Time (8 niveles) Best Effort (8 niveles) Idle (para procesos dormidos).

Disco CFQ (2)

Se mantiene:

Una cola de peticiones sncronas para cada proceso. Una cola compartida para las peticiones asncronas entre todos los procesos para cada nivel de prioridad.

Las peticiones en cada cola son ordenadas y mezcladas segn la CFQ sirve las peticiones de la siguiente manera:

posicin del cabezal del disco.

Si la cola actual tiene peticiones pendientes y no ha agotado su tiempo, despachar de esa cola.

Disco CFQ (3)

Si la cola actual no tiene peticiones pendientes, esperar a que agote su tiempo. Seleccionar la siguiente cola que tenga peticiones pendientes.

El time slice para cada cola depende de la prioridad de asociada

a la misma.

Sistema de Archivos

Linux posee cuatro abstracciones: archivo, directorio, inodo y Los sistemas de archivos son montados en un mount point Un archivo es un string ordenado de bytes. Un directorio es un archivo que lista los archivos que contiene. Cada archivo tiene metadata asociada a l que se guarda en otra Toda esta informacin se guarda en una estructura llamada

mount points.

especfico, llamado namespace.

estructura llamada inodo.

superbloque.

Sistema de Archivos ext4

Evolucin de ext3 (filesystem que introdujo el journal) Ventajas:

Gran Sistema de archivos (volmenes de 1 EB y archivos de 16 TB). Inclusin de extents. Asignacin atrasada. Mayor cantidad de subdirectorios. Chequeo ms rpido del sistema de archivos.

Canaima
Qu es Canaima ? Canaima es una metadistribucin GNU/Linux Venezolana basada en Debian (usa el sistema de paquetes APT); surge inicialmente como una solucin para cubrir las necesidades ofimticas de los usuarios finales de la Administracin Pblica Nacional (APN) y para dar cumplimiento al decreto presidencial Nro. 3.390, sobre el uso de Tecnologas Libres en la APN. Versiones 1.0 - 29/12/2008 (Debian Lenny) 2.0 - 05/02/2009 (Debian Lenny) 3.0 - 05/05/2011 ( Debian Squezze)

Canaima

Mantenimiento para arquitecturas x86 (i386) y x86-64 (amd64) que se encuentra en procesadores de los fabricantes Intel, AMD y VIA de 32 y 64 bits. El mayor esfuerzo en desarrollo y soporte de Canaima GNU/Linux se invierte en la arquitectura i386, por ser esta la que cuenta con mayor cantidad de usuarios a nivel nacional. Se distribuye en distintos medios, que incluyen el repositorio, el instalador en formato DVD para arquitecturas i386 y amd64, el LiveDVD para mltiples arquitecturas con su instalador integrado y el instalador para dispositivos USB.

Canaima

Canaima Raiz Canaima Semilla


Canaima Institucional. Canaima Comunal
http://comunal.canaima.softwarelibre.gob.ve/doku.php

Sabores

Canaima Forense
http://forense.canaima.org.ve

Canaima Colibri (disponible)


http://colibri.canaima.softwarelibre.gob.ve/doku.php

Canaima Educativo (1er y 2do grado)


CanaimaEdu Canaimita

Canaima
Componentes nativos de Canaima
Listas de software
En cada versin de Canaima el Equipo de Desarrollo determina que software se quiere incluir en la distribucin. Este software debe ser distribudo como software libre basado en estndares abiertos de acuerdo al marco legal vigente, con las excepciones que el Centro Nacional de Tecnologas de Informacin autorice. Listas funcionales Una vez que se determinan los nombres de los paquetes que se desean incluir en una versin de Canaima, se genera una lista funcional en texto plano que contiene los nombres de los paquetes, uno por lnea, separados por caracteres de nueva lnea. rbol de dependencias

Una vez definida la lista funcional, es necesario resolver el rbol de dependencias de todos los paquetes involucrados.

Canaima
Arbol de dependencias

Custom Debian Distributions ( Canaima version 1.0) Debpartial-mirror (pruebas no satisfactorias) Python-cdd (restricciones de tiempo) Debootstrap / Cdebootstrap
Esta alternativa utiliza las libreras del sistema APT para resolver el rbol de dependencias, tal y como lo hara una herramienta de alto nivel como apt-get o aptitude.

Repositorios

Todos los repositorios de Canaima GNU/Linux utilizan reprepro para su creacin y administracin.

Canaima

Instalador El mtodo recomendado para instalar Canaima es el Instalador de Debian. El instalador de Debian est compuesto por un pequeo sistema Linux diseado para arrancar el programa principal que organiza un men de mdulos y realiza algunas tareas bsicas como acceder al medio de instalacin para obtener ms mdulos y preconfigurar el entorno de instalacin. Mdulo del instalador Al final de la instalacin, se ejecuta un mdulo que instala los paquetes especificados en la lista funcional y aplica el shell script de postconfiguracin.

Canaima
Paquete de integracin Canaima no es slo una seleccin de paquetes y un instalador automatizado para facilitar la utilizacin de software libre y de estndares abiertos, tambin incluye mejoras con respecto a un sistema operativo libre tradicional:

Estilo visual de calidad internacional desarrollado ntegramente por talento venezolano y con herramientas libres y de estndares abiertos bajo Linux Capacidad de incluir un perfil inicial para nuevos usuarios del sistema Integridad y autenticidad en el sistema de paquetes a travs de la utilizacin de PGP Scripts de asistencia al usuario final para tareas comunes

Fuentes

Linux Kernel Development. Robert Love. Addison-Wesley. 3 Edicin. http://www.linuxdoc.org/HOWTO/KernelAnalysis-HOWTO-3.html http://structio.sourceforge.net/pablo/actualiz-kernel.html http://canaima.softwarelibre.gob.ve/

http://www.ibm.com/developerworks/linux/library/l-completely-fair-sc

También podría gustarte