Implementacion de un sistema operativo
-
Upload
luis-alberto-cervantes-huitron -
Category
Documents
-
view
241 -
download
0
description
Transcript of Implementacion de un sistema operativo
Contenido
INTRODUCCIÓN.............................................................................................................................2
ANTECEDENTES.............................................................................................................................3
DEFINICIÓN DEL PROBLEMA......................................................................................................4
OBJETIVO GENERAL.....................................................................................................................5
OBJETIVOS ESPECÍFICOS.............................................................................................................6
HIPÓTESIS........................................................................................................................................7
JUSTIFICACIÓN..............................................................................................................................8
FUNDAMENTO TEÓRICO..............................................................................................................9
MARCO CONTEXTUAL.............................................................................................................9
Sistemas Operativos.....................................................................................................................10
¿Qué es un sistema operativo?..................................................................................................10
Partes de un sistema operativo..................................................................................................11
Servicios proporcionados.........................................................................................................11
Tipos de sistemas operativos para PC.......................................................................................12
Clasificación.............................................................................................................................17
Arquitecturas............................................................................................................................20
Capas (niveles).........................................................................................................................22
Estructuras................................................................................................................................26
Virtualización de escritorios.........................................................................................................35
Conceptos....................................................................................................................................39
MÉTODO........................................................................................................................................41
Análisis de situación actual..........................................................................................................41
DISEÑO.............................................................................................................................................43
Hardware Utilizado para la revisión.........................................................................................45
ANÁLISIS PRELIMINAR......................................................................................................................58
Estudio de factibilidad..................................................................................................................58
IMPLEMENTACIÓN......................................................................................................................59
IMPLANTACIÓN................................................................................................................................66
ANÁLISIS DE RESULTADOS................................................................................................................68
Conclusiones y recomendaciones....................................................................................................71
1
INTRODUCCIÓN
La tecnología, su desarrollo, sus formas de producción y su utilidad es un modo de
organización social. La tecnología implica el uso de herramientas para un objetivo
específico.
En una sociedad capitalista, las formas de producción dominantes están orientadas a la
acumulación de capital y tienen como principio la propiedad privada. Este principio
organizativo regula la producción y el consumo de mercancías incluida la tecnología.
Las tecnologías de la información y la comunicación y su relación con la sociedad es una
relación dialéctica que implica procesos sociales y nuevas configuraciones de mecanismos
de control y dominio.
Estas tecnologías funcionan sobre plataformas digitales cuyo acceso se determinan
mediante el tipo de software que se utiliza y el conocimiento que tiene del mismo.
Estas plataformas el avance del conocimiento para la educación quedará determinado por
el valor que se le otorgue. Esto es así porque las tecnologías se insertan en intereses
sociales, económicos y políticos, mecanismos, soluciones. Por ejemplo, siendo más fuerte
la lógica del mercado, el acceso a las aplicaciones de las plataformas digitales podrá
restringirse a través de programas de código cerrado, cuyo costo se podía imponer a través
de mecanismos de oferta y demanda.
Por otro lado si la lógica del bienestar social fuera primordial, el acceso a estas tendría que
ser universal y todo el tipo de programas informáticos tendrían que permitir el aprendizaje,
conocimiento, modificación y mejora de su propio funcionamiento, es decir software libre y
abierto. Las comunidades, redes, y todas esas personas que contribuyen, producen,
modifican y distribuyen son el objetivo central de este proyecto.
2
ANTECEDENTES
La empresa Sanmina ofrece servicios de manufactura a diferentes sectores del mercado:
multimedia, computadoras personales, productos médicos, automotrices y de
comunicación.
El proceso crítico del negocio está en la cotización de la materia prima y de la Manufactura
del producto. La manufactura del producto incluye costos de mano de obra y de la
tecnología empleada para la realización de un producto.
En la actualidad la empresa se encuentra ante la problemática en la disponibilidad de sus
sistemas de información. Esta problemática se da por la creación de algún nuevo sistema
automatizado para la producción, el reemplazo de un sistema o la mejora de uno ya
existente (atribuyéndole nuevas capacidades), los cuales requieren constantemente de
recursos informáticos para poder llevar a cabo sus procedimientos administrativos, con
mayores niveles de eficacia y eficiencia.
La configuración tecnológica con que cuenta la empresa es a partir de disponer de una red
empresarial conformada por servidores que operan bajo el sistema operativo Windows y
estaciones de trabajo ubicadas en oficinas administrativas que permiten administrar el
proceso productivo y requieren servicios de acceso a la información de los servidores, así
como al intercambio de información a través de servicios de correo electrónico y
aplicaciones. Otro equipo instalado es el que se encuentra en las líneas de producción que
ofrece servicio interno realizando funciones de ayudas visuales, acceso a la intranet con los
servicios de aplicaciones para el flujo de manufactura y contando con los siguientes
servicios y herramientas informáticas. La disposición de este equipo es actualizada cada
vez que se inicia un proyecto para un proyecto nuevo. La disponibilidad de las herramientas
informáticas a través de la red, produce una constante inversión de pagos por licencia por
software, la cual para dicha configuración presenta un costo de $1’960,850 pesos
anualmente, es por lo que se busca seleccionar una configuración de ahí la necesidad de
3
buscar nuevas formas de administrar los recursos informáticos para impactar en los costos
de producción y eliminar los costes derivados de licencias.
DEFINICIÓN DEL PROBLEMA
Determinar un sistema operativo de bajo costo compatible con el software y hardware de
virtualización de escritorios, que permita ofrecer los mismos servicios que el esquema
actual de configuración de software, condición necesaria para modificarlo y generar una
imagen corporativa en cumplimiento con las actuales políticas y necesidades en la empresa.
.
4
OBJETIVO GENERAL
Realizar un esquema de configuración de disponibilidad de software basado un sistema
operativo que permita personalizara la interfaz gráfica para hacerla más amigable para el
usuario basándose en una secuencia de selección de servicios y elementos del sistema
operativo Windows, con restricciones a los diferentes niveles de usuarios, facilitar la
comunicación entre los diferentes servicios y aplicaciones, proporcionando a nivel técnico
y operativo.
5
OBJETIVOS ESPECÍFICOS
Investigar cual distribución de Linux es compatible con el software y hardware de
virtualización de escritorio.
Eliminar software innecesario incluido en la distribución, así como instalación de
software requerido por los usuarios.
Modificar la interfaz gráfica utilizando logos de la empresa.
Lograr la autentificación mediante el proxy corporativo.
Definir usuarios y administradores locales.
Permitir el acceso a las unidades de almacenamiento en red
Autentificación mediante Active Directory.
Configurar samba para adaptarse a la red corporativa.
Hacer pruebas de rendimiento y de consumo de recursos.
Crear plan de migración sin afectar tiempos de producción
6
HIPÓTESIS
Con la adaptación del servicio de escritorios virtuales se reducirán en un 90% el coste por
licenciamiento de software y por conexiones remotas RDP y proporcionara oportunidades
de ahorro durante todo el ciclo de uso del producto.
7
JUSTIFICACIÓN
Los beneficios que se obtendrán con el acceso al código fuente del software libre será el
alto cumplimiento de estándares facilitando la mantenibilidad de los servicios y
herramientas informáticas para el proceso productivo y administrativo de la empresa.
Una de las ventajas es que el sistema podrá ser clonado de manera que se pueda levantar
múltiples servidores que funcionen bajo el mismo esquema de configuración y así
reemplazar el sistema actual por uno de bajo costo siendo más extensibles y fáciles de
adaptar dado que no existen límites al producto libre, siendo posible utilizarlo para
cualquier propósito, estudiarlo y modificarlo; además brindara independencia y permitirá
decidir cómo adaptar el software a sus necesidades.
8
FUNDAMENTO TEÓRICO
MARCO CONTEXTUAL
Sanmina es una empresa líder en la industria de manufactura de ensambles electrónicos,
inicia operaciones en México en el año 1987 y actualmente cuenta con ocho plantas en
Jalisco, 3 de ellas (Planta 1, 2 y 3) conforman la División EMS (Electronic Manufacturing
Services) México.
Sanmina Planta 1 se ubica en Av. De la Solidaridad Iberoamericana #7020 Col. Club de
Golf Atlas El Salto Jalisco, México, Cód. Postal 45680.
Misión: Ser la planta más rentable del mundo al atraer y fomentar el crecimiento de
nuestros clientes y en consecuencia de nuestros colaboradores y accionistas a través de
políticas de calidad y ambientales que nos distingan del mercado.
Visión: Ser la mejor opción de la industria de servicios electrónicos para nuestros clientes y
accionistas.
Trabajadores: Este elemento integra el capital humano que nos permite hacer que nuestro
modelo funcione mediante la participación e instructores expertos, administradores y
coordinadores de programas y alumnos que participan en cada uno de los programas.
Organigrama: Existe una dirección en la cual dependen los departamentos de Ingeniería
Industrial, Ingeniería en Sistemas, en el cual el departamento de sistemas se encargan de
generar proyectos de administración y gestión de sus sistemas de información a partir de las
necesidades planteadas por el departamento de producción las cual describen los
requerimientos de las estaciones en las líneas de producción.
Sanmina está comprometida a proveer servicios de manufactura de tarjetas y ensambles de
circuitos eléctricos y electrónicos de calidad, la compañía no es dueña del diseño o el
producto. Es dueña de la maquinaria y el método de factura por lo que se cobra la maquila.
9
El uso de sistemas de gestión es clave en la generación y sistematización de la
productividad.
MARCO TEÓRICO
Sistemas Operativos
¿Qué es un sistema operativo?
Es el programa que actúa como intermediario entre el usuario de la de la computadora y el
hardware de la computadora.
Software crucial para utilizar un ordenador, es un conjunto de órdenes y programas que
gestionan los recursos de hardware y provee servicio a los programas de aplicación. Lo que
el usuario final ve en pantalla y entiende por "Windows" en palabras llanas.
En la Ilustración uno muestra los niveles en los que se encuentra el sistema operativo y el
hardware.
10
Ilustración 1
Aplicaciones de usuario
Sistema Operativo
Hardware
Interfaz con máquina virtual
Interfaz con hardware
Partes de un sistema operativo
Manejo de procesos
Manejo de memoria
Manejo de ficheros
Manejo de dispositivos de entrada y salida
Manejo de redes
Interprete de comandos
Servicios proporcionados
Ejecución de programas
Operaciones de entrada y salida
Manipulación de ficheros
Comunicaciones
Detección de errores
Asignación de recursos
Contabilidad
Protección
11
Tipos de sistemas operativos para PC.
Unix
Creado por ken Thompson y Dennis Ritchie en laboratorios Bell AT&T de
MULTICS. Inicial mente era un sistema operativo de texto y algunos gráficos muy
rústicos. Hoy en día es la base de comunicaciones de internet.
La marca UNIX se ha aplicado tradicionalmente a la familia de la multitarea,
sistemas operativos multiusuario que se derivan del sistema operativo de AT & T
UNIX originales, desarrollados en la década de 1970 en el centro de investigación
de los laboratorios Bell por Ken Thompson, Dennis Ritchie, y otros.
Microsoft Ms-2
(Comprado por Bill Gates propietario de Microsoft) De tipo texto, Mono usuario
(Solo puede atender un usuario) y monitorea (Ejecuta una tarea a la vez). Es el
soporte
Para programas que manejan gráficos y sus emulaciones de sistema operativo
grafico como: Windows 3.X, 95,98, 98SE, Me, 2000, NT. Es decir están ejecutados
desde MS-DOS.
Es un sistema operativo para computadoras basado en x86. Fue el miembro más
popular de la familia de sistemas operativos DOS de Microsoft, y el principal
sistema para computadoras personales compatible con IBM PC en la década de
1980 y mediados de 1990, hasta que fue sustituida gradualmente por sistemas
operativos que ofrecían una interfaz gráfica de usuario, en particular por varias
generaciones de Microsoft Windows.
12
Sistema Operativo Microsoft Windows:
Conocido generalmente como Windows o MS Windows La compañía fue fundada
en 1975 por William H. Gates III y Paul Allen. De tipo gráfico, multiusuario
(puede atender a varios usuarios) y multitarea (ejecuta varias tareas simultaneas).
Desde aquel entonces hasta nuestros días Microsoft Windows ha presentado
diversas versiones con el claro objetivo de ir adaptándose a los tiempos y, sobre
todo, a las necesidades que tenía el usuario en todo momento. Así, entre aquellas
tendríamos que destacar Windows NT, Windows 95, Windows 98, Windows 2000,
Windows XP, Windows Vista, Windows 7 y Windows 8, 8.1 y 10 que es la última
hasta el momento.
PC/2 de IBM
Competidor de Ms-DOS en años 60 y 70; que perdió popularidad por el éxito de
Microsoft Windows, se desarrolló hasta la versión PC-DOS 200. El Personal
System/2 o PS/2 es la segunda generación de ordenadores personales (PC) de IBM.
Lanzada en 1987, fue creada por IBM en un intento de recapturar el control del
mercado del PC introduciendo una arquitectura propietaria avanzada.
Aunque la gran presencia en el mercado del MS-DOS parecía asegurarle unas
ventas muy numerosas, fracasó en su intento de devolver el control del mercado del
PC a IBM. Debido a los altos costes de una arquitectura cerrada, los clientes
preferían los PC de la competencia que extendían la existente arquitectura del PC en
lugar de abandonarla por algo nuevo. No obstante, muchas de las innovaciones del
PS/2 como la unidad de disquete de 3,5 pulgadas HD.
13
Linux
Creado por el Finlandés Linus Benedict Torvalds en la universidad de Helsinki
basándose en el S.O UNIX MINIX en 1991. Actualmente existen una gran gamma
de versiones Linspire, Debian, Knoppix, Red Hat, SuSe, Slackware, Mandrake,
Ubuntu, Fedora y Android todos ellos de tipo gráfico.
GNU/Linux es uno de los términos empleados para referirse a la combinación del
núcleo o Kernel libre similar a Unix denominado Linux con el sistema operativo
GNU. Su desarrollo es uno de los ejemplos más prominentes de software libre; todo
su código fuente puede ser utilizado, modificado y redistribuido libremente por
cualquiera bajo los términos de la GPL (Licencia Pública General de GNU, en
inglés: General Public License) y otra serie de licencias libres.
La Fundación Linux protege y promueve los ideales de la libertad y la generosa
colaboración establecida a través del desarrollo de Linux y comparte estos ideales
para alimentar cualquier esfuerzo con el objetivo de hacer que el futuro sea un lugar
mejor en el que vivir.
Mediante el apoyo a la comunidad de desarrollo del Kernel y fomentar la
colaboración en una escala verdaderamente masiva, la Fundación Linux une miles
de mentes curiosas en el intercambio libre y abierto de ideas.
14
Ubuntu
Basado en Linux y se distribuye como software libre, incluye su propi entorno de
escritorio denominado Unity
Está compuesto por diversos paquetes de software que, en su mayoría, son
distribuidos bajo código abierto y licencia libre. Este sistema operativo no tiene
fines lucrativos (se consigue de manera gratuita) y aprovecha las capacidades de los
desarrolladores de la comunidad para mejorar sus prestaciones.
Impulsado por la creencia de que el software debe ser libre y accesible a todos
proporciona.
La libertad de usar el programa, con cualquier propósito.
La libertad de estudiar cómo funciona el programa y adaptarlo a sus
necesidades.
La libertad de redistribuir copias para que pueda ayudar a otros.
La libertad de mejorar el programa y publicar sus mejoras al público, de
manera que todos se benefician.
La visión para Ubuntu es parte social y la parte económica: el software libre, a
disposición de todos en los mismos términos, y financiado a través de una cartera de
servicios prestados por Canonical.
15
MacOs de Macintosh
Creado por Jef Raskin, Steve Wozniak, Steve Jobs y Ron Wayne: sistema operativo
topo gráfico. Macintosh desde sus inicios no acepto la estandarización de PC-IBM,
y comenzó a desarrollar sus micro procesadores, memorias RAM, tarjetas
principales (Motherboard o tarjeta madre), puertos, sistemas operativos y
aplicaciones de manera independientes a los PC’s, por ello no era posible ejecutar
programas para Mac en PC, a menos que se utilizara un programa emulador para
ello, actualmente Apple Mac se está integrando al estándar PC, para mayor
compatibilidad.
Mac OS clásico, desarrollado íntegramente por Apple, cuya primera versión vio la
luz en 1985. Su desarrollo se extendería hasta la versión 9 del sistema, lanzada en
1999. A partir de la versión 10 (Mac OS X), el sistema cambió su arquitectura
totalmente y pasó a basarse en Unix, sin embargo su interfaz gráfica mantiene
muchos elementos de las versiones anteriores.
Solaris
Desarrollada por Sun Microsystem, es un sistema operativo poco comercial y para
servidores principalmente. Normalmente para grandes corporativos
El primer sistema operativo de Sun nació en 1983 y se llamó inicialmente SunOS.
Estaba basado en el sistema UNIX BSD, de la Universidad de California en
Berkeley, del cual uno de los fundadores de la compañía fue programador en sus
tiempos universitarios. Más adelante incorporó funcionalidades del System V,
16
convirtiéndose prácticamente en un sistema operativo totalmente basado en System
V.
Clasificación
Con el paso del tiempo los sistemas operativos fueron clasificándose de diferentes maneras,
dependiendo del uso o de la aplicación que se les deba.
S.O por lotes
Procesan grandes cantidades de trabajos con poca o ninguna interacción del usuario y los
programas en ejecución. Se reúnen todos los trabajos comunes para realizarlos al mismo tiempo,
evitando la espera de dos o más trabajos como sucede en el procesamiento en serie. Estos
sistemas son los más antiguos fueron introducidos alrededor de 1956 para aumentar la capacidad
de procesamiento de los sistemas.
S.O por lotes: SCOPE Y EXEC II.
S.O en tiempo real
Se encuentran sub utilizados sus recursos con la finalidad de mantener en espera para
atender los procesos en el momento que lo requieran, se utilizan en entornos donde se
procesan un gran número de sucesos o eventos.
Estos sistemas operativos son construidos para aplicaciones muy específicas como control
de tráfico aéreo, bolsa de valores, control de refinerías, etc.
S.O de tiempo real: Solaris y VxWorks.
17
S.O Multiprogramación
Puede soportar la ejecución de dos o más trabaos activos (que se estén ejecutando) al
mismo tiempo. Como resultado que la unidad central de procesamiento (cpu) siempre tenga
una tarea que ejecutar, aprovechando al máximo su utilización.
S.O multiprogramación: UNIX, Windows 95, Windows 98, Windows NT, Mac OS,
soportan multitarea.
S.O Tiempo compartido
Permiten la simulación de que el sistema y sus recursos son todos para cada usuario. El
usuario hace una petición a la computadora, está la procesa tan pronto como le es posible, y
la respuesta aparecerá en la terminal del usuario, los principales recursos del sistema so
continuamente utilizados entre diversos usuarios, dando a cada uno de los usuarios la
ilusión que tiene el sistema dedicado para sí mismos.
S.O de tiempo compartido: Multics, OS/360
18
S.O distribuidos
Permiten distribuir tareas o procesos, entre un conjunto de procesadores, que pueden estar
en conjunto o en equipos diferentes, en este caso es transparente para el usuario
Son sistemas operativos confiables, ya que si un componente del sistema se descompone
otro componente debe ser capaz de reemplazarlo.
S.O distribuido: Solaris.
S.O de red
Son aquellos sistemas que mantienen a dos o más computadoras unidas a través de algún
medio de comunicación físico, con el objetivo primordial de poder compartir los deferentes
recursos y la información de sistema.
S.O de red: UNIX, Windows NT Server.
S.O en paralelo
En estos sistemas se pretende que cuando existan dos o más procesos que compitan por
algún recurso se puedan realizar o ejecutar al mismo tiempo.
En UNIX existe también la posibilidad de ejecutar programas sin tener que atenderlos en
forma interactiva, simulando paralelismo.
S.O en paralelo: ALPHA y PVM.
19
Arquitecturas
Para describir anchura de registros, bus de direcciones, bus de datos o instrucciones.
La arquitectura de un ordenador está constituida por la arquitectura de su conjunto de
instrucciones o ISA (del inglés Instruction Set Architecture) y su microarquitectura.
Arquitectura del ordenador = Arquitectura del conjunto de instrucciones (ISA) +
Microarquitectura
La arquitectura del conjunto de instrucciones (ISA) es una imagen abstracta del sistema de
computación tal como sería visto por un programador en lenguaje máquina, e incluye el
conjunto de instrucciones, modos de direccionamiento, registros y formatos de direcciones
y datos soportados por el procesador o CPU (del inglés Central Processing Unit).
Los procesadores, y por extensión los ordenadores, quedan definidos por tanto en base a la
arquitectura del conjunto de instrucciones que implementan, así podemos encontrar
referencias a procesadores u ordenadores de tipo CISC, RISC o SISC:
CISC (Complex Instruction Set Computer).
RISC (Reduced Instruction Set Computer).
SISC (Specific Instruction Set Computer).
20
En arquitectura de computadoras, 16 bits, 32 bits o 64 bits es un adjetivo usado para
describir enteros, direcciones de memoria u otras unidades de datos que comprenden hasta
16 bits, 32 bits o 64 bits de ancho. En el tema que nos ocupa, se utilizan para referirse a una
arquitectura de procesador basadas en registros, bus de direcciones o bus de datos que
permiten procesar (interna y externamente) datos de ese ancho.
Diferentes familias de procesadores pueden tener diferentes ISA, por este motivo, un
programa compilado para un tipo de máquina no podrá ejecutarse en otra con un conjunto
de instrucciones diferentes. Del mismo modo, un procesador con una arquitectura de 32 bits
no podrá ejecutar un sistema operativo u otra aplicación compilada para una
arquitectura/procesador de 64 bits. Sin embargo, por compatibilidad hacia atrás, lo inverso
suele ser posible, es decir, podemos ejecutar aplicaciones de 32 bits en procesadores de 64
bits.
21
Capas (niveles)
Kernel/Núcleo
Es el modulo central del sistema operativo. Es aquella parte que interactúa directamente
con el hardware de una máquina. Debido a esto, es importante que el Kernel sea lo más
pequeño posible, provee todos los servicios esenciales que requieren las otras partes del
sistema operativo y las aplicaciones. El Kernel consiste en la parte principal del código del
sistema operativo, el cual se encargan de controlar y administrar los servicios y peticiones
de recursos y de hardware con respecto a uno o varios procesos, en otras palabras, el Kernel
es el corazón del sistema operativo.
En la siguiente ilustración se muestra en qué nivel se encuentra el Kernel el hardware y las
aplicaciones en un sistema operativo, Ilustración 2.
Ilustración 2
22
Cada sistema operativo tiene un tipo distinto de Kernel: así los Unix más tradicionales usan
un Kernel " monolítico" en el que está todo compilado dentro, otros usan los llamados
"micro Kernel" como el Darwin, Hurd e incluso Windows (krnl32.dll). GNU/Linux usa un
Kernel "modular" un núcleo bastante grande comparado con un micro Kernel, pero que es
capaz de delegar funciones en los llamados " módulos”, partes independientes del núcleo
que pueden ser incorporadas dinámicamente si hacen falta y luego descargadas si molestan.
Así se pueden cargar "drivers" para hardware, firewall o funciones especiales de red cuando
se necesiten y cuando por ejemplo, se cierre la conexión a internet, liberar la memoria que
usaba ese modulo.
23
Capas o niveles de Kernel o núcleo
Nivel 1. Gestión de Memoria: Proporciona las facilidades de bajo nivel para la gestión de
memoria secundaria necesaria para la ejecución de procesos.
Nivel 2. Procesador: Se encarga de activar los quantums de tiempo para cada uno de los
procesos, creando interrupciones de hardware cuando no son respetadas.
Nivel 3. Entrada/Salida: Proporciona las facilidades para poder utilizar los dispositivos de
E/S requeridos por los procesos.
Nivel 4. Información o Aplicación o Intérprete de Lenguajes: Facilita la comunicación
con los lenguajes y el sistema operativo para aceptar las órdenes en cada una de las
aplicaciones. Ejecutando un programa el software de este nivel crea el ambiente de trabajo
e invoca a los procesos correspondientes.
Nivel 5. Control de Archivos: Proporciona la facilidad para el almacenamiento a largo
plazo y manipulación de archivos con nombre, va asignando espacio y acceso de datos en
memoria.
El núcleo o Kernel realiza diferentes funciones tales como:
Manejo de interrupciones.
Creación y destrucción de procesos.
Cambio de estado de los procesos.
Despacho
Suspensión y reanudación de procesos.
Sincronización de procesos.
Comunicación entre procesos.
Manipulación de los bloques de control de procesos.
Apoyo para las actividades de entrada/salida.
Apoyo para asignación y liberación de memoria.
Apoyo para el sistema de archivos.
Apoyo para el mecanismo de llamada y retorno de un procedimiento.
24
Apoyo para ciertas funciones de contabilidad del sistema.
El núcleo y los procesos
El núcleo (Kernel) de un sistema operativo es: un conjunto de rutinas cuya misión es la de
gestionar el procesador, la memoria, la entrada/salida y el resto de procesos disponibles en
la instalación. Toda esta gestión la realiza para atender al funcionamiento y peticiones de
los trabajos que se ejecutan en el sistema.
El esquema general de la gestión del procesador, es el siguiente:
Definición y concepto de proceso.
El Bloque de Control de Proceso (PCB) como imagen donde el sistema operativo ve
el estado del proceso.
Estados por los que pasa un proceso a lo largo de su existencia en la computadora.
Operaciones que se pueden realizar sobre un proceso.
Clasificación de los procesos según su forma de ejecución, de carga, etc.
Por proceso debe entenderse: un programa en ejecución junto con el entorno asociado
(registros, variables, etc.).
25
Estructuras
Monolítica
Micro Kernel
S.O de internet
Máquinas Virtuales
Estructura Monolítica
Son aquellos en los que su centro es un grupo de estructuras fijas, las cuales funcionan
entre sí, para poder tener esta estructura, las diferentes partes de Kernel son compiladas por
capas, Es la estructura de los primeros sistemas operativos. Fundamentalmente por un solo
programa compuesto de un conjunto de rutinas entrelazadas de tal forma que cada una
puede llamar a cualquier otra.
En la siguiente imagen puede apreciarse como es que funciona la estructura monolítica en
el sistema operativo y los niveles en los que trabaja la memoria principal sobre el sistema y
los programas de usuario. Ilustración 3
Ilustración 3
26
Características
Construcción del programa final a base de módulos compilados de manera separada.
Buna definición de paramentos de enlace entre las distintas rutinas existentes.
Carecen de protecciones y privilegios.
Hechos a la medida, por lo que son eficientes y rápidos en su ejecución y gestión.
Carecen de flexibilidad para soportar diferentes ambientes de trabajo o tipos de
aplicaciones.
Contacto más próximo con el hardware.
Núcleo mínimo, más seguro y hábil.
Estructura Jerárquica
Se divide el sistema operativo de tal forma que cada una de ellas estuviera perfectamente definida.
Consiste en organizar el sistema operativo con una jerarquía de capas cada una constituida sobre la
que está bajo ella. Como se muestra en la ilustración 4:
Ilustración 4
27
En esta estructura se basan prácticamente la mayoría de S.O actuales. Otra forma de ver
este tipo de sistema es la denominación de anillos concéntricos o “Rings”
En el sistema de anillos, cada uno tiene una apertura, conocida como puerta o trampa (trap),
por donde pueden entrar las llamadas de las capas inferiores. De esta forma, las zonas más
internas del sistema operativo o núcleo del sistema estarán más protegidas de accesos
indeseados desde las capas más externas. Las capas más externas serán, por lo tanto, más
privilegiadas que las externas.
Como se muestra en la siguiente imagen la organización jerárquica (anillos). Ilustración 5
Ilustración 5
28
Estructura MicroKernel
También conocido como μ-Kernel, es un tipo de núcleo de un sistema operativo que provee
un conjunto de primitivas o llamadas al sistema mínimas, para implementar servicios
básicos como espacios de direcciones, comunicaciones entre procesos y planificación
básica
Proporcionar los mecanismos necesarios para implementar un sistema operativo (OS).
Estos mecanismos son el bajo nivel de espacio de direcciones de la gestión, hilo , gestión y
comunicación entre procesos (IPC). Si el hardware proporciona múltiples anillos o modos
de la CPU , el microkernel es el único software de ejecución en el nivel más privilegiado
(generalmente conocido como supervisor o modo de núcleo ).
Como se muestra en la ilustración la estructura básica de microkernel. Ilustración 6
Ilustración 6
29
Características
Portabilidad, si se aplica una adecuada implementación.
Concurrencia y colaboración entre procesos, dada por el diseño.
Flexibilidad en el patrón de diseño.
Minimiza lo que contiene el Kernel.
Confiabilidad, ya que organiza procesos indiferentes al S.O. como procesos de nivel
usuario. Seguridad, Aísla los servicios del sistema ante el usuario.
Extensibilidad: se pueden agregar funciones en modo usuario.
Reduce la complejidad (Simplicidad) es centralización de los fallos.
Performance: bajo rendimiento, debido que la comunicación es a través de mensajes
que no es eficiente como son las llamadas al sistema.
Bajo desempeño debido a las llamadas primitivas al sistema
30
Sistemas operativos de internet
Los sistemas Operativos online o también llamados WEBOS son software. Que trabajan a
base de un navegador con un punto de acceso a la web o nube , es importante resaltar que
los sistemas operativos online fueron creados para desarrollarse y desenvolverse al igual
que los sistemas operativos comunes los cuales utilizan como prioridad los complementos
de hardware que estos posean, a diferencia de los sistemas Operativos online o también
llamados WEBOS los cuales no necesitan de altas características tecnológicas en cuanto a
hardware debido a que estos trabajan a base de un navegador como. Mediador para acceder
al sistema virtual.
Características
Retraso del proceso debido a la velocidad de navegación, como también su dependencia en
cuanto toda su funcionalidad es dependiente de la Web.
31
Máquinas virtuales
Es un S.O que presenta una interface a cada proceso, mostrando una máquina que parece
idéntica a la maquina real subyacente.
El objetivo de los S.O de máquina virtual es el de integrar distintos sistemas operativos
dando la sensación de ser maquinas diferentes
Estas máquinas virtuales no son más que maquinas extendidas, sino una réplica de la
maquina real, de manera en que cada una de ellas se pueda ejecutar un sistema operativo
diferente, que será la maquina extendida al usuario.
Características
Se puede ver como una extensión de los sistemas multiprogramados pero a más bajo
nivel.
Los procesos no solamente trabajan sobre el sistema operativo como si fueran el
único proceso en el sistema sino que tienen una copia virtual del hardware de la
CPU
Las máquinas virtuales corren como procesos a nivel de usuario y el administrador
de MVs (hypervisor) implementa un modo usuario virtual y un modo administrador
virtual
Se implementan discos virtuales sobre los discos reales para las máquinas virtuales
32
Tipos de Máquinas virtuales
Maquina virtuales de sistema
También llamadas máquinas virtuales de hardware permiten que la maquina física
subyacente multiplicarse en varias máquinas virtuales cada una ejecutando su propio
sistema operativo. A la capa de software que permite la virtualización se llama monitor de
máquina virtual o “Hypervisor”. Un monitor de máquina virtual puede ejecutarse o bien
sobre un sistema operativo
Varias máquinas virtuales (cada una con su propio sistema operativo llamado sistema
“invitado” o “guest”), puede ser utilizadas para consolidar servidores. Esto permite que
servicios que normal mente se tengan que ejecutar en ordenadores distintos para evitar
interferencias, se puedan ejecutar en la misma máquina de manera completamente aislada y
compartiendo los recursos de un único ordenador. La consolidación de servidores a menudo
contribuye a reducir el coste total de las instalaciones necesarias para mantener los
servicios, dado el ahorro de hardware.
33
Maquina virtuales de proceso
También llamada máquina virtual de aplicación, se ejecuta como un proceso normal dentro
de un sistema operativo y soporta un solo proceso. La máquina se inicia automáticamente
cuando se lanza el proceso que se desea ejecutar y se detiene cuando esta es finalizada
Su objetivo es el de proporcionar un entorno de ejecución independiente a la plataforma
subyacente y permita que un programa se ejecute siempre de la misma forma sobre
cualquier plataforma.
34
Virtualización de escritorios
En esencia el hecho de separar el software que ejecuta en el escritorio del equipo que el
usuario manipula física mente, que en realidad el escritorio se ejecuta en modo remoto en
otro sistema conocido como servidor de escritorio, el cual necesita una conexión de red
entre el equipo del usuario y ese servidor, que permite a múltiples usuarios compartir
simultáneamente una computadora.
Consiste en ejecutar el escritorio en un sistema distinto del que utiliza el usuario. Ello nos
lleva a distinguir directamente dos capas diferenciadas, el dispositivo de acceso (el equipo
físico donde “teclea” el usuario) y el servidor de escritorio, el equipo central que ejecuta el
software de escritorio (Windows, Gnome, KDE, etc). Cada una de estas dos capas puede
tratarse de forma independiente y podemos encontrar distintas combinaciones con
soluciones variadas en cada una de ellas
La forma de comunicación entre los dispositivos de acceso y los servidores de escritorio.
Utilizan protocolos especiales en función, básicamente, del tipo de escritorio que
utilicemos. Así por ejemplo si queremos tener escritorios Windows utilizaremos el
protocolo RDP y si queremos escritorios Linux el protocolo X Windows.
El escritorio “virtualizado” estará almacenado también en el sistema de disco de ese
servidor remoto y no en el disco local del equipo del usuario. Este concepto tan simple
transforma radicalmente la aproximación que hacemos al servicio que ofrecemos al usuario
final, ya que todos los programas, aplicaciones, procesos y datos se ejecutan y almacenan
de forma centralizada. Tenemos dos consecuencias inmediatas: la gestión de los escritorios
de los usuarios se realiza en los sistemas centrales, ya no necesitamos complejas
herramientas distribuidas; el escritorio del usuario está en un punto fijo y se puede acceder
a él desde cualquier dispositivo y cualquier lugar, por lo que tampoco necesitamos
engorrosas herramientas de sincronización de datos entre sistemas dispersos.
35
Muchas soluciones comerciales también agregan la capacidad de conmutar algunas
sesiones de cliente entrantes (usando un software de rompimiento de conexión) en
dirección a sistemas de escritorio compartido tradicionales como el Terminal Services de
Microsoft o servidores de aplicaciones de Citrix, servidores blade, o incluso computadores
de escritorio físicos e individuales no usados.
VMware Inc., (VM de Virtual Machine) es una filial de EMC Corporación que
proporciona software de virtualización disponible para ordenadores compatibles. El
software de VMware puede funcionar en Windows, Linux, y en la plataforma Mac OS X
que corre en procesadores INTEL
Es la plataforma de virtualización líder del sector para construir infraestructuras en la nube.
Permite a los usuarios ejecutar aplicaciones críticas para el negocio con confianza y
responder con mayor rapidez a las necesidades empresariales.
En la siguiente imagen se muestra un entorno VMware en funcionamiento. Ilustración 7
Ilustración 7
36
En un mercado dominado por las grandes corporaciones en tecnologías de la información
existen herramientas opensource las cuales ofrecen alternativa más flexible en soluciones
de virtualización que permiten consolidar las infraestructuras sin necesidad de deteriorar los
ahorros.
QVD aparece como una al estar basada en Linux, permitiendo subir a la nube el servicio de
escritorios (Virtual Desktop Infrastructure) y de aplicaciones (Software as a Service).
Gracias a ello se trata de una potente infraestructura de escritorio virtual de código abierto,
que facilita soluciones altamente escalables y de bajo costo, para un alto número de
usuarios remotos desde sus escritorios. Proporciona un servicio seguro, fiable y fácil de
gestionar, que se puede instalar de forma rápida y sencilla.
Ulteo desarrolla un producto de virtualización de puestos de trabajos, técnicamente bueno
y con dos ventajas sobre su competencia. Por un lado funciona tanto para entornos
Windows como para Linux; en segundo lugar no tiene coste de licencia.
Estas dos características sumadas, hacen que el producto al menos despierte interés en
grandes organizaciones con despliegues importante en aplicaciones o escritorios Linux y
con necesidades de ajuste presupuestario.
37
Beneficios de la virtualización de escritorios
La virtualización puede aumentar la escalabilidad, flexibilidad y agilidad de TI, al mismo
tiempo que genera ahorros significantes en los costos. Las cargas de trabajo se implementan
con mayor rapidez, el rendimiento y la disponibilidad aumentan, y las operaciones se
automatizan. Todo esto hace que la administración de TI sea más simple y que la operación
y la propiedad sean menos costosas.
Reduzca los costos de capital y operacionales.
Proporcione alta disponibilidad de las aplicaciones.
Minimice o elimine el tiempo fuera de servicio.
Aumente la capacidad de respuesta, la agilidad, la eficiencia y la productividad
de TI.
Acelere y simplifique el aprovisionamiento de recursos y aplicaciones.
Respalde la continuidad del negocio y la recuperación ante desastres.
Permita la administración centralizada.
Desarrolle un verdadero centro de datos definido por el software.
38
Conceptos
PnP (Plug and Play): es una tecnología para soportar la instalación de dispositivos, que
pueden usarse inmediatamente después de conectarse físicamente, sin procesos adicionales.
Driver: Es un programa de bajo nivel encargado de tender un dispositivo físico, ejecutado
como resultado de invocación desde el sistema operativo
Distribución Coloquial mente llamada distro, es una distribución basada en el núcleo
Linux que incluye determinados paquetes de software para satisfacer necesidades
específicas de un grupo específico de usuarios.
Servicio de escritorio remoto (RDS) Es un componente de Microsoft Windows que
permite al usuario tomar el control del ordenador remoto o maquina a través de una red de
conexión.
Servidor Es un ordenador o software capaz de atender peticiones de un cliente y devolverle
una respuesta, que está al servicio de ordenadores o terminales que suministran información
y recursos de procesamiento.
Domain Name Server o DNS (Sistemas de Nombre de Dominio). Es un sistema de
nomenclatura jerárquica para computadoras, servicios o cualquier recurso conectado a una
red. Asocia información variada con nombres de domino asignado a cada uno de los
participantes. Su función más importante, es traducir (resolver) nombres inteligibles para
las personas en identificadores binarios asociados con los equipos conectados a la red
Proxy Es un servidor o un programa informático que hace de intermediario en las
peticiones de recursos que realiza un cliente a otro servidor.
Códec Abreviatura de codificador- decodificador, describe una especificación desarrollada
en el software, hardware o una combinación de ambos capaz de transmitir un archivo con
un flujo de datos (stream) o una señal.
39
Active Directory Es un servicio establecido en uno o varios servidores en donde se crean
objetos tales como usuarios, equipos o grupos, con el objetivo de administrar los inicios de
sesión en los equipos conectados a la red, así como la administración de políticas en red. Su
estructura jerárquica permite a los administradores establecer políticas a nivel empresa,
permisos, asignación de recursos y políticas de acceso.
Samba Es un conjunto de aplicaciones para Linux, que implementa el protocolo de
comunicación SMB utilizado por los sistemas operativos Microsoft Windows para
compartir carpetas e impresoras, también permite validar usuarios, además es capaz de
servir colas de impresión, directorios compartidos y autentificar con su propio archivo de
usuario.
Kerberos Un Protocolo de autenticación de redes ordenador, que permite a ordenadores en
una red insegura demostrar su identidad mutuamente de manera segura, es un modelo de
cliente servidor, y brinda autentificación mutua tanto como cliente como servidor verifican
la identidad uno del otro.
VMware VCenter Server Actúa como un único punto de administración central en un
entorno VSpace.
VSpace Es una plataforma completa para la virtualización de escritorios y aplicaciones, el
software usa la capacidad de computación de un computador con sistema operativo
compatible para crear múltiples escritorios virtuales ya que permite correr en un solo
computador a múltiples cuentas de usuario simultáneamente
NComputing L300 Dispositivos de acceso (Terminal). Tienen puertos USB 2.0 para
teclado mouse y scanner, pero no contienen memoria RAM ni CPU.
Terminal Es un dispositivo que depende primaria mente de un servidor central para las
tareas de procesamiento y se enfoca a transportar entrada y salida entre el usuario y el
servidor remoto.
40
MÉTODO
Análisis de situación actual
Actual mente la planta cuenta con un entorno VMware en el cual existen 8 servidores para
las terminales de escritorios virtuales, todos ellos trabajando bajo el sistema operativo
Windows con un esquema de configuración de usuarios mediante la autentificación de
Active Directory.
Windows server 2003
GDL2AMEXPW01
GDL2AMEXPW03
GDL2AMEXPW16
Windows Server 2008
GDL2AMEXPW04
GDL2AMEXPW14
GDL2AMEXPW16
GDL2AMEXPW19
GDL2AMEXPW20
GDL2AMEXPW21
41
En la siguiente tabla se muestra los costos anuales para el funcionamiento de los servidores
con Windows en la empresa. Tabla 1
Tabla 1
Servidores
Windows#Terminales
Costos
Server
Costos
RDS
Total
Licencias$Terminales Total
GDL2AMEXPW01 19 $35,360 $10,183 $45,543 $74,233 $119,776
GDL2AMEXPW03 64 $119,136 $34,340 $153,476 $250,048 $403,716
GDL2AMEXPW04 30 $55,845 $16,099 $71,944 $117,210 $189,154
GDL2AMEXPW14 16 $29,784 $8,585 $38,369 $62,512 $100,881
GDL2AMEXPW16 10 $18,615 $5,355 $23,970 $39,070 $63,040
GDL2AMEXPW19 60 $111,690 $32,198 $143,888 $234,420 $378,308
GDL2AMEXPW20 52 $96,798 $27,897 $124,695 $203,164 $327,859
GDL2AMEXPW21 60 $111,690 $32,198 $143,888 $234,420 $378,308
TOTAL 539 $578,918 $166,855 $745,773 1’215,077$1’960,85
0
42
DISEÑO
En la selección de distribuciones es necesario encontrar un O.S con Kernel Linux ya que en
las especificaciones de compatibilidad del equipo de VSpace indican que el único sistema
operativo que soporta es Ubuntu y sus distribuciones.
En la siguiente imagen se muestra los sistemas operativos soportados por el software de
virtualización. Ilustración 8
Ilustración 8
43
En la selección de distro se tomaron en cuenta los siguientes puntos
Versión 10.04/12.04 para distros Ubuntu con Kernel Linux
Arquitectura de 64 bits
Interfaz gráfica amigable para el usuario
De los cuales se seleccionaron.
Ubuntu
Kubuntu
Xubuntu
Lubuntu
En la Tabla 1se muestra el tiempo de soporte, la versión de Kernel, y el tipo de
entorno de escritorio de cada sistema operativo.
Tabla 2
Sistema
operativo (64
bits)
Ubuntu 12.04 Kuntu 12.04 Xbuntu 12.04 Lubuntu 12.04
Tiempo de
soporte
2018 2018 2018 2018
Peso del archivo
iso
1.109 1.07 0.097 0.702
Interfaz Unity KDE XFCE LXDE
Linux Kernel 3.16.0 3.16.0 3.16.0 3.16.0
44
Hardware Utilizado para la revisión
La empresa facilitó un equipo con el que ya se contaba para realizar las pruebas, las
características son las siguientes.
DELL OptiPlex 9020, el equipo cuenta con un procesador Intel Core i5-4590 de 4 núcleos
(6MB Cache, 3.70GHz), 8 GB SDRAM DDR3 A 1600MHz, Disco duro SATA de 500gb
7200RPM de 3.5 y Gráficos integrados de Intel.
En este equipo se montaron los sistemas operativos y en él se realizaron las siguientes
pruebas y configuraciones.
Reconocimiento de Hardware
En la Tabla 3 se muestra el requerimiento de funcionalidad de hardware para las líneas de
producción.
Tabla 3
S.O Ubuntu 12.04 Kubuntu 12.04 Xubuntu 12.04 Lubuntu 12.04
Ethernet
Wifi
Scanner
Impresoras en red
45
Eliminación de software innecesario incluido en la distro
Juegos
Software Multimedia
Pruebas de Compatibilidad
Compatibilidad con VSpace
Compatibilidad con Oracle Java JRE
Compatibilidad con Oracle Java JDK
Adobe Flash Player
Multiples Navegadores (Chrome, Firefox, Opera, WaterFox).
Compatibilidad con software ofimático (Procesador de texto, hojas de cálculo,
presentación de diapositivas)
46
En la Tabla 4 se muestra un checklist de la existencia y la compatibilidad del software
requerido por los usuarios
Tabla 4
OS VSpacePersonalización
de interfaz
Oracle
Java
JRE
Software
Ofimático
Múltiples
Navegadores
Flash
Player
Ubuntu x
Kubuntu
Lubuntu
Xubuntu
VSpace
El sistema operativo Ubuntu, Lubuntu y Kubuntu funcionaron perfectamente con el
software de virtualización VSpace lo cual era indispensable para el desarrollo del proyecto.
Xubuntu por otro lado aun siendo compatible con el software VSpace mostró demasiados
problemas con los inicios de sesión en las terminales, las configuraciones de
personalización de escritorio con logos de la empresa no aplicaban a los usuarios si se abría
desde una terminal, por lo que era necesario configurar manual mente desde la terminal y
no desde el servidor.
47
Interfaz de Usuario
Cada una de las distribuciones es únicas y se ven diferentes entre ellos.
Ubuntu tiene un entorno de escritorio más complejo y no muy intuitivo para un usuario
final con poca experiencia.
Como se ve en la siguiente imagen Ubuntu cuenta con el entorno de escritorio Unidad 7.3.1
y el panel lateral. Ilustración 9
Ilustración 9
48
Kubuntu es muy parecido a la interfaz de Windows 7, contiene opciones de personalización
de usuarios, prácticamente se puede modificar total mente.
Como se ve en la siguiente imagen Kubuntu cuenta con el entorno de escritorio KDE
4.14.1. Ilustración 10
Ilustración 10
49
Tanto Xubuntu y Lubuntu son visualmente menos amigable que Kubuntu, pero al igual que
Kubuntu se puede ajustar la apariencia total mente.
Como se aprecia en la siguiente imagen Xubuntu tiene un entorno de escritorio XFCE 4.11.
Ilustración 11.
Ilustración 11
50
En la siguiente imagen se muéstrale entorno de escritorio de Lubuntu que tiene un rntorno
grafico LXDE. Ilustración 12
Tanto Ubuntu, Kubuntu, Lubuntu y Xubuntu no traen por defecto un códec para
aplicaciones como java, flash, archivos multimedia (audio video, etc.) por problemas
51
legales, por lo que fue necesaria la instalación de paqueterías extras desde sus repositorios
oficiales,
Desde la consola se intala de la siguiente manera
Ubuntu
sudo apt-get install ubuntu-restricted-
extras
Kubuntu
sudo apt-get install kubuntu-restricted-extras
Xubuntu
sudo apt-get install xubuntu-restricted-
extras
Lubuntu
sudo apt-get install lubuntu-restricted-
extras
52
Requerimientos para uso de recursos.
Acceso a almacenamiento conectado en red
Autentificaciones mediante Active Directory en una red Windows
Se realizó instalación y configuración de Samba y Kerberos para con el fin de que el
sistema operativo tuviera la capacidad de autentificar el usuario desde Active Directory con
permisos de usuarios y administradores y acceso a las unidades de almacenamiento
compartidos en red.
En la Tabla 4 se muestra la funcionalidad del sistema operativo bajo el esquema de
configuración de los servicios ofrecidos para las diferentes activadas y recursos requeridos
por los usuarios.
Tabla 5
Características
OS
Autentificación de Usuarios
mediante Active
Directory
Acceso a almacenamiento
en red
Acceso a impresoras
en red
Permisos de usuario en las unidades de
red
Ubuntu
Kubuntu
Lubuntu
Xubuntu x
53
Seguridad
Se realizó la instalación de un software clasificado como “Reinicie y restaure (Reboot and
Restore)” llamado Ofris, el cual es un controlador de núcleo que protege la integridad del
disco duro redirigiendo la información que se va a escribir en el disco duro o partición,
dejando la información original intacta. Las escrituras redirigidas desaparecen cuando el
sistemas es reiniciado, restaurado el equipo a los cambios originales.
Para lograr un nivel más seguridad, en el que el usuario final no pueda cambiar
configuraciones ni instalar software de terceros.
En la tabla 5 se muestra un checklist de la configuración para seguridad para usuario no
autorizados.
Tabla 6
O.S Ubuntu Kubuntu Lubuntu Xubuntu
Instalación
Ofris
Deshabilitar
puertos USB
Ocultar paneles
de
configuración
54
Uso de recursos
En la gráfica 1 se muestra el consumo de memoria RAM utilizada por cada uno de los
sistemas operativos.
Grafica 1
Ubuntu Kubuntu Xubuntu Lubuntu0
100
200
300
400
500
600
700
Consumo de Memoria RAM
Serie 1
La diferencia entre el uso de memoria RAM fue lo más notorio, ya que en uso de CPU en
las cuatro distros fue el mismo consumo, y entre uso de disco duro y el tiempo en el que
inician estaban casi a la par.
55
Rendimiento
En la tabla 6 se muestra una comparativa en el uso de recurso del sistema operativo sin
ningún programa en ejecución a excepción del monitor de sistema.
Tabla 7
Rendimiento Ubuntu 12.04 Kubuntu 12.04 Xubuntu 12.04 Lubuntu 12.04
Consumo de
RAM (MB)
600 547 350 246
Consumo del
CPU
0-5% 0-5% 0-5% 0-5%
Tiempo de
arranque
(segundos)
33 34 31 30
Uso de energía
(Watts)
12.06 12.31 11.67 10.21
Espacio
requerido en el
disco duro(GB)
4.6 4.6 4.3 4
56
Lubuntu resulto la distro que consume menos recursos seguido de Xubuntu, Lubuntu
consume alrededor de 250MB de RAM en estado estacionario sin aplicaciones, con
excepción del monitor de sistema en funcionamiento. Bajo el mismo equipo e idénticas
condiciones Lubuntu consume menos memoria RAM, 30% más bajo que Xubuntu, 59%
menos que Ubuntu y 55% menos que Kubuntu.
Se encontró a Lubuntu 12.04 para ser el mejor en el rendimiento entre las distribuciones
dado a su bajo margen de fallos es el más estable y eficiente.
Se determinó que Ubuntu para ser el segundo mejor que ofrece una estabilidad muy decente
y una interfaz gráfica amigable.
Tanto Xubuntu y Lubuntu son sistemas operativos relativamente ligeros, Se estableció
Xubuntu como la segunda opción, pero tiene la inconveniencia de ser, un poco de
inestabilidad en la distro por lo que optó por descartarlo.
Debido a todas las pruebas que se realizaron enlistadas a continuación, consumo de
recursos, estabilidad del sistema, software precargado y la compatibilidad, se optó por el
sistema Lubuntu como la mejor distro para generar la imagen corporativa.
ANÁLISIS PRELIMINAR:
57
Estudio de factibilidad
En la tabla 7 se muestra el costo que se requiere para realizar pruebas con un sistema
operativo y la implantación de un servidor Lubuntu con 60 terminales.
Tabla 8
No Equipo/DescripciónCantid
adPrecio Existe
1Licencia/VSpace Enterprise
1 MXN$ 48,839.00 No
2Terminal/NcomputingL300
60MXN$ 234,431
(MXN$ 3,907c/u)Si
3
Equipo de Pruebas/Especificaciones mínimas
Intel Core 2 duo 3.00GHz
Ram 4gb Disco Duro Sata
320gb 7200rpm Tarjeta de red
Ethernet
1 MXN $ 5,305.81 Si
4 Monitor 21” 1 MXN$2,044.27 Si5 Teclado 1 MXN$209.91 Si6 Mouse 1 MXN$170.63 Si7 Memoria USB 8gb 1 MXN$215.20 Si
8
Servidor/ Para VSpace con 60 terminales Especificaciones mínimas
RAM 32GB Procesadores
Intel® Xeon® E5 2600 v3
Disco duro Sata, 320gb
1 MXN$28,920.92 Si
Costo total: MXN$320,136.74 No
58
IMPLEMENTACIÓN
Instalación, configuración y adaptación a la red corporativa.
Para realizar el uso de servicios en red es necesaria la instalación de Samba y sus paquetes.
samba – Servidor de archivos e impresoras
samba-common – Archivos comunes de samba utilizados para clientes y servidores
smbclient – Cliente simple (usuarios)
swat – herramienta de administración de samba vía web
smbfs - montar y desmontar unidades de red samba
Para ello se ejecuta en la consola
sudo apt-get install samba samba-common smbclient
smbfs
59
Para que Samba y Kerberoos puedan realizar conexiones seguras y permita un modelo de
cliente servidor que brinde autentificaciones se configuró de la siguiente manera a fin de
permitir que el sistema accediera a los datos de Active Directory y poder obtener permisos
de acceso a sus rutas de almacenamiento.
El siguiente código muestran las configuraciones de direccionamiento y la autentificación
de usuarios mediante Active Directory.
Los asteriscos representan las direcciones y los parámetros de configuración reales, estas
fueron sustituidas para evitar el mal uso de la información.
# Parámetros generales[global]# Seguridad por usuariossecurity = user# Grupo de trabajo '******'workgroup = ******* # Las contraseñas se deberán enviar encriptadas encrypt passwords = yes# Samba será servidor winswins support = no# Nivel y longitud máxima del archivo de registrolog level = 1 max log size = 1000# Por defecto, lectura y escrituraread only = no# Se comparten también las impresorasload printers = yes
# Sección rutas, carpetas home de usuarios[homes] # Comentariocomment = # No explorablesbrowsable = no # Máscara de creación de archivos (*****)
60
create mask = ********# Máscara de creación de carpetasdirectory mask = *******
# Sección printers, impresoras[printers] path = /*****/**** printable = yesmin print space = 2000
# Carpeta común Administradores[Administradores] # Ruta de la carpeta compartidapath = /****/*******/*** # Explorablebrowsable = yes # Lectura y escrituraread only = no # Máscara de creación de archivos (*****)create mask = *******# Máscara de creación de carpetasdirectory mask = *****
# Carpeta común Usuarios[Usuarios] browsable = yesread only = nopath = /** /** /**** /
# Carpeta común Usuarios (solo lectura)[programas] browsable = yesread only = yes# Se admiten invitadosguest ok = no path = /** /*** /
61
Para hacer que samba pueda autentificar usuarios y otorgar los diferentes tipos de permisos
sobre archivos y rutas es necesaria la configuración de samba y la instalación de los
siguientes paquetes
Desde la consola se ejecutan los siguientes comandos
apt-get install build-essential
libacl1-dev libattr1-dev \
libblkid-dev libgnutls-dev
libreadline-dev python-dev libpam0g-dev \
python-dnspython gdb pkg-config
libpopt-dev libldap2-dev \
62
dnsutils libbsd-dev attr krb5-user
docbook-xsl libcups2-dev acl
Se crea un archivo de configuración con samba-tool en el directorio de los archivos binarios
de samba después de la compilación e instalación con los siguientes parámetros desde la
consola.
/usr/local/samba/bin/samba-tool domain provision –realm=******* –domain=****** –adminpass ‘*****’ –server-role=** –dns-backend=BIND9_DLZ
Configuración de servicio DNS
Desde la consola
rndc-confgen -a -r /dev/urandom
63
El contenido del archivo de configuracion etc/**.conf que contiene las direcciones ip y los
puertos bajo los que funciona el servicio DNS, se configuro de la siguiente manera
options {listen-on port * { ****; };forwarders {****.****.****.****; };allow-query { any; };tkey-gssapi-keytab “/usr/local/samba/private/**.****”;};include “/usr/local/samba/private/****.conf”;
Y se aplicaron permisos finales de configuración con el siguiente código desde la terminal
chown named:named /usr/local/samba/private/dnschown named:named /usr/local/samba/private/dns.keytabchmod 775 /usr/local/samba/private/dns
64
Se creó un script con el fin de limpiar memoria cache, cookies, papelera, el cual permite
borrar archivos viejos de configuración, para poder liberar memoria de almacenamiento de
manera que al ejecutarlo puedan ser eliminarlos.
A continuación se muestra el código para la creación el script archivo script
#!/bin/bash
OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-500//g')LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
if [ $USER != root ]; then echo -e $RED"Error: Tienes que ser usuario root" echo -e $YELLOW"Saliendo..."$ENDCOLOR exit 0fi
echo -e $YELLOW"Limpiando apt cache..."$ENDCOLORaptitude clean
echo -e $YELLOW"Removiendo archivos viejos de configuracion..."$ENDCOLORsudo aptitude purge $OLDCONF
echo -e $YELLOW"Borrando viejos kernels..."$ENDCOLORsudo aptitude purge $OLDKERNELS
echo -e $YELLOW"Limpiando papelera..."$ENDCOLORrm -rf /home/*/.local/share/Trash/*/** &> /dev/nullrm -rf /root/.local/share/Trash/*/** &> /dev/null
echo -e $YELLOW"El escrip termino!"$ENDCOLOR
65
IMPLANTACIÓN
Razones para configurar un Kernel:
Añadir nuevo hardware
Optimizar según entorno: servidor, desktop, SMP.
Añadir nueva funcionalidad o un driver no oficial.
Fijar errores de la versión actual.
Compilación del Kernel
Configurado el Kernel, debemos compilarlo:
Situados en /usr/src/linux, desde la terminal ejecutamos:
% make
Instalación del Kernel
Instalamos los módulos:
% make modules_install
Instalamos la imagen del Kernel:
% make install
66
Lubuntu automatiza los pasos de la compilación con la siguiente instrucción desde la
consola:
make-kpkg
Parcheado del Kernel
Permite modificar funcionalidad, corregir errores o actualizar el Kernel.
Un parche es un archivo que contiene los elementos a cambiar respecto de un archivo
original existente en la distribución.
.
Lo generamos con diff desde la consola:
diff -Naur dir_archivo_original archivo_nuevo > parche.patch
AL terminar de parchear se compila se instalara y se clonará la imagen corporativa, la cual
se instalará en el VCenter Server y se le asignará una dirección ip estática.
En cada terminal NComputing L300 se debe nombrar, direccionar y agregar el nuevo
servidor, esto se realizará mediante la interfaz de VCenter. Esto realizado en cambio de
turno para no afectar tiempos de producción.
67
ANÁLISIS DE RESULTADOS
Como se ve en la tabla 8, se hizo una comparación entre el nuevo sistema y el existente
atribuyéndole las mismas capacidades para realizar una comparación igualitaria de manera
que se aprecie el ahorro que se generó al eliminar los costos derivados de licencias por
software
Tabla 9
Servidores #TerminalesCostos
Server
Costos
RDS
Total
Licencias$Terminales Total
SERVIDOR LUBUNTU
GDL2AMEXPL0130 $0.0 $0.0 $0.0 $117,210
$117,210
SERVIDOR WINDOWS
GDL2AMEXPL0130 $55,845 $71,944 $71,944 $117,210
$189,154
Diferencia total
$71,944
68
Los diferentes tipos de problemas que suelen surgir en la implantación de un sistema
operativo son:
Falla de sistema
Falla de Red
Error del usuario
En la gráfica 2 se muestra el porcentaje de errores a causa delos sistemas de virtualización
antes de la implantación del nuevo sistema operativo.
Grafica 2
Fallo del sistema
40%
Fallo de la red15%
Error de Usuario
25%
Otros20%
Problemas
69
En la gráfica 3 se muestra como se disminuyó considerablemente los fallos generados por
el sistema antiguo, con la implantación de la nueva imagen corporativa
Grafica 3
Fallo del sistema
22%
Fallo de la red11%
Error de Usuario22%
Otros44%
Problemas
Como se muestra en las gráficas el porcentaje de error del sistema y de usuarios bajaron
considerablemente, lo que indica que el sistema cumplió con el objetivo de disminuir los
costos por licenciamiento de software, y proporcionó ventajas al poder ser adaptado de tal
manera que el sistema con una interfaz amigable fuera más intuitivo para el usuario final;
además se bajaron considerablemente el porcentaje de margen de errores del sistema y
por los usuarios finales.
70
Conclusiones y recomendaciones
Me gustó mucho el sistema operativo final, me pareció muy adecuada la versión que se
utilizó y el poco consumo de recursos. Se cumplió el objetivo de lograr el máximo
rendimiento y se pudo notar una considerable disminución de fallos.
Recomendaría la utilización de dispositivos que cuenten con CPU y memoria RAM
incluidos, ya que disminuiría en un 100% el consumo de hardware para la virtualización de
escritorios remotos permitiendo que los equipos no necesiten recursos de servidores para
trabajar. También note equipos de cómputo con memorias RAM que no pertenecían a las
velocidades correspondientes a las que trabajan la tarjetas madres, con esto disminuiría los
cuellos de botella y se obtendría mayor rendimiento en los equipos
71