Symbian

12
UNIVERSIDAD MARIANO GALVEZ DE GUATEMALA CENTRO UNIVERSITARIO DE SAN MARCOS. INGENIERIA EN SISTEMAS Y CIENCIAS DE LA COMPUTACION DOCENTE: ING . OMAR ALEJANDRO MORALES FRANCO ASIGNATURA: SISTEMAS OPERATIVOS SYMBIAN OS ALUMNOS: GERARDO EMMANUEL DÁVILA MORALES 0903-11-14005 MYNOR RENE BERDUO LOPEZ 0903-12-17062 VICTOR DE LEON PEREZ 0903-11-7978 SAN MARCOS, SEPTIEMBRE DE 2015

description

Sistema Operativo Symbian, symbian OS, Nokia, Sistemas operativos moviles,

Transcript of Symbian

Page 1: Symbian

UNIVERSIDAD MARIANO GALVEZ DE GUATEMALACENTRO UNIVERSITARIO DE SAN MARCOS.INGENIERIA EN SISTEMAS Y CIENCIAS DE LA COMPUTACION

DOCENTE:

ING . OMAR ALEJANDRO MORALES FRANCO

ASIGNATURA:

SISTEMAS OPERATIVOS

SYMBIAN OS

ALUMNOS:

GERARDO EMMANUEL DÁVILA MORALES 0903-11-14005

MYNOR RENE BERDUO LOPEZ0903-12-17062

VICTOR DE LEON PEREZ0903-11-7978

SAN MARCOS, SEPTIEMBRE DE 2015

Page 2: Symbian

INTRODUCCION

El papel que desempeña los teléfonos móviles en el ámbito de los sistemasdistribuidos ha evolucionado en el los últimos años hasta llegar a convertirse eneternos en los que se pueden desarrollar complejas aplicaciones las limitacionesde memoria, CPU o batería resulta necesario desarrollar nuevos sistemasoperativos y entornos de desarrollo específicos que se ajusten a las exigencias dedichos terminales. En esta investigación se revisa y se estudia el sistemaoperativo Symbian OS, tanto desde el punto de vista del desarrollador como de lasprestaciones que ofrecen al usuario final.

Page 3: Symbian

OBJETIVOS

➔ Comprender el Sistema Operativo Symbian

➔ Conocer su estructura y sus capas

➔ Saber como esta compuesto el sistema operativo

Page 4: Symbian

Raíces de Symbian OS: Psion y EPOC

La herencia de Symbian OS empieza con algunos de los primeros dispositivos debolsillo; éstos evolucionaron, a finales de la década de 1980, como un medio paracomprimir la utilidad de un dispositivo de escritorio en un pequeño paquete portátil.Los primeros intentos de las computadoras de bolsillo no fueron recibidos conmucho entusiasmo: la Apple Newton era un dispositivo bien diseñado, pero tuvosólo unos cuantos usuarios. A pesar de este lento inicio, las computadoras debolsillo desarrolladas a mediados de 1990 estaban mejor adaptadas al usuario y ala forma en que las personas utilizaban los dispositivos móviles. Este tipo decomputadoras se diseñaron en un principio como PDAs (asistentes digitalespersonales que en esencia eran planificadores electrónicos), pero evolucionaronpara abarcar muchos tipos de funcionalidad. A medida que se desarrollaron,empezaron a funcionar como las computadoras de escritorio y también tenían lasmismas necesidades, como la multitarea; incorporaron capacidades dealmacenamiento en varias formas; tenían que ser flexibles en las áreas de laentrada y salida de datos. Los dispositivos de bolsillo también crecieron paraabarcar la comunicación. A medida que iban creciendo estos dispositivospersonales, también se desarrollaba la comunicación personal. Los teléfonosmóviles tuvieron un notable incremento en su uso a finales de la década de 1990.Por ende, era natural fusionar los dispositivos de bolsillo con los teléfonos móvilespara formar los teléfonos inteligentes. Se tuvieron que desarrollar los sistemasoperativos que operaban a los dispositivos inteligentes a medida que se realizóesta fusión.

En la década de 1990, Psion Computers fabricaba dispositivos que eran PDAs. En1991, Psion produjo la Serie 3: una pequeña computadora con una pantallamonocromática que tenía una resolución equivalente a la mitad de VGA y cabía enun bolsillo. Después de la Serie 3 salió la Serie 3c en 1996, con capacidadinfrarroja adicional, y la Serie 3mx en 1998, con un procesador más veloz y másmemoria. Cada uno de estos dispositivos tuvo mucho éxito, en gran parte debido ala buena administración de energía y la interoperabilidad con otras computadoras,incluyendo las PCs y otros dispositivos de bolsillo. La programación se basaba enel lenguaje C, tenía un diseño orientado a objetos y empleaba motores deaplicaciones, una parte distintiva del desarrollo de Symbian OS. Estametodología de los motores era una poderosa característica.

Symbian OS versión 6

Como la última versión de EPOC fue ER5, Symbian OS hizo su debut con laversión 6 en el 2001. Este sistema operativo aprovechaba las propiedadesflexibles de EPOC y estaba orientado a varias plataformas distintas generalizadas.Se diseñó con la suficiente flexibilidad para desarrollar una amplia variedad de

Page 5: Symbian

dispositivos móviles y teléfonos avanzados, y al mismo tiempo daba a losfabricantes la oportunidad de diferenciar sus productos. También se decidió queSymbian OS adoptara en forma activa las tecnologías actuales de punta, a medidaque se hicieran disponibles. Esta decisión reforzaba las opciones de diseño deorientación a objetos y una arquitectura cliente-servidor, ya que estas tecnologíasse estaban volviendo populares en los mundos de las computadoras de escritorioe Internet. Los diseñadores de Symbian OS versión 6 lo consideraban un sistema“abierto”. Esto era distinto de las propiedades de “código fuente abierto” que seatribuían a menudo a UNIX y Linux. Con el término “abierto”, los diseñadores deSymbian OS querían decir que la estructura del sistema operativo se publicaba yestaba disponible para todos. Además, se publicaron todas las interfaces delsistema para fomentar el diseño de software de terceras partes.

Symbian OS versión 7

La versión 7 de Symbian OS era muy parecida a sus predecesores EPOC y laversión 6 en cuanto a diseño y función. El enfoque en el diseño era abarcar latelefonía móvil. Sin embargo, a medida que cada vez más fabricantes diseñabanteléfonos móviles, era obvio que hasta la flexibilidad de EPOC, un sistemaoperativo para dispositivos de bolsillo, no podría lidiar con la plétora de nuevosteléfonos que necesitaban usar Symbian OS. La versión 7 de Symbian OSmantenía la funcionalidad de escritorio de EPOC, pero la mayoría de los aspectosinternos del sistema se rediseñaron para abarcar muchos tipos de funcionalidadde los teléfonos inteligentes. El kernel y los servicios del sistema operativo sesepararon de la interfaz de usuario. En la nueva versión se podía ejecutar elmismo sistema operativo en muchas plataformas distintas de teléfonosinteligentes, cada una de las cuales utilizaba un sistema distinto de interfaz deusuario. Ahora Symbian OS se podía extender para lidiar, por ejemplo, con losnuevos formatos no pronosticados de mensajería, o se podía utilizar en distintosteléfonos inteligentes que utilizaran distintas tecnologías telefónicas. La versión 7de Symbian OS se liberó en el 2003.

Orientación a objetos

La orientación a objetos es un término que implica abstracción. Un diseñoorientado a objetos crea una entidad abstracta, conocida como objeto, de losdatos y la funcionalidad de un componente de software. Un objeto provee lafuncionalidad y los datos especificados, pero oculta los detalles deimplementación. Un objeto implementado en forma apropiada se puede eliminar oreemplazar por un objeto distinto, siempre y cuando la forma en que las demáspiezas del sistema utilicen ese objeto (es decir, mientras que su interfaz) sea igual.Cuando se aplica al diseño de un sistema operativo, la orientación a objetossignifica que todo el uso de las llamadas al sistema y las características del ladodel kernel se hace a través de interfaces, sin ningún tipo de acceso a los datosactuales o sin depender de un tipo de implementación. Un kernel orientado a

Page 6: Symbian

objetos proporciona sus servicios a través de objetos. Utilizar objetos del lado delkernel por lo general significa que una aplicación debe obtener un manejador; esdecir, una referencia a un objeto, y después debe acceder a la interfaz de eseobjeto por medio de su manejador. El diseño de Symbian OS está orientado aobjetos. Las implementaciones de las herramientas del sistema están ocultas; losdatos del sistema se utilizan a través de interfaces definidas en los objetos delsistema. Mientras que un sistema operativo como Linux podría crear un descriptorde archivos y utilizarlo como un parámetro en una llamada a open, Symbian OScrearía un objetode archivo y llamaría al método open conectado al objeto. Por ejemplo, es sabidoque, en Linux, los descriptores de archivos son enteros que indexan una tabla enla memoria del sistema operativo; en Symbian OS se desconoce laimplementación de las tablas del sistema de archivos, y toda la manipulación delsistema de archivos se realiza mediante objetos de una clase de archivoespecífica.

Debe considerarse que Symbian OS difiere de otros sistemas operativos queutilizan conceptos orientados a objetos en cuanto a su diseño. Por ejemplo,muchos diseños de sistemas operativos utilizan tipos de datos abstractos;podríamos argumentar que la idea en sí de una llamada al sistema implementa laabstracción al ocultar los detalles de la implementación a los programas deusuario. En Symbian OS, la orientación a objetos está diseñada en todo el marcode trabajo del sistema operativo. La funcionalidad y las llamadas al sistemasiempre se asocian con objetos del sistema. La asignación y protección de losrecursos se concentra en la asignación de objetos, y no en la implementación delas llamadas al sistema.

Diseño del microkernel

La estructura del kernel de Symbian OS tiene un diseño de microkernel basado enla naturaleza orientada a objetos de este sistema operativo. Las funcionesmínimas del sistema y los datos están en el kernel; muchas funciones del sistemase han metido en los servidores del espacio de usuario. Los servidores hacen sutrabajo al obtener manejadores para los objetos del sistema y realizar llamadas alsistema por medio de estos objetos en el kernel cuando es necesario. Lasaplicaciones en el espacio de usuario interactúan con estos servidores, en vez derealizar llamadas al sistema.Por lo general, los sistemas operativos basados en microkernel ocupan muchomenos memoria al momento de iniciar el sistema y su estructura es más dinámica.Los servidores se pueden iniciar según sea necesario; no todos se requieren almomento del inicio. En general, los microkernels implementan una arquitecturaconectable con soporte para los módulos del sistema que se pueden cargar yconectar al kernel cuando se requiera. De esta forma, los microkernels son muyflexibles: el código para dar soporte a una nueva funcionalidad (por ejemplo,nuevos drivers de hardware) se puede cargar y conectar en cualquier momento.

Page 7: Symbian

Symbian OS se diseñó como un sistema operativo basado en microkernel. Paraacceder a los recursos del sistema, se abren conexiones a los servidores derecursos que a su vez coordinan el acceso a los mismos recursos. Symbian OSluce una arquitectura conectable para las nuevas implementaciones. Estas nuevasimplementaciones para las funciones del sistema se pueden diseñar como objetosdel sistema y se pueden insertar en el kernel de manera dinámica. Por ejemplo, sepueden implementar nuevos sistemas de archivos y agregarlos al kernel cuando elsistema operativo esté en ejecución.Este diseño de microkernel conlleva ciertas cuestiones. Siempre que una llamadaal sistema es suficiente para un sistema operativo convencional, un microkernelutiliza el paso de mensajes. El rendimiento puede verse afectado debido a lasobrecarga adicional de la comunicación entre los objetos. La eficiencia de lasfunciones que permanecen en el espacio de kernel en los sistemas operativosconvencionales disminuye cuando esas funciones se pasan al espacio de usuario.Por ejemplo, la sobrecarga de varias llamadas a funciones para programarprocesos puede reducir el rendimiento si se le compara con la programación deprocesos del kernel de Windows, que tiene acceso directo a las estructuras dedatos del kernel. Como los mensajes pasan entre los objetos en espacio deusuario y los objetos en espacio de kernel, es probable que ocurran cambios enlos niveles de privilegios, con lo cual se reduce aún más el rendimiento. Por último,mientras que las llamadas al sistema funcionan en un solo espacio de direccionespara los diseños convencionales, este paso de mensajes y cambio de privilegiosimplica el uso de dos o más espacios de direcciones para implementar unapetición de servicio al microkernel. Estas cuestiones de rendimiento obligaron a losdiseñadores de Symbian OS (y también de otros sistemas basados enmicrokernel) a poner mucha atención en los detalles de diseño e implementación.El énfasis del diseño es para los servidores mínimos, que están muy enfocados.

El nanokernel de Symbian OS

Para lidiar con las cuestiones del microkernel, los diseñadores de Symbian OSimplementaron una estructura de nanokernel en el núcleo del diseño del sistemaoperativo. Así como en las microkernels se meten ciertas funciones del sistema enlos servidores en espacio de usuario, el diseño de Symbian OS separa lasfunciones que requieren una implementación complicada en el kernel de SymbianOS y mantiene sólo las funciones más básicas en el nanokernel, el núcleo delsistema operativo.El nanokernel proporciona algunas de las funciones más básicas en Symbian OS.En el nanokernel, los hilos simples que operan en modo privilegiado implementanservicios muy primitivos. Entre las implementaciones en este nivel se incluyen lasoperaciones de programación y sincronización, el manejo de interrupciones y losobjetos de sincronización, como los mutexes y los semáforos. La mayor parte delas funciones que se implementan en este nivel se pueden reemplazar. Lasfunciones en este nivel son muy primitivas (para que puedan ser rápidas). Porejemplo, la asignación dinámica de memoria es una función muy complicada parauna operación del nanokernel. Este diseño de nanokernel requiere un segundo

Page 8: Symbian

nivel para implementar funciones más complicadas del kernel. El nivel del kernelde Symbian OS proporciona las funciones más complicadas del kernel quenecesita el resto del sistema operativo. Cada operación en el nivel del kernel deSymbian OS es una operación privilegiada y se combina con las operaciones

primitivas del nanokernel para implementar tareas más complejas del kernel. Losservicios de objetos complejos, los hilos en modo de usuario, la planificación deprocesos y el cambio de contexto, la memoria dinámica, las bibliotecas que secargan en forma dinámica, la sincronización compleja, los objetos y lacomunicación entre procesos son sólo algunas de las operaciones que seimplementan en este nivel, el cual se puede reemplazar por completo y lasinterrupciones pueden hacer que este nivel reprograme cualquier parte de suejecución.

Acceso a los recursos de cliente/servidor

Como dijimos antes, Symbian OS explota el diseño de su microkernel e incluye unmodelo cliente/ servidor para acceder a los recursos del sistema. Las aplicacionesque necesitan acceder a los recursos del sistema son los clientes; los servidoresson programas que el sistema operativo ejecuta para coordinar el acceso a estosrecursos. Mientras que en Linux podríamos llamar a open para abrir un archivo, oen Windows usar una API de Microsoft para crear una ventana, en Symbian OSambas secuencias son iguales: primero se debe hacer una conexión a un servidor,éste debe reconocer la conexión y hay que hacerle peticiones para realizar ciertasfunciones. Por lo tanto, abrir un archivo significa que hay que buscar el servidor dearchivos, llamar a connect para establecer una conexión con el servidor y despuésenviarle una petición open con el nombre de un archivo específico.Hay varias ventajas de esta forma de proteger los recursos. En primer lugar, seadapta al diseño del sistema operativo como un sistema orientado a objetos ycomo un sistema basado en microkernel. En segundo lugar, este tipo dearquitectura es muy efectivo para administrar los múltiples accesos a los recursosdel sistema que requeriría un sistema operativo multitareas y multihilo.

Por último, cada servidor se puede enfocar en los recursos que debe administrar;además se puede actualizar con facilidad e intercambiar por nuevos diseños.

Page 9: Symbian

Características de un sistema operativo más grande

A pesar del tamaño de sus computadoras de destino, Symbian OS tiene muchasde las características de sus parientes más grandes. Aunque podemos esperar elmismo tipo de soporte que vemos en los sistemas operativos más grandes comoLinux y Windows, lo más seguro es que encontremos estas características en unaforma distinta. Symbian OS tiene muchas características en común con lossistemas operativos más grandes.

Procesos e hilos

Symbian OS es un sistema operativo multitareas y multihilo. Muchos procesos sepueden ejecutar en forma concurrente, se pueden comunicar entre sí y puedenutilizar varios hilos que se ejecutan en forma interna para cada proceso.

Soporte común para los sistemas de archivos

Symbian OS organiza el acceso al almacenamiento del sistema mediante el usode un modelo de sistema de archivos, de igual forma que los sistemas operativosmás grandes. Tiene un sistema de archivos compatible con Windows (utiliza demanera predeterminada un sistema de archivos FAT-32); admite otrasimplementaciones de sistemas de archivos mediante el uso de una interfaz estilocomplemento. Symbian OS acepta varios tipos distintos de sistemas de archivos,incluyendo FAT-16 y FAT-32, NTFS y muchos formatos de tarjetas de almacenamiento (porejemplo, JFFS).

Redes

Symbian OS acepta redes TCP/IP y varias interfaces más de comunicación, comoserial, infrarroja y Bluetooth.

Administración de la memoria

Aunque Symbian OS no utiliza memoria virtual asignada (ni tiene las herramientaspara ello), organiza el acceso a la memoria en páginas y permite reemplazarlas;es decir, traer páginas a la memoria, pero no intercambiarlas fuera de ella.

Comunicaciones y multimedia

Symbian OS se creó para facilitar la comunicación en muchas formas. Es difícil versus generalidades sin mencionar las características de comunicación. El modeladode la comunicación cumple con la orientación a objetos y a una arquitecturacliente/servidor de microkernel. Las estructuras de comunicación en Symbian OSse basan en módulos, para poder injertar nuevos mecanismos de comunicación en

Page 10: Symbian

el sistema operativo con facilidad. Es posible escribir módulos para implementarcualquier cosa, como las interfaces a nivel de usuario, las implementaciones denuevos protocolos o nuevos drivers de dispositivos. Debido al diseño delmicrokernel, es posible introducir y cargar nuevos módulos en la operación delsistema en forma dinámica.Symbian OS tiene algunas características únicas que provienen de su enfoque enla plataforma de teléfonos inteligentes. Tiene una arquitectura de mensajeríaconectable, donde se puede inventar e implementar nuevos tipos de mensajesmediante el desarrollo de módulos que el servidor de mensajería carga en formadinámica. El sistema de mensajería se ha diseñado en niveles (con tiposespecíficos de objetos que implementan los diversos niveles). Por ejemplo, losobjetos de transporte de mensajes están separados de los objetos de tipo demensaje. Por ejemplo, una forma de transporte de mensajes (como CDMA) podríatransportar varios tipos distintos de mensajes (tipos de mensajes de textoestándar, tipos SMS o comandos del sistema como los mensajes BIO). Se puedeintroducir nuevos métodos de transporte al implementar un nuevo objeto y cargarloen el kernel.

El núcleo de Symbian OS está diseñado con APIs especializadas para multimedia.Los dispositivos y el contenido multimedia se manejan mediante servidoresespeciales y un marco de trabajo que permite al usuario implementar módulos quedescriben el contenido nuevo y el existente, y qué se debe hacer con él. El soportede multimedia es a través de varias formas de objetos (algo muy parecido a laforma en que se implementa la mensajería), diseñados para interactuar entre sí.La forma en que se reproduce el sonido se diseña como un objeto que interactúacon la forma en que se implementa cada formato de sonido.

PROCESOS E HILOS EN SYMBIAN OS

Symbian OS es un sistema operativo multitareas que utiliza los conceptos deprocesos e hilos en forma muy parecida a los demás sistemas operativos. Sinembargo, la estructura del kernel de Symbian OS y la forma en que trata con laposible escasez de recursos influyen en la manera que ve estos objetosmultitareas.

Hilos y nanohilos

En vez de que los procesos sean la base de la multitarea, Symbian OS prefiereusar los hilos y se basa en este concepto. Los hilos forman la unidad central de lamultitarea. El sistema operativo simplemente ve un proceso como una colecciónde hilos con un bloque de control de proceso y cierto espacio de memoria.El soporte de hilos en Symbian OS se basa en el nanokernel con nanohilos. Elnanokernel proporciona sólo soporte simple para los hilos; cada hilo se sostienemediante un nanohilo basado en nanokernel. El nanokernel proporciona laprogramación de los nanohilos, su sincronización (comunicación entre hilos) y los

Page 11: Symbian

servicios de temporización. Los nanohilos se ejecutan en modo privilegiado ynecesitan una pila para almacenar sus datos del entorno en tiempo de ejecución.Los nanohilos no se pueden ejecutar en modo de usuario. Este hecho significaque el sistema operativo puede mantener un estrecho control sobre cada uno deellos. Cada nanohilo necesita un conjunto mínimo de datos para ejecutarse: enesencia, la ubicación de su pila y qué tan grande es. El sistema operativo lleva elcontrol de todo lo demás, como el código que utiliza cada hilo, y almacena elcontexto de un hilo en su pila en tiempo de ejecución.Los nanohilos tienen estados de hilos, así como los procesos tienen estados. Elmodelo utilizado por el nanokernel de Symbian OS agrega unos cuantos estadosal modelo básico. Además de los estados básicos, los nanohilos pueden tener lossiguientes estados:

Suspendido Aquí es cuando un hilo suspende a otro hilo y debe ser distinto alestado en espera, donde un hilo se bloque mediante algún objeto de nivel superior(por ejemplo, un hilo de Symbian OS).

Espera de semáforo rápido Un hilo en este estado espera a que se señale unsemáforo rápido (un tipo de variable centinela). Los semáforos rápidos sonsemáforos a nivel de nanokernel.

Espera de DFC Un hilo en este estado está esperando que se agregue unallamada a función retrasada (DFC) a la cola de DFCs. Las DFCs se utilizan en laimplementación de drivers de dispositivos. Representan llamadas al kernel que sepueden poner en cola y programar para ejecutarse mediante el nivel del kernel deSymbian OS.

Inactivo Los hilos inactivos esperan a que transcurra una cantidad específica detiempo.

Otro Hay un estado genérico que se utiliza cuando los desarrolladoresimplementan estados adicionales para los nanohilos. Los desarrolladores hacenesto cuando extienden la funcionalidad del nanokernel para nuevas plataformas deteléfonos (lo cual se conoce como niveles de personalidad). Los desarrolladoresque hacen esto también deben implementar la forma en que se cambia de unestado a otro desde sus implementaciones extendidas.

Los hilos de Symbian OS se basan en los nanohilos; el kernel agrega el soportemás allá de lo que proporciona el nanokernel. Los hilos en modo de usuario quese utilizan para aplicaciones estándar se implementan mediante los hilos deSymbian OS. Cada hilo de Symbian OS contiene un nanohilo y agrega su propiapila en tiempo de ejecución a la pila que utiliza el nanohilo. Los hilos de SymbianOS pueden operar en modo de kernel mediante las llamadas al sistema. SymbianOS también agrega a la implementación el manejo de excepciones y laseñalización al terminar. Los hilos de Symbian OS implementan su propio conjuntode estados encima de la implementación del nanohilo. Como los hilos de Symbian

Page 12: Symbian

OS agregan cierta funcionalidad a la implementación mínima del nanohilo, losnuevos estados reflejan las nuevas ideas integradas en los hilos de Symbian OS.Este sistema operativo agrega siete nuevos estados en los que se puedenencontrar sus hilos, con énfasis en las condiciones de bloqueo especiales quepueden ocurrir a un hilo de SymbianOS. Estos estados especiales incluyen el de espera y suspensión en semáforos(normales), variables de mutex y variables de condición. Recuerde que, debido ala implementación de los hilos de Symbian OS encima de los nanohilos, estosestados se implementan en términos de estados de nanohilos, en su mayor partemediante el uso del estado de nanohilo suspendido de varias formas.

ProcesosEn Symbian OS, los procesos son hilos de Symbian OS agrupados bajo una solaestructura de bloque de control de proceso, con un solo espacio de memoria.Puede haber sólo un hilo de ejecución, o varios hilos bajo un bloque de control deproceso. Los conceptos de estado del proceso y programación del proceso ya sehan definido mediante los hilos y nanohilos de Symbian OS. Entonces, laprogramación de un proceso se implementa en realidad mediante la planificaciónde un hilo y la inicialización del bloque de control de proceso correcto, de maneraque el hilo lo utilice para sus necesidades de datos.

Los hilos de Symbian OS organizados bajo un solo proceso trabajan juntos devarias formas. En primer lugar, hay un solo hilo individual que se marca como elpunto inicial para el proceso. En segundo lugar, los hilos comparten losparámetros de planificación. Si se cambian los parámetros (es decir, el método deplanificación) para el proceso, se cambian los parámetros para todos los hilos. Entercer lugar, los hilos comparten objetos del espacio de memoria, incluyendo losdescriptores de dispositivos y otros descriptores de objetos. Por último, cuando setermina un proceso el kernel termina todos los hilos en el proceso.