un núcleo

Upload: nevit-jose-casseres

Post on 14-Oct-2015

8 views

Category:

Documents


0 download

TRANSCRIPT

  • 5/24/2018 Un ncleo

    1/14

    Un ncleo monolticoes un tipo de ncleoo kernel de un sistema operativo. Comoejemplo de sistema operativo de ncleo monoltico estn UNIX,Linuxy ree!"#.

    $stos sistemas tienen un ncleo %rande y complejo, &ue en%lo'a todos los servicios delsistema. $st pro%ramado de (orma no modular, y tiene un rendimiento mayor &ue un

    microncleo. "in em'ar%o, cual&uier cam'io a reali)ar en cual&uier servicio re&uiere larecompilaci*n del ncleo y el reinicio del sistema para aplicar los nuevos cam'ios.

    +ay diversas rami(icaciones de este diseo, &ue se -an ido amoldando a nuevasnecesidades. odemos citar el sistema de m*dulos ejecuta'les en tiempo de ejecuci*n,&ue le 'rinda al modelo de ncleo monoltico al%unas de las ventajas de unmicroncleo. #ic-os m*dulos pueden ser compilados, modi(icados, car%ados ydescar%ados en tiempo de ejecuci*n, de manera similar a los servicios de unmicroncleo, pero con la di(erencia de &ue se ejecutan en el espacio de memoria delncleo mismo /anillo 01. #e esta (orma, un 'lo&ueo del m*dulo, es pro'a'le &ue

    'lo&uee todo el ncleo. 2dems, el m*dulo pasa a (ormar un todo con el ncleo, usando

    la 2Idel mismo, y no se emplea un sistema de mensajes como en los microncleos.$ste es el es&uema usado por, entre otros, 3NU4Linux,ree!"#y varios derivados deUNIX. Ca'e resaltar &ue el paso constante de mensajes entre los servicios delmicroncleo, es en parte responsa'le de las po'res rendimientos de los microncleos.

    Un sistema operativocon ncleo monolticoconcentra todas las (uncionalidadesposi'les /plani(icaci*n, sistema de arc-ivos, redes, controladores de dispositivos,%esti*n de memoria, etc1 dentro de un %ran pro%rama. $l mismo puede tener un tamaoconsidera'le, y de'er ser recompilado por completo al aadir una nueva (uncionalidad.5odos los componentes (uncionales del ncleo tienen acceso a todas sus estructuras dedatos internas y a sus rutinas. Un error en una rutina puede propa%arse a todo el ncleo.5odos sus componentes se encuentran inte%rados en un nico pro%rama &ue ejecuta enun nico espacio de direcciones. $n este tipo de sistemas, todas las (unciones &ue o(receel sistema operativo se ejecutan en modo supervisor.

    $stos sistemas operativos -an sur%ido, normalmente, de sistemas operativos sencillos ype&ueos a los &ue se les -a ido aadiendo un nmero mayor de (uncionalidades. $stoles -a -ec-o evolucionar y crecer -asta convertirlos en pro%ramas %randes y complejos(ormados por muc-as (unciones situadas todas ellas en un mismo nivel. $jemplos clarosde este tipo de sistemas son 6"7#8"y UNIX. 2m'os comen)aron siendo pe&ueossistemas operativos, &ue (ueron -aci9ndose cada ve) ms %randes de'ido a la %ran

    popularidad &ue ad&uirieron.

    $l pro'lema &ue plantean este tipo de sistemas radica en lo complicado &ue es modi(icarel sistema operativo para aadir nuevas (uncionalidades y servicios. $n e(ecto, aadiruna nueva caracterstica implica la modi(icaci*n de un %ran pro%rama, compuesto pormiles de lneas de c*di%o (uente y (unciones, cada una de las cuales puede invocar aotras cuando as lo re&uiera. 2dems en este tipo de sistemas no se si%ue el principio deocultaci*n de la in(ormaci*n. ara solucionar este pro'lema es necesario dotar de ciertaestructura al sistema operativo.

    La alternativa es tener una estructura de microncleo,donde las partes (uncionales estn

    divididas en unidades separadas con mecanismos de comunicaci*n estrictos entre ellos.

    http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)http://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/UNIXhttp://es.wikipedia.org/wiki/UNIXhttp://es.wikipedia.org/wiki/Linux_(n%C3%BAcleo)http://es.wikipedia.org/wiki/FreeBSDhttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicacioneshttp://es.wikipedia.org/wiki/GNU/Linuxhttp://es.wikipedia.org/wiki/GNU/Linuxhttp://es.wikipedia.org/wiki/FreeBSDhttp://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Sistema_de_archivoshttp://es.wikipedia.org/wiki/MS-DOShttp://es.wikipedia.org/wiki/UNIXhttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)http://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/UNIXhttp://es.wikipedia.org/wiki/Linux_(n%C3%BAcleo)http://es.wikipedia.org/wiki/FreeBSDhttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicacioneshttp://es.wikipedia.org/wiki/GNU/Linuxhttp://es.wikipedia.org/wiki/FreeBSDhttp://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Sistema_de_archivoshttp://es.wikipedia.org/wiki/MS-DOShttp://es.wikipedia.org/wiki/UNIXhttp://es.wikipedia.org/wiki/Micron%C3%BAcleo
  • 5/24/2018 Un ncleo

    2/14

    Sistemas operativos con ncleos monolticos [editar]

    $ntre los sistemas operativos &ue cuentan con ncleos monolticos se encuentran:

    Ncleos tipo Unixo Linuxo "ylla'leo Unix

    !"# ree!"# Net!"# 8pen!"#

    "olaris 2IX

    Ncleos tipo #8"

    o #;7#8"o 6"7#8"

    "istemas operativos 6icroso(t x />?, >@, >@"$, 6e1 Ncleos del 6ac 8"-asta 6ac 8" @.A 8penB6" X5"700

    Los ncleos hbridos(undamentalmente son microncleos&ue tienen al%o de c*di%ono esencial, en espacio de ncleopara &ue 9ste se ejecute ms rpido de lo &ue lo-ara si estuviera en espacio de usuario.

    Dste (ue un compromiso &ue muc-os desarrolladores de los primeros sistemasoperativos, con ar&uitectura 'asada en microncleo, adoptaron antes &ue se demostrara&ue los microncleospueden tener muy 'uen rendimiento. La mayora de sistemasoperativosmodernos pertenecen a esta cate%ora, siendo el ms popular 6icroso(t

  • 5/24/2018 Un ncleo

    3/14

    Microncleo/en in%l9s: microkernel1 es un tipo de ncleode un sistema operativo&ueprovee un conjunto de primitivas o llamadas al sistema mnimas, para implementarservicios 'sicos como espacios de direcciones, comunicaci*n entre procesosy

    plani(icaci*n'sica.

    5odos los otros servicios /%esti*n de memoria, sistema de arc-ivos,operaciones de $4",etc.1, &ue en %eneral son provistos por el ncleo, se ejecutan como procesos servidoresen espacio de usuario.

    $l paradi%ma del microncleo, tuvo una %ran relevancia acad9mica durante los aosoc-enta y principios de los noventa, dentro de lo &ue se denomin* sel( -ealin%computin%, esto es, sistemas independientes &ue (uesen capaces de superar por simismos errores de so(t=areo-ard=are. $n un principio pretenda ser una soluci*n a lacreciente complejidad de los sistemas operativos.

    Las principales ventajas de su utili)aci*n son la reducci*n de la complejidad, la

    descentrali)aci*n de los (allos /un (allo en una parte del sistema no lo colapsara porcompleto1 y la (acilitaci*n para crear y depurarcontroladores de dispositivos.

    or otro lado, sus principales di(icultades son la complejidad en la sincroni)aci*n detodos los m*dulos &ue componen el microncleo y su acceso a la memoria, la anulaci*nde las ventajas de Eero Copy, la Inte%raci*n con las aplicaciones. 2dems, los

    procesadores y ar&uitecturas modernas de -ard=are estn optimi)adas para sistemas dencleo &ue pueden mapear toda la memoria.

    $sto mejora la tolerancia a (allos y eleva la porta'ilidad entre plata(ormas de-ard=are,

    se%n los de(ensores de esta tendencia. "us detractores le ac-acan, (undamentalmente,mayor complejidad en el c*di%o, menor rendimiento, o limitaciones en diversas(unciones.

    Sistemas operativos con microncleo [editar]

    $ntre los sistemas operativos con microncleo podemos citar:

    2mi%a8" 6inix +urd NeX5"5$/al%unos lo consideran un ncleo -'rido1 L Netkernel 2moe'a ;a8" ;adi8" C-orus FNX "8G "ym'8"

    http://es.wikipedia.org/wiki/Idioma_ingl%C3%A9shttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)http://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesoshttp://es.wikipedia.org/wiki/Planificadorhttp://es.wikipedia.org/wiki/Sistema_de_archivoshttp://es.wikipedia.org/wiki/Sistema_de_archivoshttp://es.wikipedia.org/w/index.php?title=Self_healing_computing&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Self_healing_computing&action=edit&redlink=1http://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Controlador_de_dispositivohttp://es.wikipedia.org/wiki/Controlador_de_dispositivohttp://es.wikipedia.org/wiki/Zero_Copyhttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/w/index.php?title=Micron%C3%BAcleo&action=edit&section=1http://es.wikipedia.org/wiki/AmigaOShttp://es.wikipedia.org/wiki/Minixhttp://es.wikipedia.org/wiki/Hurdhttp://es.wikipedia.org/wiki/NeXTSTEPhttp://es.wikipedia.org/wiki/N%C3%BAcleo_h%C3%ADbridohttp://es.wikipedia.org/wiki/L4_(microkernel)http://es.wikipedia.org/w/index.php?title=Netkernel&action=edit&redlink=1http://es.wikipedia.org/wiki/Amoebahttp://es.wikipedia.org/w/index.php?title=RaOS&action=edit&redlink=1http://es.wikipedia.org/wiki/RadiOShttp://es.wikipedia.org/wiki/Chorushttp://es.wikipedia.org/wiki/QNXhttp://es.wikipedia.org/wiki/SO3http://es.wikipedia.org/wiki/SymbOShttp://es.wikipedia.org/wiki/Idioma_ingl%C3%A9shttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)http://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesoshttp://es.wikipedia.org/wiki/Planificadorhttp://es.wikipedia.org/wiki/Sistema_de_archivoshttp://es.wikipedia.org/w/index.php?title=Self_healing_computing&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Self_healing_computing&action=edit&redlink=1http://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Controlador_de_dispositivohttp://es.wikipedia.org/wiki/Zero_Copyhttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/w/index.php?title=Micron%C3%BAcleo&action=edit&section=1http://es.wikipedia.org/wiki/AmigaOShttp://es.wikipedia.org/wiki/Minixhttp://es.wikipedia.org/wiki/Hurdhttp://es.wikipedia.org/wiki/NeXTSTEPhttp://es.wikipedia.org/wiki/N%C3%BAcleo_h%C3%ADbridohttp://es.wikipedia.org/wiki/L4_(microkernel)http://es.wikipedia.org/w/index.php?title=Netkernel&action=edit&redlink=1http://es.wikipedia.org/wiki/Amoebahttp://es.wikipedia.org/w/index.php?title=RaOS&action=edit&redlink=1http://es.wikipedia.org/wiki/RadiOShttp://es.wikipedia.org/wiki/Chorushttp://es.wikipedia.org/wiki/QNXhttp://es.wikipedia.org/wiki/SO3http://es.wikipedia.org/wiki/SymbOS
  • 5/24/2018 Un ncleo

    4/14

    $n in(ormtica, el ncleo/tam'i9n conocido en espaol con el an%licismo kernel, de lara) %ermnicaKern1 es la parte (undamental de un sistema operativo.$s el so(t=areresponsa'le de (acilitar a los distintos pro%ramas acceso se%uroal-ard=arede lacomputadorao en (orma ms 'sica, es el encar%ado de %estionar recursos, a trav9s deservicios de llamada al sistema. Como -ay muc-os pro%ramas y el acceso al -ard=are

    es limitado, el ncleo tam'i9n se encar%a de decidir &u9 pro%rama podr -acer uso deun dispositivo de -ard=are y durante cunto tiempo, lo &ue se conoce comomultiplexado. 2cceder al -ard=are directamente puede ser realmente complejo, por lo&ue los ncleos suelen implementar una serie dea'stracciones del -ard=are. $sto

    permite esconder la complejidad, y proporciona una inter(a) limpia y uni(orme al-ard=are su'yacente, lo &ue (acilita su uso para elpro%ramador.

    Contenido

    Hocultar

    J 3eneralidadeso J.J unciones %eneralmente ejercidas por un ncleoo J.K Un ejemplo, Unix

    K 5ipos de ncleoo K.J 6icroncleoso K.K Ncleos monolticos en contraposici*n a microncleoso K.G Ncleos -'ridos /microncleos modi(icados1o K. $xoncleos

    G ;e(erencias B9ase tam'i9n

    ? $nlaces externos

    Generalidades [editar]

    Una visi*n tpica de la ar&uitectura de computadorescomo una serie de capas dea'stracci*n: -ard=are, (irm=are, len%uaje de m&uina, ncleo, so(t=are de sistemayaplicacionesJ

    http://es.wikipedia.org/wiki/Inform%C3%A1ticahttp://es.wikipedia.org/wiki/Idioma_alem%C3%A1nhttp://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Seguridad_inform%C3%A1ticahttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Computadorahttp://es.wikipedia.org/wiki/Multiplexaci%C3%B3nhttp://es.wikipedia.org/wiki/Abstracci%C3%B3n_del_hardwarehttp://es.wikipedia.org/wiki/Abstracci%C3%B3n_del_hardwarehttp://es.wikipedia.org/wiki/Programadorhttp://es.wikipedia.org/wiki/Programadorhttp://toggletoc%28%29/http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Generalidades%23Generalidadeshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Generalidades%23Generalidadeshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Funciones_generalmente_ejercidas_por_un_n.C3.BAcleo%23Funciones_generalmente_ejercidas_por_un_n.C3.BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Funciones_generalmente_ejercidas_por_un_n.C3.BAcleo%23Funciones_generalmente_ejercidas_por_un_n.C3.BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Un_ejemplo.2C_Unix%23Un_ejemplo.2C_Unixhttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Tipos_de_n.C3.BAcleo%23Tipos_de_n.C3.BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Tipos_de_n.C3.BAcleo%23Tipos_de_n.C3.BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Micron.C3.BAcleos%23Micron.C3.BAcleoshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#N.C3.BAcleos_monol.C3.ADticos_en_contraposici.C3.B3n_a_micron.C3.BAcleos%23N.C3.BAcleos_monol.C3.ADticos_en_contraposici.C3.B3n_a_micron.C3.BAcleoshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#N.C3.BAcleos_h.C3.ADbridos_.28micron.C3.BAcleos_modificados.29%23N.C3.BAcleos_h.C3.ADbridos_.28micron.C3.BAcleos_modificados.29http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#N.C3.BAcleos_h.C3.ADbridos_.28micron.C3.BAcleos_modificados.29%23N.C3.BAcleos_h.C3.ADbridos_.28micron.C3.BAcleos_modificados.29http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Exon.C3.BAcleos%23Exon.C3.BAcleoshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Referencias%23Referenciashttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Referencias%23Referenciashttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#V.C3.A9ase_tambi.C3.A9n%23V.C3.A9ase_tambi.C3.A9nhttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Enlaces_externos%23Enlaces_externoshttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=1http://es.wikipedia.org/wiki/Arquitectura_de_computadoreshttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Firmwarehttp://es.wikipedia.org/wiki/Lenguaje_de_m%C3%A1quinahttp://es.wikipedia.org/wiki/Software_de_sistemahttp://es.wikipedia.org/wiki/Proceso_(inform%C3%A1tica)http://es.wikipedia.org/wiki/Archivo:Computer_abstraction_layers-es-v2.svghttp://es.wikipedia.org/wiki/Archivo:Computer_abstraction_layers-es-v2.svghttp://es.wikipedia.org/wiki/Inform%C3%A1ticahttp://es.wikipedia.org/wiki/Idioma_alem%C3%A1nhttp://es.wikipedia.org/wiki/Sistema_operativohttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Seguridad_inform%C3%A1ticahttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Computadorahttp://es.wikipedia.org/wiki/Multiplexaci%C3%B3nhttp://es.wikipedia.org/wiki/Abstracci%C3%B3n_del_hardwarehttp://es.wikipedia.org/wiki/Programadorhttp://toggletoc%28%29/http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Generalidades%23Generalidadeshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Funciones_generalmente_ejercidas_por_un_n.C3.BAcleo%23Funciones_generalmente_ejercidas_por_un_n.C3.BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Un_ejemplo.2C_Unix%23Un_ejemplo.2C_Unixhttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Tipos_de_n.C3.BAcleo%23Tipos_de_n.C3.BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Micron.C3.BAcleos%23Micron.C3.BAcleoshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#N.C3.BAcleos_monol.C3.ADticos_en_contraposici.C3.B3n_a_micron.C3.BAcleos%23N.C3.BAcleos_monol.C3.ADticos_en_contraposici.C3.B3n_a_micron.C3.BAcleoshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#N.C3.BAcleos_h.C3.ADbridos_.28micron.C3.BAcleos_modificados.29%23N.C3.BAcleos_h.C3.ADbridos_.28micron.C3.BAcleos_modificados.29http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Exon.C3.BAcleos%23Exon.C3.BAcleoshttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Referencias%23Referenciashttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#V.C3.A9ase_tambi.C3.A9n%23V.C3.A9ase_tambi.C3.A9nhttp://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)#Enlaces_externos%23Enlaces_externoshttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=1http://es.wikipedia.org/wiki/Arquitectura_de_computadoreshttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Firmwarehttp://es.wikipedia.org/wiki/Lenguaje_de_m%C3%A1quinahttp://es.wikipedia.org/wiki/Software_de_sistemahttp://es.wikipedia.org/wiki/Proceso_(inform%C3%A1tica)
  • 5/24/2018 Un ncleo

    5/14

    $n in(ormtica, el ncleo de un sistema operativo, es el pro%rama in(ormtico &ue sease%ura de:

    La comunicaci*n entre los pro%ramas in(ormticos y el -ard=are. 3esti*n de los distintos pro%ramas in(ormticos /tareas1 de una m&uina. 3esti*n del -ard=are /memoria,procesador,peri(9rico, (orma de

    almacenamiento, etc.1

    La mayora de los sistemas operativos se construyen en torno al concepto de ncleo. Laexistencia de un ncleo, es decir, de un nico pro%rama responsa'le de la comunicaci*nentre el -ard=are y el pro%rama in(ormtico, resulta de compromisos complejosre(erentes a cuestiones de resultados, se%uridad y ar&uitectura de los procesadores. $lncleo tiene %randes poderes so're la utili)aci*n de los recursos materiales /-ard=are1,en particular, de la memoria.

    Funciones generalmente ejercidas por un ncleo [editar]

    Los ncleos tienen como (unciones 'sicas %aranti)ar la car%a y la ejecuci*n de losprocesos, las entradas4salidas y proponer un inter(a) entre el espacio ncleo y lospro%ramas del espacio del usuario.

    2parte de las (uncionalidades 'sicas, el conjunto de las (unciones de los puntossi%uientes /incluidos los pilotos materiales, las (unciones de redes y sistemas de (ic-eroso los servicios1 necesariamente no son proporcionados por un ncleo de sistema deexplotaci*n. ueden esta'lecerse estas (unciones del sistema de explotaci*n tanto en elespacio usuario como en el propio ncleo. "u implantaci*n en el ncleo se -ace en el

    nico o'jetivo de mejorar los resultados. $n e(ecto, se%n la concepci*n del ncleo, lamisma (unci*n llamada desde el espacio usuario o el espacio ncleo tiene un costetemporal o'viamente di(erente. "i esta llamada de (unci*n es (recuente, puede resultartil inte%rar estas (unciones al ncleo para mejorar los resultados.

    Un ejemplo, Unix [editar]

    $l ncleo del sistema operativo Unix es un pro%rama escrito casi en su totalidad enlen%uaje C, con excepci*n de una parte del manejo de interrupciones, expresada en ellen%uaje ensam'ladordel procesador en el &ue opera. Las (unciones del ncleo son

    permitir la existencia de un am'iente en el &ue sea posi'le atender a varios usuarios y

    mltiples tareas en (orma concurrente, repartiendo al procesador entre todos ellos, eintentando mantener en %rado *ptimo la atenci*n individual.

    $l ncleo opera como asi%nador de recursos para cual&uier proceso &ue necesite -aceruso de las (acilidades de c*mputo. $s el componente central de Unix y tiene lassi%uientes (unciones:

    Creaci*n de procesos, asi%naci*n de tiempos de atenci*n y sincroni)aci*n. 2si%naci*n de la atenci*n del procesador a los procesos &ue lo re&uieren. 2dministraci*n de espacio en el sistema de arc-ivos, &ue incluye: acceso,

    protecci*n y administraci*n de usuarios comunicaci*n entre usuarios y entreprocesos, y manipulaci*n de $4" y administraci*n de peri(9ricos.

    http://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Memoria_(inform%C3%A1tica)http://es.wikipedia.org/wiki/CPUhttp://es.wikipedia.org/wiki/CPUhttp://es.wikipedia.org/wiki/Perif%C3%A9ricohttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=2http://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=3http://es.wikipedia.org/wiki/Lenguaje_Chttp://es.wikipedia.org/wiki/Lenguaje_ensambladorhttp://es.wikipedia.org/wiki/Hardwarehttp://es.wikipedia.org/wiki/Memoria_(inform%C3%A1tica)http://es.wikipedia.org/wiki/CPUhttp://es.wikipedia.org/wiki/Perif%C3%A9ricohttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=2http://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=3http://es.wikipedia.org/wiki/Lenguaje_Chttp://es.wikipedia.org/wiki/Lenguaje_ensamblador
  • 5/24/2018 Un ncleo

    6/14

    "upervisi*n de la transmisi*n de datos entre la memoria principal y losdispositivos peri(9ricos.

    $l ncleo reside siempre en la memoria principal y tiene el control so're lacomputadora, por lo &ue nin%n otro proceso puede interrumpirlo s*lo pueden llamarlo

    para &ue proporcione al%n servicio de los ya mencionados. Un proceso llama al ncleomediante m*dulos especiales conocidos como llamadas al sistema.

    $l ncleo consta de dos partes principales: la secci*n de control de procesos y la decontrol de dispositivos. La primera asi%na recursos, pro%ramas, procesos y atiende susre&uerimientos de servicio la se%unda, supervisa la trans(erencia de datos entre lamemoria principal y los dispositivos del ordenador. $n t9rminos %enerales, cada ve) &ueal%n usuario oprime una tecla de una terminal, o &ue se de'e leer o escri'irin(ormaci*n del disco ma%n9tico, se interrumpe al procesador central y el ncleo seencar%a de e(ectuar la operaci*n de trans(erencia.

    Cuando se inicia la operaci*n de la computadora, de'e car%arse en la memoria unacopia del ncleo, &ue reside en el disco ma%n9tico /operaci*n denominada 'ootstrap1.ara ello, se de'en iniciali)ar al%unas inter(aces 'sicas de -ard=are entre ellas, el reloj&ue proporciona interrupciones peri*dicas. $l ncleo tam'i9n prepara al%unasestructuras de datos &ue a'arcan una secci*n de almacenamiento temporal paratrans(erencia de in(ormaci*n entre terminales y procesos, una secci*n paraalmacenamiento de descriptores de arc-ivos y una varia'le &ue indica la cantidad dememoria principal.

    2 continuaci*n, el ncleo iniciali)a un proceso especial, llamado proceso 0. $nUnix,

    los procesos se crean mediante una llamada a una rutina del sistema /(ork1, &ue (uncionapor un mecanismo de duplicaci*n de procesos. "in em'ar%o, esto no es su(iciente paracrear el primero de ellos, por lo &ue el ncleo asi%na una estructura de datos y esta'leceapuntadores a una secci*n especial de la memoria, llamada ta'la de procesos, &uecontendr los descriptores de cada uno de los procesos existentes en el sistema.

    #espu9s de -a'er creado el proceso 0, se -ace una copia del mismo, con lo &ue se creael proceso J 9ste muy pronto se encar%ar de Mdar vidaM al sistema completo, mediantela activaci*n de otros procesos &ue tam'i9n (orman parte del ncleo. $s decir, se iniciauna cadena de activaciones de procesos, entre los cuales destaca el conocido comodespac-ador, o plani(icador, &ue es el responsa'le de decidir cul proceso se ejecutar y

    cules van a entrar o salir de la memoria central. 2 partir de ese momento se conoce elnmero J como proceso de iniciali)aci*n del sistema, init.

    $l proceso init es el responsa'le de esta'lecer la estructura de procesos en Unix.Normalmente, es capa) de crear al menos dos estructuras distintas de procesos: el modomonousuario y el multiusuario. Comien)a activando el int9rprete del len%uaje de control"-ell de Unixen la terminal principal, o consola del sistema, proporcionndole

    privile%ios de MsuperusuarioM. $n la modalidad de un solo usuario la consola permiteiniciar una primera sesi*n, con privile%ios especiales, e impide &ue las otras lneas decomunicaci*n acepten iniciar sesiones nuevas. $sta modalidad se usa con (recuencia

    para revisar y reparar sistemas de arc-ivos, reali)ar prue'as de (unciones 'sicas del

    sistema y para otras actividades &ue re&uieren uso exclusivo de la computadora.

    http://es.wikipedia.org/wiki/Unixhttp://es.wikipedia.org/wiki/Unixhttp://es.wikipedia.org/wiki/Shell_de_Unixhttp://es.wikipedia.org/wiki/Unixhttp://es.wikipedia.org/wiki/Shell_de_Unix
  • 5/24/2018 Un ncleo

    7/14

    Init crea otro proceso, &ue espera a &ue al%uien entre en sesi*n en al%una lnea decomunicaci*n. Cuando esto sucede, reali)a ajustes en el protocolo de la lnea y ejecutael pro%rama lo%in, &ue se encar%a de atender inicialmente a los nuevos usuarios. "i elnom're de usuario y la contrasea proporcionadas son correctos, entonces entra enoperaci*n el pro%rama "-ell, &ue en lo sucesivo se encar%ar de la atenci*n normal del

    usuario &ue se dio de alta en esa terminal.

    2 partir de ese momento el responsa'le de atender al usuario en esa terminal es elint9rprete "-ell. Cuando se desea terminar la sesi*n -ay &ue desconectarse de "-ell /y,

    por lo tanto, de Unix1, mediante una secuencia especial de teclas /usualmente. C5L O7 #1. 2 partir de ese momento la terminal &ueda disponi'le para atender a un nuevousuario.

    Tipos de ncleo [editar]

    No necesariamente se necesita un ncleo para usar una computadora. Los pro%ramaspueden car%arse y ejecutarse directamente en una computadora PvacaQ, siempre &uesus autores &uieran desarrollarlos sin usar nin%una a'stracci*n del -ard=are ni nin%unaayuda del sistema operativo. Dsta era la (orma normal de usar muc-as de las primerascomputadoras: para usar distintos pro%ramas se tena &ue reiniciar y recon(i%urar lacomputadora cada ve). Con el tiempo, se empe)* a dejar en memoria /an entredistintas ejecuciones1 pe&ueos pro%ramas auxiliares, como el car%adory eldepurador,o se car%a'an desde memoria de s*lo lectura.2 medida &ue se (ueron desarrollando, seconvirtieron en los (undamentos de lo &ue lle%aran a ser los primeros ncleos desistema operativo.

    +ay cuatro %randes tipos de ncleos:

    Los ncleos monolticos(acilitan a'stracciones del -ard=are su'yacenterealmente potentes y variadas.

    Los microncleos/en in%l9s microkernel1 proporcionan un pe&ueo conjuntode a'stracciones simples del -ard=are, y usan las aplicaciones llamadasservidorespara o(recer mayor (uncionalidad.

    Los ncleos hbridos/microncleos modificados1 son muy parecidos a losmicroncleos puros, excepto por&ue incluyen c*di%o adicional en el espacio dencleo para &ue se ejecute ms rpidamente.

    Los exoncleosno (acilitan nin%una a'stracci*n, pero permiten el uso de'i'liotecas&ue proporcionan mayor (uncionalidad %racias al acceso directo ocasi directo al -ard=are.

    http://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=4http://es.wikipedia.org/wiki/Cargador_de_programashttp://es.wikipedia.org/wiki/Depuradorhttp://es.wikipedia.org/wiki/Depuradorhttp://es.wikipedia.org/wiki/Depuradorhttp://es.wikipedia.org/wiki/Memoria_ROMhttp://es.wikipedia.org/wiki/Memoria_ROMhttp://es.wikipedia.org/wiki/Servidorhttp://es.wikipedia.org/wiki/Biblioteca_(programa)http://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=4http://es.wikipedia.org/wiki/Cargador_de_programashttp://es.wikipedia.org/wiki/Depuradorhttp://es.wikipedia.org/wiki/Memoria_ROMhttp://es.wikipedia.org/wiki/Servidorhttp://es.wikipedia.org/wiki/Biblioteca_(programa)
  • 5/24/2018 Un ncleo

    8/14

    Microncleos [editar]

    $s&uema del (uncionamiento de un microncleoArtculo principal:Microncleo

    $l en(o&ue microncleo consiste en de(inir una a'stracci*n muy simple so're el-ard=are, con un conjunto de primitivas o llamadas al sistema &ue implementanservicios del sistema operativo mnimos, como la %esti*n de -ilos,el espacio dedireccionamientoy la comunicaci*n entre procesos.

    $l o'jetivo principal es la separaci*n de la implementaci*n de los servicios 'sicos y dela poltica de (uncionamiento del sistema. or ejemplo, el proceso de 'lo&ueo de$4"se

    puede implementar con un servidor en espacio de usuario ejecutndose encima delmicroncleo. $stos servidores de usuario, utili)ados para %estionar las partes de altonivel del sistema, son muy modulares y simpli(ican la estructura y diseo del ncleo. "i(alla uno de estos servidores, no se col%ar el sistema entero, y se podr reiniciar este

    m*dulo independientemente del resto. "in em'ar%o, la existencia de di(erentes m*dulosindependientes ori%ina retardos en la comunicaci*n de'ido a la copia de varia'les &uese reali)a en la comunicaci*n entre m*dulos.

    2l%unos ejemplos de microncleos:

    2IX La (amilia de microncleos L $l microncleo 6ac-, usado en 3NU+urdy en 6ac 8" X !e8" 6inix 6orp-8" FNX ;adi8" B"5a +urd

    Ncleos monolticos en contraposicin a microncleos [editar]

    Artculos principales:Ncleo monolticoyMicroncleo

    recuentemente se pre(ieren los ncleos monolticos(rente a los microncleos de'ido al

    menor nivel de complejidad &ue comporta el tratar con todo el c*di%o de control delsistema en un solo espacio de direccionamiento. or ejemplo, XNU,el ncleo de 6ac

    http://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=5http://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/Gesti%C3%B3n_de_hiloshttp://es.wikipedia.org/wiki/Gesti%C3%B3n_de_hiloshttp://es.wikipedia.org/w/index.php?title=Espacio_de_direccionamiento&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Espacio_de_direccionamiento&action=edit&redlink=1http://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesoshttp://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesoshttp://es.wikipedia.org/wiki/Entrada/salidahttp://es.wikipedia.org/wiki/Entrada/salidahttp://es.wikipedia.org/wiki/AIXhttp://es.wikipedia.org/wiki/L4_(microkernel)http://es.wikipedia.org/wiki/GNU_Machhttp://es.wikipedia.org/wiki/GNUhttp://es.wikipedia.org/wiki/GNUhttp://es.wikipedia.org/wiki/Hurdhttp://es.wikipedia.org/wiki/Mac_OS_Xhttp://es.wikipedia.org/wiki/BeOShttp://es.wikipedia.org/wiki/Minixhttp://es.wikipedia.org/wiki/MorphOShttp://es.wikipedia.org/wiki/QNXhttp://es.wikipedia.org/wiki/RadiOShttp://es.wikipedia.org/wiki/VSTahttp://es.wikipedia.org/wiki/Hurdhttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=6http://es.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADticohttp://es.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADticohttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADticohttp://es.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADticohttp://es.wikipedia.org/wiki/XNUhttp://es.wikipedia.org/wiki/XNUhttp://es.wikipedia.org/wiki/Archivo:Kernel-microkernel.svghttp://es.wikipedia.org/wiki/Archivo:Kernel-microkernel.svghttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=5http://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/Gesti%C3%B3n_de_hiloshttp://es.wikipedia.org/w/index.php?title=Espacio_de_direccionamiento&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Espacio_de_direccionamiento&action=edit&redlink=1http://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesoshttp://es.wikipedia.org/wiki/Entrada/salidahttp://es.wikipedia.org/wiki/AIXhttp://es.wikipedia.org/wiki/L4_(microkernel)http://es.wikipedia.org/wiki/GNU_Machhttp://es.wikipedia.org/wiki/GNUhttp://es.wikipedia.org/wiki/Hurdhttp://es.wikipedia.org/wiki/Mac_OS_Xhttp://es.wikipedia.org/wiki/BeOShttp://es.wikipedia.org/wiki/Minixhttp://es.wikipedia.org/wiki/MorphOShttp://es.wikipedia.org/wiki/QNXhttp://es.wikipedia.org/wiki/RadiOShttp://es.wikipedia.org/wiki/VSTahttp://es.wikipedia.org/wiki/Hurdhttp://es.wikipedia.org/w/index.php?title=N%C3%BAcleo_(inform%C3%A1tica)&action=edit&section=6http://es.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADticohttp://es.wikipedia.org/wiki/Micron%C3%BAcleohttp://es.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADticohttp://es.wikipedia.org/wiki/XNU
  • 5/24/2018 Un ncleo

    9/14

    8" X, est 'asado en el ncleo 6ac- G.0 y en ree!"#, en el mismo espacio dedireccionamiento para disminuir la latencia &ue comporta el diseo de microncleoconvencional.

    2 principios de los aos >0, los ncleos monolticos se considera'an o'soletos. $l

    diseo de Linux como un ncleo monoltico en lu%ar de como un microncleo (ue eltema de una (amosa disputaKentre Linus 5orvaldsy 2ndre= 5anen'aum.Losar%umentos de am'as partes en esta discusi*n presentan al%unas motivacionesinteresantes.

    Los ncleos monolticos suelen ser ms (ciles de disear correctamente, y por lo tantopueden crecer ms rpidamente &ue un sistema 'asado en microncleo, pero -ay casosde 9xito en am'os 'andos. Los microncleos suelen usarse en ro'*tica em'e'ida ocomputadoras m9dicas, ya &ue la mayora de los componentes del sistema operativoresiden en su propio espacio de memoria privado y prote%ido. $sto no sera posi'le conlos ncleos monolticos, ni si&uiera con los modernos &ue permiten car%ar m*dulos del

    ncleo.

    2un&ue 6ac-es el microncleo %eneralista ms conocido, se -an desarrollado otrosmicroncleos con prop*sitos ms espec(icos. LG(ue creado para demostrar &ue losmicroncleos no son necesariamente lentos. La (amilia de microncleos L es ladescendiente de LG, y una de sus ltimas implementaciones, llamada istac-io,permiteejecutar Linux simultneamente con otros procesos, en espacios de direccionamientoseparados.

    FNXes un sistema operativo &ue -a estado disponi'le desde principios de los aos @0,

    y tiene un diseo de microncleo muy minimalista. $ste sistema -a conse%uido lle%ar alas metas del paradi%ma del microncleo con muc-o ms 9xito &ue 6ac-. "e usa ensituaciones en &ue no se puede permitir &ue -aya (allos de so(t=are, lo &ue incluyedesde 'ra)os ro'*ticos en naves espaciales, -asta m&uinas &ue pulen cristal donde un

    pe&ueo error podra costar muc-o dinero.

    6uc-a %ente cree &ue como 6ac- 'sicamente (all* en el intento de resolver elconjunto de pro'lemas &ue los microncleos intenta'an su'sanar, toda la tecnolo%a demicroncleos es intil. Los partidarios de 6ac- a(irman &ue 9sta es una actitud estrec-ade miras &ue -a lle%ado a ser lo su(icientemente popular para &ue muc-a %ente la aceptecomo verdad.

    Ncleos hbridos (microncleos modiicados! [editar]

    Artculo principal:Ncleo hbrido

    Los ncleos -'ridos (undamentalmente son microncleos &ue tienen al%o de c*di%oPno esencialQ en espacio de ncleo para &ue 9ste se ejecute ms rpido de lo &ue lo-ara si estuviera en espacio de usuario. Dste (ue un compromiso &ue muc-osdesarrolladores de los primeros sistemas operativos con ar&uitectura 'asada enmicroncleo adoptaron antes &ue se demostrara &ue los microncleos pueden tener muy

    'uen rendimiento. La mayora de sistemas operativos modernos pertenecen a estacate%ora, siendo el ms popular 6icroso(t

  • 5/24/2018 Un ncleo

    10/14

    ree!"# en el ncleo 'asado en 6ac-. #ra%only!"#es el primer sistema !"# &ueadopta una ar&uitectura de ncleo -'rido sin 'asarse en 6ac-.

    2l%unos ejemplos de ncleos -'ridos:

    6icroso(t

  • 5/24/2018 Un ncleo

    11/14

    #e'ido a &ue el exoncleo s*lo proporciona una inter(a) al -ard=are de muy 'ajo nivel,careciendo de todas las (uncionalidades de alto nivel de otros sistemas operativos, 9stees complementado por una P'i'lioteca de sistema operativoQ. $sta 'i'lioteca secomunica con el exoncleo su'yacente, y (acilita a los pro%ramadores de aplicacioneslas (uncionalidades &ue son comunes en otros sistemas operativos.

    2l%unas de las implicaciones te*ricas de un sistema exoncleo son &ue es posi'le tenerdistintos tipos de sistemas operativos /p.e.

  • 5/24/2018 Un ncleo

    12/14

    http://upload.wikimedia.org/wikipedia/commons/d/d0/OS-structure2.svg
  • 5/24/2018 Un ncleo

    13/14

    Microsot Corporation/N2"#2F:6"51 es una empresa multinacionalestadounidense, (undada en J>R?por !ill 3atesy aul 2llen. #edicada al sector de lain(ormtica, con sede en ;edmond, @A, la cual, de'ido a la su'ida de coti)aci*n de las acciones, llev* a empleados a convertirse en milmillonarios y a JK,000 en millonarios.J@

    #urante su -istoria, -a sido o'jeto de crticas, como acusaciones de reali)ar prcticasmonopolsticas&ue la -an llevado ante la Comisi*n $uropeay el #epartamento deTusticia de los $stados Unidos.J>K0

    6icroso(t a(ian)* su posici*n en otros mercados como el de sistemas operativos y suitesde o(icina, con recursos como la red de televisi*n por ca'le 6"N!C, el portal deInternet6"N, y la enciclopedia multimedia 6icroso(t $ncarta,producto y serviciocancelado por la empresa a primeros de K00>KJde'ido a la competencia de la li're

  • 5/24/2018 Un ncleo

    14/14

    $l sot"are propietarioo sot"are privativose re(iere a cual&uierpro%ramain(ormticoen el &ue los usuarios tienen limitadas las posi'ilidades de usarlo,modi(icarlo o redistri'uirlo /con o sin modi(icaciones1, o cuyo c*di%o (uenteno estdisponi'le o el acceso a 9ste se encuentra restrin%ido .

    ara la undaci*n para el "o(t=are Li're/"1 este concepto se aplica a cual&uierso(t=are&ue no es li'reo &ue s*lo lo es parcialmente /semili're1, sea por&ue su uso,redistri'uci*n o modi(icaci*n est pro-i'ida, o re&uiere permiso expreso del titular delso(t=are.

    $n el so(t=are no li're unapersona (sicaojurdica/compaa, corporaci*n, (undaci*n,etc.1 posee los derec-os de autorso're un so(t=arene%ando o no otor%ando, al mismotiempo, los derec-os de usar el pro%rama con cual&uier prop*sito de estudiar c*mo(unciona el pro%rama y adaptarlo a las propias necesidades /donde el acceso al c*di%o(uentees una condici*n previa1 de distri'uir copias o de mejorar el pro%rama y -acer

    p'licas las mejoras /para esto el acceso alc*di%o (uentees un re&uisito previo1.

    #e esta manera, un so(t=aresi%ue siendo no li're an si el c*di%o (uentees -ec-op'lico, cuando se mantiene la reserva de derec-os so're el uso, modi(icaci*n odistri'uci*n /por ejemplo, la versi*n comercial de ""+o el pro%rama de licenciass-ared sourcede 6icroso(t1.

    http://es.wikipedia.org/wiki/Programa_inform%C3%A1ticohttp://es.wikipedia.org/wiki/Programa_inform%C3%A1ticohttp://es.wikipedia.org/wiki/Programa_inform%C3%A1ticohttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/FSFhttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Software_librehttp://es.wikipedia.org/wiki/Software_semilibrehttp://es.wikipedia.org/wiki/Persona_f%C3%ADsicahttp://es.wikipedia.org/wiki/Persona_jur%C3%ADdicahttp://es.wikipedia.org/wiki/Derechos_de_autorhttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/SSHhttp://es.wikipedia.org/w/index.php?title=Shared_source&action=edit&redlink=1http://es.wikipedia.org/wiki/Microsofthttp://es.wikipedia.org/wiki/Programa_inform%C3%A1ticohttp://es.wikipedia.org/wiki/Programa_inform%C3%A1ticohttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/FSFhttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Software_librehttp://es.wikipedia.org/wiki/Software_semilibrehttp://es.wikipedia.org/wiki/Persona_f%C3%ADsicahttp://es.wikipedia.org/wiki/Persona_jur%C3%ADdicahttp://es.wikipedia.org/wiki/Derechos_de_autorhttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/C%C3%B3digo_fuentehttp://es.wikipedia.org/wiki/SSHhttp://es.wikipedia.org/w/index.php?title=Shared_source&action=edit&redlink=1http://es.wikipedia.org/wiki/Microsoft