Implementacion de un sistema operativo

Contenido INTRODUCCIÓN..................................................................................................

Views 160 Downloads 0 File size 809KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

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

INTRODUCCIÓN 1

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 buscar nuevas formas de administrar los recursos informáticos para impactar en los costos de producción y eliminar los costes derivados de licencias. 3

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. El uso de sistemas de gestión es clave en la generación y sistematización de la productividad. 9

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.

Aplicaciones de Interfaz con máquina Sistema Interfaz con Hardware Ilustración 1

Partes de un sistema operativo 

Manejo de procesos 10



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.

12

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.



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.

13

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.



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.

14

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.



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. 15

 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.



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

16

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, 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 17

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.

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 18

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

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. 19

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.

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).

20

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).

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. 22

Ilustración 2

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

24

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. 25

 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.  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.

26

Por proceso debe entenderse: un programa en ejecución junto con el entorno asociado (registros, variables, etc.).

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.

27

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

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: 28

Ilustración 4

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

29

Ilustración 5

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 30

Ilustración 6

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

31

32

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.

33

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

34

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.

35

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.

36

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.

Muchas soluciones comerciales también agregan la capacidad de conmutar algunas sesiones de cliente entrantes (usando un software de rompimiento de conexión) en 37

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

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

38

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.

39

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.

40

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.

41

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.

42

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

43

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

Costos

Total

Server

RDS

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

44

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

45

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

Ubuntu 12.04

Kuntu 12.04

Xbuntu 12.04

Lubuntu 12.04

bits) Tiempo de

2018

2018

2018

2018

soporte Peso del archivo

1.109

1.07

0.097

0.702

iso Interfaz Linux Kernel

Unity 3.16.0

KDE 3.16.0

XFCE 3.16.0

LXDE 3.16.0

operativo (64

46

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









47

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)

48

En la Tabla 4 se muestra un checklist de la existencia y la compatibilidad del software requerido por los usuarios

Tabla 4

OS

VSpace

Personalizació n de interfaz

Oracle

Software

Múltiples

Flash

Ofimático

Navegadores

Player









Java JRE

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. 49

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.

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

50

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

51

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

52

En la siguiente imagen se muéstrale entorno de escritorio de Lubuntu que tiene un rntorno grafico LXDE. Ilustración 12

53

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 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

54

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 Ubuntu Kubuntu Lubuntu Xubuntu

Autentificació n de Usuarios mediante Active Directory

Acceso a almacenamient o en red

Acceso a impresoras en red

Permisos de usuario en las unidades de red































x

55

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 Instalación

Ubuntu 

Kubuntu 

Lubuntu 

Xubuntu 

Ofris Deshabilitar









puertos USB Ocultar paneles









de 56

configuración

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

Consumo de Memoria RAM 700 600 500 400 300 200 100 0

Ubuntu

Kubuntu

Xubuntu

Lubuntu

Serie 1

57

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.

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 Consumo de

Ubuntu 12.04 600

Kubuntu 12.04 547

Xubuntu 12.04 350

Lubuntu 12.04 246

RAM (MB) Consumo del

0-5%

0-5%

0-5%

0-5%

CPU Tiempo de

33

34

31

30

(segundos) Uso de energía

12.06

12.31

11.67

10.21

(Watts) Espacio

4.6

4.6

4.3

4

arranque

requerido en el disco duro(GB)

58

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.

59

ANÁLISIS PRELIMINAR: 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ón

1

Licencia/VSpace Enterprise

2

Terminal/NcomputingL 300

Cantid ad

Precio

Existe

1

MXN$ 48,839.00

No

60

MXN$ 234,431 (MXN$ 3,907c/u)

Si

1

MXN $ 5,305.81

Si

1

MXN$2,044.27

Si

Equipo de Pruebas/Especificacion es mínimas

3

4



Intel Core 2 duo 3.00GHz



Ram 4gb



Disco Duro Sata 320gb 7200rpm



Tarjeta de red Ethernet Monitor 21”

60

No

Equipo/Descripción

5 6 7

Teclado

Cantid ad

Precio

Existe

1

MXN$209.91

Si

Mouse

1

MXN$170.63

Si

Memoria USB 8gb

1

MXN$215.20

Si

1

MXN$28,920.92

Si

MXN$320,136.74

No

Servidor/ Para VSpace con 60 terminales Especificaciones mínimas 

RAM 32GB



Procesadores Intel® Xeon® E5 2600 v3



Disco duro Sata, 320gb

8

Costo total:

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

61

 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

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.

62

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 usuarios security = user # Grupo de trabajo '******' workgroup = ******* # Las contraseñas se deberán enviar encriptadas encrypt passwords = yes # Samba será servidor wins wins support = no # Nivel y longitud máxima del archivo de registro log level = 1 max log size = 1000 # Por defecto, lectura y escritura read only = no # Se comparten también las impresoras load printers = yes # Sección rutas, carpetas home de usuarios [homes] # Comentario comment = # No explorables browsable = no # Máscara de creación de archivos (*****) create mask = ******** # Máscara de creación de carpetas directory mask = ******* # Sección printers, impresoras [printers] path = /*****/**** printable = yes 63

min print space = 2000

# Carpeta común Administradores [Administradores] # Ruta de la carpeta compartida path = /****/*******/*** # Explorable browsable = yes # Lectura y escritura read only = no # Máscara de creación de archivos (*****) create mask = ******* # Máscara de creación de carpetas directory mask = ***** # Carpeta común Usuarios [Usuarios] browsable = yes read only = no path = /** /** /**** / # Carpeta común Usuarios (solo lectura) [programas] browsable = yes read only = yes # Se admiten invitados guest ok = no path = /** /*** /

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 64

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 \

dnsutils libbsd-dev attr krb5-user

docbook-xsl libcups2-dev acl

65

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

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”;

66

Y se aplicaron permisos finales de configuración con el siguiente código desde la terminal chown named:named /usr/local/samba/private/dns chown named:named /usr/local/samba/private/dns.keytab chmod 775 /usr/local/samba/private/dns

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)

67

if [ $USER != root ]; then echo -e $RED"Error: Tienes que ser usuario root" echo -e $YELLOW"Saliendo..."$ENDCOLOR exit 0 fi echo -e $YELLOW"Limpiando apt cache..."$ENDCOLOR aptitude clean echo -e $YELLOW"Removiendo archivos viejos de configuracion..."$ENDCOLOR sudo aptitude purge $OLDCONF echo -e $YELLOW"Borrando viejos kernels..."$ENDCOLOR sudo aptitude purge $OLDKERNELS echo -e $YELLOW"Limpiando papelera..."$ENDCOLOR rm -rf /home/*/.local/share/Trash/*/** &> /dev/null rm -rf /root/.local/share/Trash/*/** &> /dev/null

echo -e $YELLOW"El escrip termino!"$ENDCOLOR

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 68

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

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.

69

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.

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

#Terminales

SERVIDOR LUBUNTU GDL2AMEXPL01

30

Costos

Costos

Total

Server

RDS

Licencias

$0.0

$0.0

$0.0

$Terminales

Total

$117,210 $117,210

70

SERVIDOR WINDOWS GDL2AMEXPL01

30

$55,845

$71,944

$71,944

$117,210

$189,15 4

Diferencia total

$71,944

71

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

Problemas Otros; 20% Fallo del sistema; 40%

Error de Usuario; 25%

Fallo de la red; 15%

72

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

Problemas Fallo del sistema; 22%

Otros; 44%

Fallo de la red; 11%

Error de Usuario; 22%

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.

73

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

74