Linux es un ncleo libre de sistema operativo (tambin suele referirse al
ncleo como kernel) basado en Unix. Es uno de los principales ejemplos de software libre y de cdi!o abierto. Linux est" licenciado bajo la #$L v% y est" desarrollado por colaboradores de todo el mundo. El desarrollo del d&a a d&a tiene lu!ar en la Linux 'ernel (ailin! List )rc*ive. El ncleo Linux fue concebido por el entonces estudiante de ciencias de la computacin finlands Linus +orvalds en ,--,. Linux consi!ui r"pidamente desarrolladores y usuarios .ue adoptaron cdi!os de otros proyectos de software libre para usarlo con el nuevo sistema operativo. El ncleo Linux *a recibido contribuciones de miles de pro!ramadores de todo el mundo. /ormalmente Linux se utili0a junto a un empa.uetado de software1 llamado distribucin #/U2Linux y servidores. Arquitectura. )ctualmente Linux es un ncleo monol&tico *&brido. Los controladores de dispositivos y las extensiones del ncleo normalmente se ejecutan en un espacio privile!iado conocido como anillo 3 (rin! 3)1 con acceso irrestricto al *ardware1 aun.ue al!unos se ejecutan en espacio de usuario. ) diferencia de los ncleos monol&ticos tradicionales1 los controladores de dispositivos y las extensiones al ncleo se pueden car!ar y descar!ar f"cilmente como mdulos1 mientras el sistema contina funcionando sin interrupciones. +ambin1 a diferencia de los ncleos monol&ticos tradicionales1 los controladores pueden ser prevolcados (detenidos moment"neamente por actividades m"s importantes) bajo ciertas condiciones. Esta *abilidad fue a!re!ada para !estionar correctamente interrupciones de *ardware1 y para mejorar el soporte de multiprocesamiento simtrico. El *ec*o de .ue Linux no fuera desarrollado si!uiendo el dise4o de un microncleo (dise4o .ue1 en a.uella poca1 era considerado el m"s apropiado para un ncleo por muc*os tericos inform"ticos) fue asunto de una famosa y acalorada discusin entre Linus +orvalds y )ndrew 5. +anenbaum. La ar.uitectura del sistema operativo L6/U7 se divide en tres niveles8 ,. El nivel de usuario1 donde se ejecutan todos los procesos de usuario1 sin capacidad para ejecutar las instrucciones m"s privile!iadas del procesador. %. El nivel del ncleo1 es el privile!iado del procesador donde pueden ejecutarse todas sus instrucciones sin restricciones. 9. El nivel del *ardware1 correspondiente al *ardware especifico conectado en el sistema. La comunicacin entre los procesos de usuario y el ncleo se reali0a a travs de la librer&a del sistema1 .ue !enera una interrupcin software (trap) cada ve0 .ue se reali0a una llamada al sistema para obtener un servicio del ncleo. :especto a la estructura interna del ncleo1 L6/U7 fue desarrollado sobre un sistema basado en un procesador bastante lento como el i9;<1 lo .ue impuso la utili0acin de una ar.uitectura monol&tica tradicional. Estructura bsica de las fuentes del ncleo. Los arc*ivos .ue contienen el cdi!o fuente del ncleo de L6/U7 se puede encontrar a partir del directorio 2 usr 2 src 2 L6/U7. Los directorios .ue los contienen son8 KERNEL: 5eccin central del ncleo1 con la codificacin de servicios como fork1 exit1 etc. $arte de este cdi!o es muy dependiente de la m".uina donde se est ejecutando. L6/U7= se ubica en directorios bajo el directorio arc*. NET: 6mplementacin de los protocolos m"s usuales en redes (+>$26$1 ):$)1 as& como el cdi!o para los sockets1 etc. FS: Este directorio contiene los arc*ivos del ?irtual @ile 5ystem 5witc* y los .ue cuel!an de el contienen el soporte para los diferentes sistemas de fic*eros soportados (ext%1 ms dos1 minix1 xiafs1 sysv y muc*os otros). El m"s usado en L6/U7 actualmente es el ext%. $or ltimo *ay .ue se4alar .ue este directorio es tambin *erencia de minix. AR!: 6mplementacin del cdi!o dependiente de la ma.uina. Aay directorios como alp*a (para el BE> )lp*a)1 i9;< (para el 6ntel ;39;<) y otros. "": >ontiene las fuentes para la administracin de la memoria. /o es un !estor de la memoria al estilo minix1 el directorio .ueda como una reminiscencia del sistema a partir del cual fue desarrollado. "#$%LES: >ontiene las fuentes para la car!a din"mica de mdulos en el sistema (permite modificar el ncleo en tiempo de ejecucin). &N&T: @unciones para el arran.ue e iniciacin del kernel a partir de ciertos par"metros .ue le son pasados. $R&'ERS: >ontiene subdirectorios para el manejo de los diferentes dispositivos conectados a la m".uina. Es en estos (block1 c*ar1 net1 sound) donde se ubican los diferentes device drivers. Este directorio es el m"s voluminoso de todos1 y se estima .ue va a ser el de mayor crecimiento a lo lar!o del desarrollo de L6 /U71 debido al enorme y creciente nmero de dispositivos existentes en el mercado. &(: @uentes para la intercomunicacin de los procesos. 6ncluye sem"foros1 colas de mensajes y memoria compartida. L&): 6mplementacin de al!unas de las funciones est"ndar del len!uaje de pro!ramacin > de las .ue se *ace !ran uso en la implementacin del kernel. &NL%$E: Birectorio donde se almacenan los arc*ivos de cabecera del kernel (*eader files). >uel!an de l al!unos directorios para las diferentes ar.uitecturas soportadas. $ara simplificar el acceso a la ar.uitectura adecuada existe un L6/' simblico llamado include 2 asm. Arc*i+o E,ecutable. Es tradicionalmente un1 o como se le conoce mayormente1 arc*ivo binario cuyo contenido se interpreta por el ordenador como un pro!rama. #eneralmente1 contiene instrucciones en cdi!o m".uina de un procesador en concreto1 pero tambin puede contener bytecode .ue re.uiera un intrprete para ejecutarlo. )dem"s suele contener llamadas a funciones espec&ficas de un sistema operativo (llamadas al sistema). Bependiendo del tipo de .ue se traten las instrucciones1 *ablaremos de ejecutables portables (se pueden ejecutar en varias plataformas) y no portables (destinado a una plataforma concreta). $or ejemplo1 un ejecutable Cava es portable ya .ue utili0a un bytecode no asociado a un procesador en concreto. 5in embar!o en un sentido m"s !eneral1 un pro!rama ejecutable no tiene por .u necesariamente contener cdi!o de m".uina1 sino .ue puede tener instrucciones a interpretar por otro pro!rama. Este tipo de ejecutables son conocidos con el nombre de scripts. Beterminar si un arc*ivo es ejecutable es sobre todo una cuestin de convencin. Unos sistemas operativos se basan en la extensin de arc*ivo (como la terminacin .exe) y otros lo *acen leyendo los metadatos (como los bits de permiso de ejecucin en Unix). Una de las caracter&sticas principales de los Dnix es .ue los arc*ivos (a diferencia de Eindows) no necesitan extensin para ser utili0ados. $or supuesto esto no .uiere decir .ue nin!n arc*ivo ten!a extensiones1 sino .ue la informacin de las extensiones es meramente informativa1 lo .ue realmente detecta el sistema es el contenido del arc*ivo (y por supuesto sus permisos). *iendo al caso puntual de los ejecutables1 estos no tienen extensin. F>mo podemos diferenciar entonces un ejecutable de un sencillo arc*ivo sin extensinG $ara .ue un arc*ivo se ejecute en Linux tiene .ue tener permiso de ejecucin1 y se supone .ue nada mas los arc*ivos ejecutables (o links a arc*ivos ejecutables) deber&an tener permisos de ejecucin (#eneralmente en la consola al poner HlsH los arc*ivos con permiso de ejecucin aparecen en ne!rita y destacados con al!n color como el verde). ("s all" de eso1 en todos los unix like las carpetas est"n muc*o mas or!ani0adas .ue en Eindows1 donde los pro!ramas y librer&as se desparraman por ac" y por all". #eneralmente la !ran mayor&a de los ejecutables los encontras en las si!uientes carpetas8 2bin 2sbin 2usr2bin 2usr2sbin $istribuciones de Linux. Una distribucin Linux (colo.uialmente llamada distro) es una distribucin de software basada en el ncleo Linux .ue incluye determinados pa.uetes de software para satisfacer las necesidades de un !rupo espec&fico de usuarios1 dando as& ori!en a ediciones domsticas1 empresariales y para servidores. $or lo !eneral est"n compuestas1 total o mayoritariamente1 de software libre1 aun.ue a menudo incorporan aplicaciones o controladores propietarios.Bistribuciones de linux principales en estos momentos8 Ubuntu Ipen5u5E @edora (andriva 5lackware Bebian #entoo $cLinuxI5 :eview de 5li+a0 #/U2Linux ,.3 :eview de $>LinuxI5 %33J :eview de Linux (int K.3 L Baryna :eview de Bamn 5mall Linux K.%.M :eview de Ubuntu Aardy Aeron ;.3K :eview de 'ubuntu Aardy Aeron ;.3K 7ubuntu 8 :eview de 7ubuntu Aardy Aeron ;.3K :eview de 'ubuntu 'BEK Aardy Aeron ;.3K Re-blica )oli+ariana de 'ene.uela "inisterio del (oder (o-ular (ara la Educaci/n %ni+ersitaria Fundaci/n "isi/n Sucre Aldea Ana "ar0a a1-os (NF: Siste1as e &nfor1tica Secci/n: 23245&S %.: Electi+a &'. Linux 2. Autores: T.S.% "anuel Rodr06ue. .&: 4783998: T.S.% Lei+; Artea6a .&: 4<9294<< San arlos de =ulia> ?unio de 2249. &ntroducci/n. /o *ay duda .ue Linux es uno de los sistemas operativos con m"s posibilidades1 y es el nico .ue se actuali0a d&a a d&a. Es un sistema operativo completo1 multitarea y multiusuario. Eso si!nifica .ue puede trabajar varios usuarios simult"neamente en l1 y .ue cada uno de ellos puede tener varios pro!ramas en ejecucin. Linux es un sistema operativo libre de caracter&sticas muy semejantes a U/67. Iri!inalmente fue desarrollado para $>1 aun.ue *oy en d&a Linux es capa0 de correr en distintas plataformas. +ambin es interesante convertir un ordenador personal en una estacin de desarrollo. Linux dispone de los si!uientes len!uajes de pro!ramacin !ratuitos8 #/U >1 #/U >NN1 #/U @ortran JJ1 )B)1 $ascal1 $erl1 (odula% y 91 +>L2+k1 5c*eme y 5mallO+alk27. +odos ellos vienen con extensas librer&as de cdi!o fuente. Es por esta ra0n .ue en el presente trabajo se describe de forma !eneral la definicin de Linux1 acompa4ado a la estructura del sistema operativo y sumado a esto1 la definicin de arc*ivo ejecutable junto a las distribuciones de Linux m"s usadas en el mundo. onclusi/n. Bada esta caracter&stica1 creemos .ue Linux tiene una !ran perspectiva de futuro. Esto no .ueda nicamente as&1 sino .ue adem"s1 est" produciendo una revolucin en la actual concepcin de mercado de software comercial1 creando nuevos tipos de licencias con los .ue los pro!ramas puedan ser comerciales1 pero incluyendo las fuentes1 con lo .ue se consi!ue obtener unas caracter&sticas parecidas a la del software libre. )dem"s !racias al sistema multitarea y multiproceso de Linux1 .ue ofrece una !ran potencia de c"lculo y velocidad de intercomunicacin1 este sistema es apto para !randes estaciones de trabajo y de servidores de red1 entre otros. >entr"ndonos m"s en el tema del trabajo1 nuestra opinin1 tanto terica como pr"ctica1 es .ue es un sistema muy estable1 apto y recomendable para cual.uier inform"tico1 no solo con la !ran cantidad de sistemas de fic*eros y protocolos de red .ue es capa0 de utili0ar1 sino .ue adem"s ofrece una !ran posibilidad de desarrollo1 !ran potencia en entorno !r"fico1 tanto desde el punto de vista de usuario como de pro!ramador1 y una interfa0 de red .ue permite la f"cil comunicacin entre sistemas U/671 o cual.uier otro sistema operativo actual.