Escolar Documentos
Profissional Documentos
Cultura Documentos
NUCLEO DE ANZOTEGUI
COORDINACIN DE POSTGRADO
MAESTRA EN INFORMTICA GERENCIAL
SISTEMAS OPERATIVOS
0
INDICE
INTRODUCCIN....4
1
9.3 Seguridad Interna 117
9.4 Seguridad del sistema archivos..117
9.5 Proteccin.119
CONCLUSION.143
BIBLIOGRAFIA.144
2
INTRODUCCIN
3
Canaima GNU/Linux, surge inicialmente como respuesta a las necesidades
omticas y de otros procesos productivos de los usuarios nales de la
Administracin Pblica Nacional (APN), y para dar cumplimiento al decreto
presidencial Nro. 3.390 sobre el uso de Tecnologas de Informacin Libres en la
APN.
4
CAPTULO I. ESTRUCTURA DEL HARDWARE
5
de una computadora de escritorio marca VIT modelo E2220-03, con las siguientes
caractersticas, ver figura 1, tabla 1.
6
Tabla 1. Caractersticas equipo VIT modelo E2220-03.
Procesador
Memoria RAM
Modelo DDR3-1066/1333/1600
Puerto 2
Controlador de E/S
Puerto Serial 1
Puerto Paralelo 0
Disco Duro
Tarjeta de Red
7
Integrada 1 chipset integrado RTL8111G y un
puerto RJ45
Puerto PCI
Puertos 2 PCI
1 PCI-E 1X
1 PCI-E 16X
8 PUERTOS 2.0
4 PUERTOS 3.0
Puerto ps/2
Salida VGA
8
Figura 1.2. Diagrama parte delantera de la unidad principal, tomado de
(Manual del computador VIT Modelo E2220-03, 2015)
Tabla 2. Leyenda
9
Figura 1.3. Diagrama parte trasera de la unidad principal, tomado de
(Manual del computador VIT Modelo E2220-03, 2015)
Tabla 3. Leyenda
10
1.1 Diagrama de Bloques de la estructura del Hardware.
Dispositivos de entrada
Teclado Ratn
Dispositivos
CPU
Almacenamiento
Memoria
Microprocesador Discos
Intel Core i7-3770 ROM Flexibles
Ivy Bridge
Discos
UC ULA
Duros
RAM
1T
Memoria 8 Gb DDR3
7200rpm
cache 1600Mhz
Discos
pticos
CdRom
DVD
Tarjeta Tarjeta
Monitor Impresora
Red Sonido
Tarjeta Lector
Video Memoria
11
Para empezar, los chips Ivy Bridge estn construidos en 22 nm, lo que
implica una reduccin de tamao considerable en relacin a los 32 nm de Sandy
Bridge. Esto tiene un impacto inmediato en el consumo elctrico: los chips Core i7
y Core i5 Ivy Bridge tienen un valor TDP (Thermal Design Power, o Thermal
Dissipated Power) de 77 Watts, bastante inferior a los 95 Watts que eran estndar
en los chips Sandy Bridge.
Caractersticas
12
Los Grficos Intel HD, en los procesadores Intel Core de tercera
generacin, integran el motor de grficos y el procesamiento de medios al chip
ofreciendo grficos muy vvidos para una mejor experiencia de juego.
13
Especificaciones
Cache L2 4 x 256KB
Cache L3 8MB
Ncleos 4 Ncleos
Tecnologa de Fabricacin 22 nm
Soporta 64 bits SI
TDP 77 Watts
Disipador Incluido
En Ivy Bridge cada ncleo (core) posee una cach interna L2 de 256 kB.
Luego, los 4 ncleos comparten una gran cach L3, que es de de 6 MB en el Core
i5 y 8 MB en el Core i7.
14
Una de las principales caractersticas de este procesador es el integrar
mltiples ncleos de forma nativa. Es decir, ncleos que comparten la memoria
cach y el juego de instrucciones, velocidades que van inicialmente desde los 2.66
Ghz. hasta por encima de los 4 Ghz.
Cada procesador ser capaz de ejecutar dos instrucciones por cada ciclo
de reloj, por lo que en un sistema que tenga instalado el Intel Core i7 con cuatro
ncleos, el sistema operativo le reportar que tiene instalado ocho ncleos.
Intel Core i7, contar con 2 vas (2-way) que permitir administrar hasta 16
hilos (threads) de ejecucin en un procesador de ocho cores, que es lo que
permite Intel Core i7 oen su defecto 8 hilos de ejecucin en un procesador Quad
core. Actualmente la tendencia es aprovechar los procesadores dual o quad core
para optimizar el rendimiento, veremos si este remozado HT logra hacer
diferencia.
15
Admite hastatres canales de memoria DDR3 a 1600 Mhz por lo que
empezaremos a ver placas con seis slots de memoria en vez de cuatro.
La memoria Cache de nivel 3 (L3) es una memoria compartida por cada uno
de los ncleos del procesador, esto trae la ventaja de que se simplifica el diseo
de la arquitectura interna del procesador, pero hay que ser cuidadosos en la forma
en al que cada uno de los cores intenta acceder a la memoria para que no se
produzcan conflictos en los accesos, quizs con un switch interno que administre
las peticiones. Esto por que siempre ser mas optimo que cada core tenga su
propio cache y que acceda a el exclusivamente a que tener un solo Gran cache en
que dos, cuatro o mas ncleos intenten acceder a el provocando, colas o latencias
demasiado altas en los accesos, lo que provoca un contrasentido en la razn de
ser del la memoria Cache de un procesador, la cual es ahorrarse tiempos al tener
un cache externo o tratar de acceder a la memoria principal en tareas crticas.
16
integraron en la CPU mientras que el PCH se hizo cargo de las funciones que
quedan en Adems de las funciones tradicionales del southbridge.
Bajo la Arquitectura Hub, una placa base tendra un chipset de dos piezas
que consiste en un chip northbridge y southbridge un chip.Como una solucin al
cuello de botella, varias funciones que pertenecen a los
tradicionalesNorthbridgeySouthbridgechipsets se reorganizan.El puente norte est
ahora eliminado por completo y sus funciones, el controlador de memoria y carriles
PCI Express paratarjetas de expansin,se ha incorporado en la matriz de la CPU o
paquete.
Con las funciones Northbridge integrados en la CPU, gran parte del ancho
de banda necesario para conjuntos de chips est ahora aliviado.
17
Figura 1.6. Componentes PCH procesador Intel i7-3770 Ivy Bridge.
18
otorgar licencias del sistema a distintos usuarios. En 1975, Berkeley lanz su
propia versin de Unix (BSD). Esta versin de Unix se convirti en la principal
competidora de la versin de los laboratorios Bell de ATT&T, pero no era la nica
ya que en 1980, Microsoft desarroll una versin de Unix para PC llamada Xenix.
1. Es software libre, esto significa que no tenemos que pagar por el uso del
mismo.
2. El sistema viene acompaado del cdigo fuente (el sistema lo forman el ncleo
del sistema (kernel) mas un gran numero de libreras que hacen posible su
utilizacin).
Las plataformas en las que en un principio se puede utilizar Linux son:
Pentium, Pentium Pro, Pentium II/III/IV, Amiga y Atari, tambin existen versiones
para su utilizacin en otras plataformas, como Alpha, ARM, MIPS, PowerPC y
SPARC.
En los ltimos tiempos, ciertas casas de software comercial han empezado
a distribuir sus productos para Linux y la presencia del mismo en empresas
aumenta rpidamente por la excelente relacin calidad-precio que se consigue con
Linux.
21
Torvalds posee la marca registrada Linux y supervisa el uso de la marca a travs
de la organizacin sin nimo de lucro Linux International, que se encarga de
difundir por el mundo los beneficios del S.O. A pesar de todo, Linus, con sus 36
aos, est felizmente casado con Tove y actualmente vive en Portland con sus
tres hijas: Patricia, Daniela y Celeste, un lugar mucho ms tranquilo para vivir con
su familia.
22
sigui conociendo como lo conocemos hoy en da. Despus de decidir seguir
desarrollando su sistema para construir un remplazo de Minix, sube al servidor de
su universidad Linux con 10.000 lneas de cdigo. A partir de ese momento Linux
empez a evolucionar rpidamente y hasta da de hoy no ha dejado de avanzar,
ganando terreno a otros sistemas operativos que no son de cdigo abierto. Linux
hoy en da sigue ganando adeptos en todas las partes del mundo debido a ser
gratuito y cada vez ms personas annimas contribuyen a su desarrollo y a
convertirse en el sistema ms estable y seguro.
23
En 1997, recibe el premio Nokia Foundation Award y Lifetime Achievement
Award at Uniform.
En 2004, fue nombrado como una de las personas ms influyentes del mundo en
el artculo de la revista Time.
24
Richard Stallman
Es tambin inventor del concepto copyleft, mtodo para licenciar software sin
privatizacin alguna.
Primeros aos
25
democracia est enferma. El propsito de la democracia es asegurarse de que los
ricos no tengan una influencia proporcional a su riqueza. Y si tienen ms influencia
que t o que yo, eso significa que la democracia est fallando. Las leyes que
obtienen de esta forma no tienen autoridad moral, sino la capacidad de hacer
dao.
Stallman ha escrito muchos ensayos sobre la libertad del software y desde
principios de los noventa ha sido un franco defensor poltico del movimiento del
software libre. Las charlas que ha dado regularmente se titulan El Proyecto GNU
y el movimiento del Software Libre, Los Peligros de las Patentes del Software y
El Copyright y la Comunidad en la edad de las redes informticas.
Linus Torvalds ha criticado a Stallman por lo que l considera pensamiento en
blanco y negro y hacer ms dao que bien a la comunidad del software libre. La
acrrima apuesta de Stallman por el software libre inspire el Virtual Richard M.
Stallman (vrms), software que analiza los paquetes instalados en un sistema
Debian GNU/Linux e informar de aquellos que son de origen no libre.
En 1999 promovi la creacin de una enciclopedia libre, la GNUPedia,
considerada como un antecedente directo de la Wikipedia, la cual desbanc a la
primera.
Actividades recientes
26
Espaa cuando estaba pendiente de aprobarse una polmica ley en favor de las
patentes de software en Europa que fue rechazada por mayora absoluta de los
Eurodiputados.
En diciembre del 2006, invitado por varias organizaciones involucradas con
el software libre, imparti varias conferencias en Ecuador. En una de ellas,
realizada en la Universidad Central insisti ante ms de dos mil asistentes, que
deben asumir una posicin militante en el uso y difusin del software libre y la
lucha contra el monopolio del conocimiento. Su presencia sirvi de motivacin
para la formalizacin de los grupos de usuarios en la Asociacin de Software Libre
del Ecuador.
Premios y reconocimientos
27
En 2004 recibi un Doctorado Honoris Causa otorgado por la Universidad
de Salta (Argentina). Ha sido el primer galardonado con el Premio Internacional
Extremadura de Conocimiento Libre que concedi la Junta de Extremadura el 7 de
febrero de 2007 en Badajoz en el marco de la III Conferencia Internacional de
Software Libre.
Tipos de Linux
Comerciales o no comerciales.
28
CAPTULO 3.- OBJETIVOS DE DISEO Y DIAGRAMA DEL
SISTEMA OPERATIVO GNU/LINUX
29
CAPTULO 4.- CONCEPTO DE PROCESO Y/O HILOS
4.1. Procesos
30
Figura 4.1. Ejecucin de varios procesos en Linux.
Para el SO Linux los procesos son las entidades activas, son similares a los
procesos secuenciales clsicos, donde cada uno ejecuta un solo programa, y al
principio tiene un solo hilo de control. En otras palabras, tiene un contador del
programa que lleva la cuenta de la siguiente instruccin a ejecutar. Linux permite
que un proceso cree hilos adicionales, una vez que empieza a ejecutarse.
31
Desde el punto de vista de un proceso ejecutndose en Linux, el kernel es
un proveedor de servicios. Cada proceso existe por separado y el espacio de
memoria reservado a cada uno de ellos est protegido para que no pueda ser
modificado. Aqu, se est llevando a cabo un sistema multiproceso real (ver Figura
8).
Figura 4.2. Procesos desde una vista interna y externa, tomado de (Diez et
al,2010).
32
En las estaciones de trabajo de un solo usuario, es muy comn que estn
ejecutndose docenas de procesos en un segundo plano, los cuales son llamados
demonios, es decir, son procesos que se inician a travs de una secuencia de
comandos de Shell cuando se empieza el sistema, siendo uno de los demonios
ms comunes el Cron, que se despierta una vez por minuto para revisar si hay
trabajo por hacer. De ser as, realiza el trabajo. Despus regresa a la inactividad
hasta que sea hora de la siguiente verificacin. (Tanenbaum, 2009, pag 740).
33
Creacin
34
instante dado. La estructura task_struct contiene informacin de varios tipos (Bello
et al, 2014, pag. 53):
35
La forma de crear los procesos en Linux es simple, se crea una copia
exacta del proceso original utilizando la llamada al sistema fork, la bifurcacin es
realizada por el proceso padre y proceso nuevo se le denomina hijo, tanto el padre
como el hijo poseen imgenes propias de memoria privadas, implementado que
los cambios que realiza el padre de sus variables no son visibles para el hijo y
viceversa (Tanenbaum, 2009, pag 740).
Para que no hay dificultad entre un proceso padre e hijo, por poseer
imgenes de memoria, variables registros y todo lo dems idntico, la llamada al
sistema fork devuelve dos valores, un cero (0) para el hijo y un valor distinto de
cero (0), el PID (Process Identifer, Identificador de proceso) del hijo, al padre. Por
lo general, ambos procesos revisan el valor de retorno y actan de acuerdo con el
resultado de retorno, en la Figura 10, se muestra el algoritmo de la creacin de un
proceso (Tanenbaum, 2009, pag 740).
Los PIDs son los que denominan a los procesos, cuando uno de estos se
crea, el padre recibe el PID del hijo, con la llamada al sistema de getpid un
proceso hijo puede conocer su PID que lo identifica, y cuando un proceso hijo
termina su PID es enviado al padre, puesto que este podra tener ms de un hijo,
al igual que los procesos hijos pueden tener hijos, producindose de un proceso
original un rbol completo de hijos, nietos y ms descendientes de (Tanenbaum,
2009, pag 741).
36
Tras crear un nuevo proceso, despus de llamar a fork, Linux llama a una
funcin de la familia exec. Estas funciones reemplazan el programa ejecutndose
en el proceso por otro programa. Cuando un programa llama a una funcin exec,
su ejecucin cesa de inmediato y comienza a ejecutar el nuevo programa desde el
principio, suponiendo que no ocurriera ningn error durante la llamada.
Generalmente uno de los dos procesos (padre o hijo) utiliza la llamada al sistema
exec despus del fork para reemplazar su espacio de memoria con un programa
nuevo.
37
Figura 4.5. Estructura de un Proceso en Linux, tomado de (Prez y Sez, 2012).
Esta estructura coincide con los dos modos del procesador que utiliza
Linux:
38
Figura 4.6. Ejemplos de la Estructura de un Proceso en Linux, tomado de (Prez y
Sez, 2012).
Estados
39
a que otro proceso desocupo los recursos, para pasar al estado de
Task_Running.
Task_Uninterruptible (Blocked):Similar al anterior, pero que no puede ser
despertado inmediatamente, espera a una interrupcin y no puede ser
despertado por una seal (el proceso est suspendido), el proceso est
bloqueado esperando que finalice una entrada/salida de datos, la llegada
de un evento, que se le asigne hardware, no tiene o no consume CPU.
Task_Zombie:proceso-hijo terminando pero que no ha sido liberado por su
proceso padre, porque este aun lo espera, es decir, el proceso ha
terminado su ejecucin pero an no ha desaparecido de las estructuras de
datos del kernel.
Task_Stopped:proceso detenido, generalmente por una seal (SIGSTOP)
o mediante el uso deptrace() para ser trenzado. til para depuracin.
40
4.2 Hilos
Linux no considera los hilos como tales, en este se crea un nuevo proceso
copiando los atributos del proceso actual. Un nuevo proceso puede ser clonado
para que comparta los recursos del actual, tales comoarchivos, gestores de
seales ola memoriavirtual.
41
fueran especficos para cada proceso o cada hilo. La llamada se hace de la
siguiente manera (Tanenbaum, 2009, pag 750):
Estructura
La seccin de cdigo.
La seccin de datos.
Los recursos del SO (archivos abiertos y seales).
42
Los hilos permiten la ejecucin concurrente de varias secuencias de instrucciones
asociadas a diferentes funciones dentro de un mismo proceso, compartiendo un
mismo espacio de direcciones y las mismas estructuras de datos del ncleo.
43
Estados
Procesos vs Hilos
Semejanzas:
44
Pueden estar en uno o varios estados: listo, bloqueado, en ejecucin o
terminado.
Tambin comparten la CPU.
Slo hay un hilo activo (en ejecucin) en un instante dado.
Un hilo dentro de un proceso se ejecuta secuencialmente.
Cada hilo tiene su propia pila y contador de programa.
Pueden crear sus propios hilos hijos.
Diferencias:
Como todos los hilos pueden acceder a todas las direcciones de la tarea,
un hilo puede leer la pila de cualquier otro hilo o escribir sobre ella. Aunque
pueda parecer lo contrario la proteccin no es necesaria ya que el diseo
de una tarea con mltiples hilos tiene que ser un usuario nico.
45
Figura 4.9. Implementacin de procesos e hilos, tomado de (Tanenbaum,
2009, pag 749)
47
operaciones deben ser ejecutadas en una nica instruccin sin ser interrumpidas y
evitando accesos a la mismo posicin de memoria por otras CPUs. El kernel Linux
prove un tipo especial atomic_t (un contador de 24 bits accesible atmicamente)
y algunas funciones especiales (ver la Tabla VI-2) que actan sobre variables de
este tipo y que estn implementadas como instrucciones atmicas escritas en
ensamblador. En sistemas multiprocesador, estas instrucciones son precedidas
por el byte lock.
48
tiempo que un proceso esperando por uno de esos recursos ceda la CPU y tenga
que conseguirla ms tarde.
49
se puede, o espera. La macro read_unlock simplemente incrementa el campo
lock. La macro write_lock intenta tomar el lock para Escritura y write_unlock lo
libera.
51
Este mecanismo disminuye el nivel de concurrencia global del sistema y se est
dejando de usar ya que puede ser reemplazado por tcnicas de sincronizacin
ms eficientes.
52
Algoritmos de Planificacin
C. Tiempo compartido.
El algoritmo que decide cuando un proceso debe dejar la CPU, quien entra
y durante cunto tiempo, es lo que se conoce como Poltica de planificacin (o
scheduler). El servicio sched_setscheduler permite definir la clase de planificacin
del proceso que la invoca. Esta llamada slo puede hacerla un proceso
privilegiado.
53
no se interrumpe su ejecucin hasta que termina de hacerlo, y al terminar o ser
bloqueado, se comienza con el siguiente que lleg primero a la cola.
En trminos de Linux los hilos de planificacin FIFO en tiempo real tienen la mayor
prioridad y no son preferentes, excepto por un hilo FIFO en tiempo real recin
preparado con una mayor prioridad.
54
Cuando se produce uno de estos eventos, el proceso que est run deja el
cpu y se selecciona el siguiente de la cola de ready. Si el evento es 1, el proceso
se aade a la cola de bloqueados hasta que termina el acceso al dispositivo, si el
evento es el 2, el proceso pasara a zombie en el caso de linux o simplemente
terminara, si el evento es el 3, el proceso se aade al final de la cola de ready
(Ver Figura 6.1).
Cuando se produce una situacin en la que todos los procesos listos para
ejecutar tienen una prioridad igual a cero (todos ellos han usado el procesador un
tiempo suficiente para que su prioridad haya cado a 0), se produce un reajuste de
55
las prioridades de todos los procesos sea cul sea su estado. la nueva prioridad
se calcula dividiendo por 2 la actual y sumando la prioridad base (prioridad =
prioridad/2 +prioridad base).
56
Existen diferentes filosofas en el procesamiento de un trabajo. Todas ellas
responden a ciertos criterios de planificacin que se vuelcan en los respectivos
algoritmos de planificacin. Esto se conoce como la modalidad de ejecucin o
procesamiento. Los ms importantes son:
1. La CPU es monoprogramada.
2. No existe diferencia entre trabajo y proceso.
3. El scheduler elige el trabajo, crea el proceso y lo ejecuta.
4. Prcticamente hay unsolonivel de planificacin.
57
Planificacin a corto plazo
Polticas de Planificacin
El criterio que decide cuando se evala si hay que cambiar el proceso que
est en la cpu (o no), que proceso ponemos, etc, se conoce como Poltica de
planificacin. En Linux, cada proceso es siempre planificado con alguna de las
siguientes polticas de planificacin:
59
de manera independiente; cada cola de ejecucin tiene dos matrices de
prioridades llamadas matrices activa y caducada. La primera tiene todas las tareas
que todava disponen de tiempo en su cuanto de tiempo, la segunda contiene
aquellos procesos que estn caducados. Cada matriz anteriormente mencionada
cuanta con una lista de procesos indexados segn la prioridad de los procesos.
60
tipo de aplicacin, etc. Sin embargo, estos son los criterios que suelen considerar
que determinan el comportamiento de una poltica:
61
Arquitectura de SMP
62
3) Todos los procesadores comparten los dispositivos de E/S, pero pueden
hacerlo bien a travs de los mismos canales, o bien a travs de otros caminos de
acceso al mismo dispositivo.
63
Escalado: Los fabricantes pueden ofrecer una gama de productos con diferentes
precios y prestaciones, en funcin del nmero de procesadores que configuran el
sistema. Sin embargo, los beneficios anteriores no son beneficios garantizados,
sino potenciales. Por su parte, el sistema operativo debe proporcionar
herramientas y funciones que permitan explotar el paralelismo del programa y
proyectarlo sobre los diferentes procesadores de un SMP. Los sistemas SMP
poseen una caracterstica muy atractiva, y es que la existencia de varios
procesadores es transparente al usuario. Es el sistema operativo el que posibilita
la sincronizacin entre los procesadores, y la planificacin de los hilos o de los
procesos, puesto que es el responsable de asignarlos a los distintos
procesadores.
Cachs L2 compartidas
En una configuracin tpica de sistema SMP con cach de dos niveles, cada
procesador tiene cachs L1 y L2 propias. Esto ocurra tambin en las primeras
64
versiones del SMP (G3), donde cada procesador tena una cach L2 propia. Sin
embargo, ltimamente ha aumentado el inters por la utilizacin de cachs L2
compartidas, como es el caso que nos ocupa. Las razones que llevaron a
considerar el uso de una o ms cachs compartidas fueron:
A primera vista, compartir la cach L2 puede parecer una mala idea. Puede
pensarse que el acceso a memoria de los procesadores ser ms lento, debido a
que los procesadores deben pugnar por el acceso a la cach L2. Sin embargo,
como varios procesadores comparten un elevado volumen de datos, en realidad
una cach compartida puede incrementar el rendimiento en lugar de disminuirlo,
ya que los datos compartidos, que se encuentran en la cach compartida, se
obtienen mucho ms rpidamente que si accediera a ellos a travs del bus.
Cach L3
65
CAPITULO 6.- GESTIN DE MEMORIA PRINCIPAL
Los datos e instrucciones con los que se trabaja deben estar en memoria
principal
66
Figura 6.1. Gestin de la memoria Fsica
67
El gestor principal de memoria fsica en el kernel de Linux es el asignador
de pginas. Cada zona tiene su propio asignador que es responsable de asignar y
liberar todas las pginas fsicas de la zona y es capaz de asignar rangos e pginas
fsicamente contiguas segn se vayan solicitando.
68
como base la informacin obtenida sobre un conjunto de tablas mantenidas por el
Sistema operativo Linux.
69
Figura 6.4. Gestin de memoria virtual
6.3 Segmentacin
La segmentacin es una tcnica de gestin de memoria que divide dinmicamente
la memoria en diferentes segmentos.
Un segmento:
70
Tiene un tamao que se ajusta a lo que va a contener. Cada segmento
puede tener un tamao diferente.
71
Figura 6.6. Traduccin de direcciones virtuales en un sistema de segmentacin pura
6.4 Paginacin
72
pginas. Cuando hay que ejecutar un proceso, sus pginas se cargan desde el
almacn de respaldo en los marcos de memoria disponibles. El almacn de
respaldo est dividido en bloques de tamao fijo que tienen el mismo tamao que
los marcos de memoria.
Por cada proceso una tabla de pginas, con una entrada para cada pgina
correspondiente al proceso.
Descriptor de bloques de disco, para cada pgina hay una entrada que
indica dnde est almacenada.
Tabla de marcos de pgina, describe el estado de cada marco en memoria
principal.
73
CAPITULO 7.- GESTIN DE ALMACENAMIENTO EN GNU-LINUX
/rhome/alumnoXX
esta es la unidad personal, cuenta con 1.5 Mb de capacidad.
/rhome/comun
esta es l unidad compartida, cuanta con 546 Mb. de capacidad.
74
Las particiones permiten organizar el espacio de los discos, dividindolo en
zonas separadas. UNIX presenta un fichero distinto en /dev para cada particin.
Para el disco /dev/sda las particiones seran sda1, sda2. En Linux, los discos
tambin pueden identificarse por su UUID a travs de /dev/disk/by-uuid.
Linux: fdisk, cfdisk, gparted para particiones MBR gdisk, sgdisk, cgdisk para
particiones GPT.
Ejemplo:
75
FUSE (el Linux) permite montar sistemas de ficheros en espacio de usuario.
Ejemplo:
Es recomendable:
Planificacin de Discos
Almacena y Gestiona los datos que los usuarios tienen guardados en los
dispositivos de almacenaje.
Asegura que los datos que se obtienen son idnticos a los que se
almacenaron originalmente.
Crea y gestiona informacin sobre los ficheros y sobre s mismo.
Los sistemas Linux pueden manejar varias particiones de disco, y cada una puede
tener un sistema de archivos distinto.
Mtodos de asignacin y gestin del espacio libre
No tiene mucho sentido que el propio sistema operativ ose ejecute sobre memoria
virtual. Sera una verdadera pesadilla que el sistema operativo tuviera que
mantener tablas de pginas para l mismo. La mayora de los procesadores de
propsito general ofrecen la posibilidad del modo de direccionamiento fsico junto
con direccionamiento virtual. El modo de direccionamiento fsico no necesita las
tablas de pginas y el procesadorno intenta realizar ningn tipo de traducciones en
este modo. El ncleo de Linuxe st preparado para funcionar sobre un espacio de
direccionamiento fsico.
77
Control De Acceso
Hay muchas razones por las que se puede querer restringir el acceso a
determinadas reas de memoria. Hay memoria, como la que contiene el
ejecutable, que es claramente memoria de slo lectura; el sistema operativo no ha
de dejar que el proceso escriba sobre su propio cdigo de programa. Por el
contrario, pginas de memoria que contengan datos han de poder ser ledas y
escritas, pero un intento de ejecutar algo de estas pginas ha de fallar. La mayora
de los procesadores tienen al menos dos modos de operacin:modo ncleo y
modo usuario. No es deseable que un proceso ejecute cdigo del ncleo, o que
acceda a datos del ncleo excepto cuando el procesador est funcionando en
modo ncleo.
Caches
Linux emplea unas cuantas caches para la gestin de la memoria, entre las
cuales tenemos:
Buffer Cach
Contiene buffers de datos que son utilizados por los manejadores de dispositivos
de bloques. Estos buffers son de tamao fijo (por ejemplo 512 bytes) y contienen
78
bloques de informacin que ha sido bien leda de un dispositivo de bloques o que
ha de ser escrita. Un dispositivo de bloques es un dispositivo sobre el que slo se
pueden realizar operaciones de lectura o escriturade bloques de tamao fijo. Por
ejemplo, los discos durosson dispositivos de bloque. El cache buffer est indexado
va el identificador de dispositivo y el nmero de bloque deseado, ndice que es
utilizado para una rpida localizacin del bloque. Los dispositivos de bloque son
exclusivamente accedidos a travs del buffer Cache.
Cach de Pginas
Este se utiliza para acelerar el acceso a imgenes y datos en disco. Se utiliza para
guardar el contenido lgico de un fichero de pgina en pgina y se accede va el
fichero y el desplazamiento dentro del fichero. Conforme las pginas se leen en
memoria, se almacenan en la cach.
Cache de Intercambio
Solo las pginas que han sido modificadas (dirty) son guardadas en el fichero de
intercambio. Mientras no vuelvan a ser modificadas despus de haber sido
guardadas en el fichero de swap, la prxima vez que necesiten ser descartadas
(swap out) no ser necesario copiarlas al fichero de intercambio pues ya estn all.
Caches Hardware
79
Tabla De Pginas En Linux
Cada plataforma sobre la que funciona Linux tiene que proporcionar las macros
que permitan al ncleo atravesar las tablas de pgina de cada proceso. De esta
forma, el ncleo no necesita conocer el formato de las entradas de la tabla de
pginas ni cmo stas se organizan.
Esto es tan til que Linux utiliza el mismo cdigo de gestin de tablas de pginas
en un procesador Alpha, que tiene tres niveles de tablas de pginas, que en un
Intel x86, que slo tiene dos niveles de tablas (para ello, supone que el tamao de
la tabla intermedia es 1, y por tanto, coincide con la entrada del directorio).
Asignacin De Pginas
80
Liberacin De Pginas
81
de memoria fsica. En esta situacin Linux reducir el tamao de la cache de
pginas.
El demonio de swap revisa de uno en uno cada proceso del sistema para
ver si es un buen candidato para intercambiar algunas de sus pginas. Buenos
candidatos son procesos que pueden ser intercambiados (algunos procesos no
pueden, p.e. los procesos de tiempo real) y que tienen una o ms pginas que
pueden ser enviadas al disco o descartadas de memoria. Las pginas son
enviadas al disco slo si los datos que contienen no pueden ser recuperados de
otra forma.
83
elegido; slo quitar un pequeo nmero de pginas. Las pginas bloqueadas en
memoria no se pueden intercambiar ni descartar.
84
sido modificada. Si la pgina se modifica posteriormente (un proceso escribe
sobre ella), su entrada se borra de la cache de intercambio.
Copy On Write
85
7.2 Sistemas de archivos manejados linux
86
VFS, que redirige la peticin al mdulo que gestiona el archivo Sistema Virtual de
Archivos (VFS).
87
Nmero de nodos-I libres.
Direccin del primer bloque de datos.
Tamao de un bloque de datos.
Tamao de un bloque parcial de datos.
Hora de la ltima modificacin sistema archivos.
Hora integracin (montaje) del sistema.
Nmero de versin del sistema.
Hora de la ltima verificacin del sistema.
Intervalo mximo entre dos personas
Nodo-i
Cada uno de los nodos-i describe slo un archivo. Observe que en Linux,
los directorios y dispositivos tambin se representan como archivos, por lo cual
tienen sus correspondientes nodos-i. Tanto los superbloques como los nodos-i
tienen una estructura correspondiente que se mantiene en el disco fsico donde
reside el sistema de archivos.
88
El VFS mantiene una antememoria (cache) con informacin de cada
sistema de archivo montado y en uso.
89
EXT2
90
En la Figura 7.3, se muestra la distribucin de un sistema de archivo
localizado en una particin de disco ext2.
Figura 7.3. Distribucin en el disco del Sistema de archivos ext2 de Linux., tomado
de (tanenbaum,2009,pag 790)
91
a un slo archivo. Un nodo-i contiene informacin contable (incluyendo toda la
informacin devuelta por stat, que simplemente toma del nodoi), as como la
informacin suficiente para localizar todos los bloques de disco que contienen los
datos del archivo. Y por ultimo estn los bloques de datos en el cual se almacenan
Todos los archivos y directorios.
92
Directorios en Linux.
Cada directorio posee cierto nmero integral de bloques de disco, de manera que:
Despus de los cuatro campos fijos, se tiene el campo variable que es el nombre
del archivo en s, al cual se le agrega el byte 0 de terminacin y se rellena para un
lmite de 32 bits. Cabe destacar, que se puede realizar un relleno adicional en otro
instante.
93
el campo anterior para voluminoso y rellenando la primera entrada. Desde luego
que este relleno se puede utilizar para una entrada subsiguiente.
EXT3
Disponibilidad
Tras un corte elctrico o una cada inesperada del sistema (tambin se denomina
cierre no limpio del sistema), se debe comprobar con el programa e2fsck cada
sistema de archivos ext2 montado en la mquina para ver si es consistente. El
proceso de comprobacin lleva mucho tiempo y puede prolongar el tiempo de
arranque del sistema de un modo significativo, especialmente si hay grandes
volmenes que contienen un elevado nmero de archivos. Durante este proceso,
no se puede acceder a los datos de los volmenes.
Fcil transicin
Fragmentacin de bloques
95
Estas nuevas opciones, que deben especificarse al crear el archivo,
permiten almacenar versiones comprimidas y/o encriptadas de los archivos
en disco.
Borrado lgico
EXT4
7.2.4 SWAP
96
swap dedicada (recomendable), un archivo swap o una combinacin de
particiones y archivos swap.
El tamao de su espacio swap debera ser igual o dos veces mayor que la
memoria RAM de su ordenador, o 32 MB, la cantidad que sea ms grande de
estas dos, pero no ms de 2048 MB (o 2 GB).
XFS
XFS permite bloques de tamao variable por cada sistema, de 512 bytes a
64 kilobytes. El cambio de tamaos de bloques vara la fragmentacin, sistemas
con ficheros pequeos suelen usar bloques ms pequeos para evitar el
desaprovechamiento de espacio por fragmentacin interna. Sistemas con ficheros
grandes suelen elegir la opcin inversa para reducir la fragmentacin externa
ReiserFS
ReiserFS ofrece funcionalidades que pocas veces se han visto en otros sistemas
de archivos:
97
de ficheros montado y desmontado. Podemos aumentar el tamao del sistema de
ficheros mientras lo tenemos montado y desmontado (online y offline). Para
disminuirlo, nicamente se permite estando offline (desmontado). Namesys nos
proporciona las herramientas para estas operaciones, e incluso, podemos usarlas
bajo un gestor de volmenes lgicos como LVM o EVMS.
Tail packing, un esquema para reducir la fragmentacin interna.
Reiser4
98
F2FS
99
directorio inicial de esa jerarqua se denomina directorio raz y se simboliza con
una barra de divisin (/).
Todos los ficheros y directorios aparecen debajo del directorio raz / (El
equivalente en el mundo Unix al C:\ de Windows) aunque se encuentren en
discos/dispositivos distintos. En Linux/Unix no existen letras de discos (C:, D:, etc)
Los dispositivos se 'montan' (empiezan a formar parte) del rbol de directorios del
sistema, pero esto lo explicaremos en otra ocasin.
100
Figura 7.4. Directorios en Linux, bajo el directorio Raiz, tomado de
(Tecnologica,2012)
/bin Contiene los programas ejecutables que son parte del sistema operativo
Linux. Muchos comandos de Linux como cat, cp, ls, more y tar estn ubicados en
este directorio.
101
/dev Contienen todos los archivos de acceso a dispositivos. Linux trata cada
dispositivo (terminales, discos, impresoras, etc.) como si fuera un archivo especial.
/lib Contiene los archivos de biblioteca utilizados por las aplicaciones y utilidades
del sistema, as tambin como las libreras pertenecientes a diferentes lenguajes
de programacin.
/proc Contiene archivos con informacin sobre el estado de ejecucin del sistema
operativo y de los procesos.
/tmp Directorio temporal que puede usar cualquier usuario como directorio
transitorio.
102
/var Contiene archivos temporales y de trabajo generados por programas del
sistema. A diferencia de /tmp, los usuarios comunes no tienen permiso para utilizar
los subdirectorios que contiene directamente, sino que deben hacerlo a travs de
aplicaciones y utilidades del sistema.
103
el tipo de archivo (primer carcter)
o -: archivo normal
o d: directorio
o l: enlace simblico
o c: nodo de dispositivo de carcter
o b: nodo de dispositivo de bloque
o p: tubera con nombre
o s: socket
los permisos de acceso del archivo (los nueve caracteres, tres para cada
usuario, grupo y otros en ese orden)
el numero de enlaces duros del archivo
el nombre del usuario propietario del archivo
el nombre del grupo al que pertenece el archivo
el tamao del archivo en caracteres (en bytes)
la fecha y hora del archivo (mtime)
el nombre del archivo.
104
# cd /determinada/ubicacion/
# chown -R reina:duquesa .
# chmod -R ug+rwX,o=rX .
105
$ ls -l /etc/passwd /etc/shadow /dev/ppp /usr/sbin/pppd
106
primer digito opcional: suma de ID usuario (=4), ID grupo (=2) y bit
adherente (=1)
segundo digito: suma de los permisos de lectura (=4), escritura (=2) y
ejecucin (=1) del usuario
tercer digito: dem para grupo
cuarto digito: dem para otros
$ ls -l reina cabina
Los equipos con sistema operativo Linux tienen dispositivos de E/S como
discos, impresoras y redes conectados a ellas. Con la finalidad de que los
programas accedan a estos dispositivos, linux integra los dispositivos en el
sistema de archivos, como archivos especiales. A cada dispositivo de E/S se le
asigna un nombre de ruta, por lo general en /dev. Por ejemplo, un disco podra ser
/dev/hd1, una impresora podra ser /dev/lp y la red podra ser /dev/net.
107
Estos archivos especiales se pueden utilizar de la misma forma que
cualquier otro archivo. No se requieren comandos o llamadas al sistema
especiales. Basta con utilizar las llamadas al sistema usuales como open, read y
write.
1. Manejadores de Interrupciones
2. Manejadores de Dispositivos
3. Manejadores del Software Independiente del Dispositivo
4. Software de E/S en el espacio del usuario.
108
Por ejemplo, cuando un programa de usuario trata de leer un bloque de un
fichero se invoca al sistema operativo para que lleve a cabo la llamada. El
software independiente del dispositivo busca el bloque en el bfer de la cach, por
ejemplo. Si el bloque requerido no est all, se invoca al driver del dispositivo para
que enve la solicitud al hardware para que obtenga el bloque del disco. Luego el
proceso se bloquea hasta que se completa la operacin del disco.
Manejadores de dispositivos:
Cada driver tiene lo que se conoce como nmero de dispositivo mayor, que
sirve para identificarlo. Si un driver acepta varios dispositivos (por ejemplo, dos
discos del mismo tipo), cada disco tiene un nmero de dispositivo menor que lo
identifica. En consecuencia, los nmeros de dispositivo mayor y menor especifican
cada uno de los dispositivos de E/S en forma nica. En unos cuantos casos, un
solo driver maneja dos dispositivos que estn muy relacionados.
109
Procedimientos de un manejador de dispositivo
Cada driver se divide en dos partes; ambas forman parte del kernel de
Linux y se ejecutan en modo de kernel. La mitad superior se ejecuta en el contexto
del que hace la llamada y sirve como interfaz para el resto de Linux. La mitad
inferior se ejecuta en el contexto del kernel e interacta con el dispositivo. Los
drivers pueden hacer llamadas a los procedimientos del kernel para asignar
memoria, administrar el temporizador, controlar el DMA y otras cosas. El conjunto
de funciones del kernel que se pueden llamar se define en un documento conocido
como Interfaz de driver-kernel.
Manejadores de interrupciones
Funciones:
110
4. Proteccin de dispositivos, evitando que usuarios no autorizados accedan al
dispositivo
9. Informe de errores
Los errores no resueltos por los manejadores debern ser tratados por el
SID, que intentar solucionarlos, y si no puede, deber informar de los
mismos.
111
usuario como parte de una aplicacin har llamadas al sistema y otras actividades
del sistema desde el ncleo.
Procedimientos de biblioteca
Sistema de spooling
112
especial. Aqu tambin hay distintas personas con distintas preferencias. CTRL-C
es una opcin comn, pero no es universal.
Dispositivos de Bloques
Dispositivos de Caracteres
113
Implementacin de E/S en Linux ,
Las columnas representan las funciones que deben aceptar todos los
drivers de caracteres. Cuando se realiza una operacin en un archivo especial de
caracteres, el sistema indexa en la tabla de hash de dispositivos de caracteres
para seleccionar la estructura apropiada, y despus llama a la funcin
correspondiente para realizar el trabajo. As, cada una de las operaciones de
archivos contiene un apuntador a una funcin contenida en el driver
correspondiente.
Administrador de cach
114
de bloques y el de los archivos especiales de caracteres.
Para lograr este objetivo, los sistemas Linux tienen una cach entre los
drivers de disco y el sistema de archivos, como se muestra en la Figura IX-6 .
Drivers de Red
9.1 Seguridad
116
Control de Acceso (ACL), especifica qu dominios tienen acceso al recurso y qu
operaciones asociadas al recurso pueden utilizar. El problema que plantea la lista
de control de acceso es su tamao variable, ya que depende del nmero de
dominios que tengan acceso al recurso y de las operaciones que pueda realizar
cada uno de ellos.
Grupo del propietario: rene a todos los usuarios que pertenecen al grupo
del propietario.
SEGURIDAD EXTERNA:
SEGURIDAD INTERNA
Seguridad local
Iptables: Tabla proveda por el firewall del kernel de Linux. Requiere privilegios del
root para funcionar.
Deja que el administrador del sistema defina las tablas que contiene cadenas de
reglas para tratar a los paquetes.
El archivo etc/system puede definir variables para el ncleo del SO, como el
nmero mximo de archivos abiertos por un proceso o el uso de memoria
compartida.
Mtodos de Autenticacin
Session: esta interfaz del mdulo configura y administra las sesiones de usuario,
los mdulos con esta interfaz tambin pueden realizar tareas adicionales que son
requeridas para permitir acceso, como el montaje de directorios principales de
usuarios.
Contraseas
119
Utilizar una contrasea con 8 o ms dgitos.
Utilizar mezclas de letras maysculas y minsculas.
Utilizar algn carcter no alfabtico, como signos de puntuacin.
Utilizar contraseas fciles de memorizar, y no escribirlas en ningn sitio.
Utilizar contraseas que se puedan escribir rpidamente, por si alguien nos
vigila.
9.2 Proteccin
120
Escaneado en acceso
121
Razones Econmicas: Ahorros importantes al liberarse del pago de licencias y
especialmente por la replicacin casi gratuita de aplicaciones comunes a toda la
administracin pblica. El muy bajo costo del software permitir la ejecucin de
programa.
122
El Ministerio del poder Popular para Ciencia, Tecnologa e Industrias
Intermedias cre el portal www.sotwarelibre.gob.ve, del Gobierno Bolivariano de
Venezuela, con la finalidad de mantener a la poblacin venezolana, interesada en
este tema, informada con temas de actualidad, links a instituciones relacionadas,
programacin y cronograma de actividades relacionadas con el Plan Canaima,
entre otras.
123
El Plan Canaima Educativo se basa en la entrega de computadoras a
alumnos de las distintas unidades educativas del pas, con la finalidad de
democratizar las tecnolgicas que se estn aplicando en la actualidad y llevarlas al
alcance de todos.
Uno de sus fines es facilitar las relaciones entre el Poder Pblico y los
ciudadanos, a travs de las tecnologas de informacin, por lo que la norma
garantizar el acceso del pueblo a la informacin en sus roles de contralor y
usuario.
124
La nueva Ley establece que todo programa informtico que se desarrolle,
adquiera o implemente en el Poder Pblico deber ser software libre y con
estndares abiertos, salvo las excepciones expresamente establecidas y previa
autorizacin del ente competente, a fin de promover el desarrollo nacional y
garantizar la soberana tecnolgica.
125
en servidores Linux y los datos estn almacenndose igualmente en dichos
servidores.
Figura 10.1 Uso de sistemas operativos por versin a nivel global (abril a septiembre de 2015)
126
Figura 10.2 IBM Roadrunner, la supercomputadora ms potente de 2008, funciona bajo una
distribucin GNU/Linux Red Hat Enterprise Linux.
127
Captulo 11. Distribucin Canaima GNU/Linux
11.1 Antecedentes
128
Lenovo:para la certificacin de equipos de dicho fabricante para el uso de
Canaima.
Siragon: ensamblador venezolano de equipos de informticas, convenio
mediante el cual se certifica Canaima para dichos equipos.
130
busca dotar a ms de 250 mil alumnos nios en edad escolar4concomputadores
porttiles Magallanesy su caso de uso ha sido presentado en congresos
internacionales sobre el uso de estndares abiertos,5y a pesar de su reciente
desarrollo ha sido utilizada en el Festival Latinoamericano de Instalacin de
Software Libre(FLISOL)6donde ha sido instalada en los equipos de muchos
usuarios.
Ofimtica:
o suite de oficina LibreOffice, con los siguiente mdulos:
Procesador de textos
Hoja de clculo
Generador de Presentaciones
Generador de frmulas matemticas y software de dibujo
o Gestin de proyectos:Planner
o Editor de HTML.
131
Siguiendo la tendencia impuesta por otras organizaciones que realizan
distribuciones GNU/Linux, desde la versin 3, LibreOffice sustituy a
OpenOffice.orgy a partir de la versin 3.1 deja de ser incorporado el gestor debase
de datosde esta suite de oficina.
Internet:
o Navegador web: Cunaguaro, basado en Iceweasel, presente desde
la versin 3.0 de Canaima y que sustituye al navegador Curiara.
o Cliente de correo electrnico: Gucharo.8
o Cliente de mensajera instantnea: Pidgin.9
o ClienteTwitter: Turpial.10
Grficos:
o Libreoffice Draw.
o GNU Paint.
o Editor de diagramas Dia.
o Gimp
o Inkscape
o Visor de cmara WebCheese.
o Shotwell Photo Manager.
o Software de escaneo de imgenesXsane.
Programacin:
o Quanta Plus.
o Eclipse.
o Anjuta:Entorno de desarrollo integradopara programar en
loslenguajes de programacin C,C++,Java,PythonyVala, en sistemas
GNU/LinuxyBSD.
132
11.3 Lanzamientos
2.0.1
Canaima 16 de abril de 2009; hace 6 aos13
RC1
133
5 21 Julio 2015
Color Significado
134
Figura 11.1. Etapas de Desarrollo Canaima
135
desarrolladores@canaima.softwarelibre.gob.vepermisos suficientes en los
servidores de la Plataforma Canaima para subir tus paquetes a la rama de
desarrollo. En tu solicitud debes incluir:
136
11.5 Cayapa Canaima
137
11.6 Usos de Canaima GNU/Linux
Canaima Educativo
CANTV
138
11.7 Ediciones
11.8 Versiones
139
Numeracin
140
Comenzando con la serie Linux 2.6.x, no hay gran diferencia entre los
nmeros pares o impares con respecto a las nuevas herramientas desarrolladas
en la misma serie del ncleo. Linus Torvalds dictamin que este ser el modelo en
el futuro.
Tambin, algunas veces luego de las versiones puede haber algunas letras
como rc1 o mm2. El rc se refiere a release candidate e indica un lanzamiento
no oficial. Otras letras usualmente (pero no siempre) hacen referencia a las
iniciales de la persona. Esto indica una bifurcacin en el desarrollo del ncleo
realizado por esa persona, por ejemplo ck se refiere a Con Kolivas, ac a Alan Cox,
mientras que mm se refiere a Andrew Morton.
141
(2.5) donde estaban permitidos cambios mayores. Esto signific que los usuarios
siempre tenan una versin 2.4 a prueba de fallos y con lo ltimo en seguridad y
casi libre de errores, aunque tuvieran que esperar por las caractersticas de la
rama 2.5. La rama 2.5 fue eventualmente declarada estable y renombrada como
2.6. Pero en vez de abrir una rama 2.7 inestable, los desarrolladores de ncleos
eligieron continuar agregando los cambios en la rama estable 2.6. De esta forma
no haba que seguir manteniendo una rama vieja pero estable y se poda hacer
que las nuevas caractersticas estuvieran rpidamente disponibles y se pudieran
realizar ms pruebas con el ltimo cdigo.
Sin embargo, el modelo de desarrollo del nuevo 2.6 tambin signific que
no haba una rama estable para aquellos que esperaban seguridad y bug fixes sin
necesitar las ltimas caractersticas. Los arreglos solo estaban en la ltima
versin, as que si un usuario quera una versin con todos los bug fixed
conocidos tambin tendra las ltimas caractersticas, las cuales no haban sido
bien probadas. Una solucin parcial para esto fue la versin ya mencionada de
cuatro nmeros (y en 2.6.x.y), la cual significaba lanzamientos puntuales creados
por el equipo estable (Greg Kroah-Hartman, Chris Wright, y quizs otros). El
''equipo estable'' solo lanzaba actualizaciones para el ncleo ms reciente, sin
embargo esto no solucion el problema del faltante de una serie estable de
ncleo. Distribuidores de Linux, como [[Red Hat]] y [[Debian]], mantienen los
ncleos que salen con sus lanzamientos, de forma que una solucin para algunas
personas es seguir el ncleo de una distribucin.
142
reemplazado prximamente por el 2.6.27 como ncleo estable en mantenimiento
durante varios aos.
143
CONCLUSION
econmicas: es gratuito
privacidad: los programas de GNU/Linux no recopilan informacin sobre
nuestros gustos, historial de navegacin,... para envirsela a terceras
empresas
seguridad: no se ve afectado por los virus
robustez: mucho ms estable que los sistemas Windows
funcionalidad: con las actuales versiones de GNU/Linux, tenemos los
programas equivalentes a cualquier distribucin comercial. Adems, existen
aplicaciones cientficas disponibles slo para GNU/Linux.
desarrollo: GNU/Linux cuenta con numerosas herramientas para el
desarrollo de programas. No en vano es un sistema operativo hecho por
expertos en Informtica.
144
BIBLIOGRAFA
145
e&id=107:el-software-libre-y-su-uso-en-la-administracion-
publica&catid=23
146