Está en la página 1de 12

QU ES LINUX? Linux es, a simple vista, un Sistema Operativo.

Es una implementacin de libre distribucin UNIX para computadoras personales (P !, servidores, " estaciones de traba#o. $ue desarrollado para el i%&' " a(ora soporta los procesadores i)&', Pentium, Pentium Pro " Pentium II, as* como los clones +,- " "rix. .ambi/n soporta m01uinas basadas en SP+2 , -E +lp(a, Po3erP 4Po3er,ac, " ,ac4+mi5a ,otorola '&6x6. omo sistema operativo, Linux es mu" e7iciente " tiene un excelente dise8o. Es multitarea, multiusuario, multiplata7orma " multiprocesador9 en las plata7ormas Intel corre en modo prote5ido9 prote5e la memoria para 1ue un pro5rama no pueda (acer caer al resto del sistema9 car5a slo las partes de un pro5rama 1ue se usan9 comparte la memoria entre pro5ramas aumentando la velocidad " disminu"endo el uso de memoria9 usa un sistema de memoria virtual por p05inas9 utili:a toda la memoria libre para cac(e9 permite usar bibliotecas enla:adas tanto est0tica como din0micamente9 se distribu"e con cdi5o 7uente9 usa (asta ') consolas virtuales9 tiene un sistema de arc(ivos avan:ado pero puede usar los de los otros sistemas9 " soporta redes tanto en . P4IP como en otros protocolos.

HISTORIA DE LINUX. LINUX (ace su aparicin a principios de la d/cada de los noventa, era el a8o ;<<; " por a1uel entonces un estudiante de in7orm0tica de la Universidad de =elsin>i, llamado Linus .orvalds empe:, ?como una a7icin " sin poderse ima5inar a lo 1ue lle5ar*a este pro"ecto, a pro5ramar las primeras l*neas de cdi5o de este sistema operativo llamado LINUX.

Este comien:o estuvo inspirado en ,INIX, un pe1ue8o sistema Unix desarrollado por +nd" .anenbaum. Las primeras discusiones sobre Linux 7ueron en el 5rupo de noticias comp.os.minix, en estas discusiones se (ablaba sobre todo del desarrollo de un pe1ue8o sistema Unix para usuarios de ,inix 1ue 1uer*an mas.

Linus nunca anuncio la versin 6.6; de Linux (a5osto ;<<;!, esta versin no era ni si1uiera e#ecutable, solamente inclu*a los principios del n@cleo del sistema, estaba escrita en len5ua#e ensamblador " asum*a 1ue uno ten*a acceso a un sistema ,inix para su compilacin.

El A de octubre de ;<<;, Linus anuncio la primera versin BO7icialB de Linux, ?versin 6.6C. on esta versin Linus pudo e#ecutar Das( (ENU Dourne +5ain S(ell! " 5cc (El compilador ENU de ! pero no muc(o mas 7uncionaba. En este estado de desarrollo ni se pensaba en los t/rminos soporte, documentacin, distribucin .-espu/s de la versin 6.6%, Linus salto en la numeracin (asta la 6.;6, m0s " m0s pro5ramadores a lo lar5o " anc(o de internet empe:aron a traba#ar en el pro"ecto " despu/s de sucesivas revisiones, Linus incremento el n@mero de versin (asta la 6.<A (,ar:o ;<<C!. ,0s de un a8o despu/s (diciembre ;<<%! el n@cleo del sistema estaba en la versin 6.<< " la versin ;.6 no lle5o (asta el ;) de mar:o de ;<<). -esde entonces no se (a parado de desarrollar, la versin actual del n@cleo es la C.C " si5ue avan:ando d*a a d*a con la meta de per7eccionar " me#orar el sistema.

CARACTERISTICAS DE LINUX. +1u* tienen una lista bastante completa con las caracter*sticas de LINUX F$uenteG In7os(eet? omo. +utorG Iv0n asadoHG

,ultitareaG La palabra multitarea describe la (abilidad de e#ecutar varios pro5ramas al mismo tiempo. LINUX utili:a la llamada multitarea preventiva, la cual ase5ura 1ue todos los pro5ramas 1ue se est0n utili:ando en un momento dado ser0n e#ecutados, siendo el sistema operativo el encar5ado de ceder tiempo de microprocesador a cada pro5rama. ,ultiusuarioG ,uc(os usuarios usando la misma ma1uina al mismo tiempo. ,ultiplata7ormaG Las plata7ormas en las 1ue en un principio se puede utili:ar Linux son %&'?, )&'?. Pentium, Pentium Pro, Pentium II, +mi5a " +tari, tambi/n existen versiones para su utili:acin en otras plata7ormas, como +lp(a, +2,,,IPS, Po3erP " SP+2 . ,ultiprocesadorG Soporte para sistemas con m0s de un procesador est0 disponible para Intel " SP+2 . $unciona en modo prote5ido %&'. Proteccin de la memoria entre procesos, de manera 1ue uno de ellos no pueda col5ar el sistema. ar5a de e#ecutables por demandaG Linux slo lee del disco a1uellas partes de un pro5rama 1ue est0n siendo usadas actualmente. Pol*tica de copia en escritura para la comparticin de p05inas entre e#ecutablesG esto si5ni7ica 1ue varios procesos pueden usar la misma :ona de memoria para e#ecutarse. uando al5uno intenta escribir en esa memoria, la p05ina ()Ib de memoria! se copia a otro lu5ar. Esta pol*tica de copia en escritura tiene dos bene7iciosG aumenta la velocidad " reduce el uso de memoria. ,emoria virtual usando pa5inacin (sin intercambio de procesos completos! a discoG + una particin o un arc(ivo en el sistema de arc(ivos, o ambos, con la posibilidad de a8adir m0s 0reas de intercambio sobre la marc(a Un total de ;' :onas de intercambio de ;C&,b de tama8o m0ximo pueden ser usadas en un momento dado con un l*mite terico de CEb para intercambio. Este l*mite se puede aumentar 70cilmente con el cambio de unas cuantas l*neas en el cdi5o 7uente. La memoria se 5estiona como un recurso uni7icado para los pro5ramas de usuario " para el cac(/ de disco, de tal 7orma 1ue toda la memoria libre puede ser usada para cac(/ " /sta puede a su ve: ser reducida cuando se e#ecuten 5randes pro5ramas. Librer*as compartidas de car5a din0mica (-LLJs! " librer*as est0ticas. Se reali:an volcados de estado (core dumps! para posibilitar los an0lisis post?mortem, permitiendo el uso de depuradores sobre los pro5ramas no slo en e#ecucin sino tambi/n tras abortar /stos por cual1uier motivo. ompatible con POSIX, S"stem K " DS- a nivel 7uente.

Emulacin de iD SC, casi completamente compatible con S O, SK2% " SK2) a nivel binario. .odo el cdi5o 7uente est0 disponible, inclu"endo el n@cleo completo " todos los drivers, las (erramientas de desarrollo " todos los pro5ramas de usuario9 adem0s todo ello se puede distribuir libremente. =a" al5unos pro5ramas comerciales 1ue est0n siendo o7recidos para Linux actualmente sin cdi5o 7uente, pero todo lo 1ue (a sido 5ratuito si5ue siendo 5ratuito. ontrol de tareas POSIX. Pseudo?terminales (pt"Js!. Emulacin de %&L en el n@cleo, de tal 7orma 1ue los pro5ramas no ten5an 1ue (acer su propia emulacin matem0tica. ual1uier m01uina 1ue e#ecute Linux parecer0 dotada de coprocesador matem0tico. Por supuesto, si el ordenador "a tiene una $PU (unidad de coma 7lotante!, esta ser0 usada en lu5ar de la emulacin, pudiendo incluso compilar tu propio >ernel sin la emulacin matem0tica " conse5uir un pe1ue8o a(orro de memoria. Soporte para muc(os teclados nacionales o adaptados " es bastante 70cil a8adir nuevos din0micamente. onsolas virtuales m@ltiplesG varias sesiones de lo5in a trav/s de la consola entre las 1ue se puede cambiar con las combinaciones adecuadas de teclas (totalmente independiente del (ard3are de video!. Se crean din0micamente " puedes tener (asta '). Soporte para varios sistemas de arc(ivo comunes, inclu"endo minix?;, Xenix " todos los sistemas de arc(ivo t*picos de S"stem K, " tiene un avan:ado sistema de arc(ivos propio con una capacidad de (asta ) .b " nombres de arc(ivos de (asta CAA caracteres de lon5itud. +cceso transparente a particiones ,S?-OS (o a particiones OS4C $+.! mediante un sistema de arc(ivos especialG no es necesario nin5@n comando especial para usar la particin ,S?-OS, esta parece un sistema de arc(ivos normal de Unix (excepto por al5unas restricciones en los nombres de arc(ivo, permisos, " esas cosas!. Las particiones comprimidas de ,S?-OS ' no son accesibles en este momento, " no se espera 1ue lo sean en el 7uturo. El soporte para K$+. (MN., Mindo3s <A! (a sido a8adido al n@cleo de desarrollo " estar0 en la prxima versin estable. Un sistema de arc(ivos especial llamado U,S-OS 1ue permite 1ue Linux sea instalado en un sistema de arc(ivos -OS. Soporte en slo lectura de =P$S?C del OS4C C.; Sistema de arc(ivos de -?2O, 1ue lee todos los 7ormatos est0ndar de -?2O,.

. P4IP, inclu"endo 7tp, telnet, N$S, etc. +ppletal>. So7t3are cliente " servidor Net3are. Lan ,ana5er 4 Mindo3s Native (S,D!, so7t3are cliente " servidor. -iversos protocolos de red incluidos en el >ernelG . P, IPv), IPv', +X.CA, X.CA, IPX, --P, Netrom, etc.

$uenteG http://www.monografias.com/trabajos14/linux/linux.shtml

ARQUITECTURA DE LINUX. La ar1uitectura interna de Linux es comple#a pero se puede resumir las partes importantes de 7orma breve " 70cil de entender. PROCESOS. Linux se or5ani:a en procesos, 1ue son tareas independientes 1ue se e#ecutan de 7orma simult0nea mientras el sistema est0 en 7uncionamiento. Los procesos cuel5an unos de otros en una dependencia padre4(i#o. Inicialmente al arrancar el sistema slo existe un proceso, llamado init. Init lee los 7ic(eros de con7i5uracin de arran1ue presentes en el directorio 4etc. " va creando procesos (i#os. Estos a su ve: tendr0n sus propios (i#os 7ormando un 0rbol de descendientes. Los procesos en e#ecucin se encuentran alo#ados en la memoria r0pida 2+, del sistema. uando se (abla de e#ecutar o lan:ar o arrancar un proceso, nos estamos re7iriendo al proceso de leer un 7ic(ero almacenado en el disco duro 1ue contiene las instrucciones del pro5rama, colocando las mismas en la memoria 2+, " a continuacin empe:ando a e#ecutar las instrucciones del pro5rama "a en 2+,.

USUARIOS. Linux est0 dise8ado para ser utili:ado por varios usuarios simult0neamente. +un cuando el sistema slo va"a a ser utili:ado por un @nico usuario, como es el caso corriente (o" en d*a, en 5eneral internamente Linux utili:ar0 varios usuarios JrobotsJ para or5ani:ar me#or " de 7orma m0s se5ura el sistema. Linux siempre tiene un supe usuario llamado JrootJ (Jra*:J traducido!. En el si5uiente p0rra7o se explica el por 1u/ crea varios usuarios en ve: de uno @nico. ada uno de los procesos pertenece a un usuario " en 7uncin del usuario asociado, dic(o proceso tendr0 unos permisos u otros. Un proceso en e#ecucin puede cambiar su usuario asociado si tiene los permisos su7icientes para (acerlo. En 5eneral slo tendr0 permisos para cambiar de usuario cuando el usuario actual asociado al proceso sea JrootJ. El proceso inicial Init se e#ecuta con el usuario asociado JrootJ lo cual le con7iere permisos totales sobre la m01uina. En 5eneral cuando Init e#ecute sus procesos (i#os lo (ar0 asoci0ndolos a usuarios distintos cu"os permisos se redu:can a los esenciales para e#ecutar la tarea para la cual est0n dise8ado. Por. E#emplo, Init puede arrancar un proceso Jservidor de correoJ asociado al usuario JmailJ. Este usuario tendr0 los permisos #ustos " necesarios para poder enviar " recibir correos " almacenarlo en el directorio 4var4spool4mail. El proceso Jservicio de correoJ puede a su ve: arrancar procesos (i#os pero estos estar0n autom0ticamente asociados a su usuario JmailJ, nunca a JrootJ. Este simple sistema de permisos provee a Linux de un sistema de se5uridad mu" slido. El entorno 5r07ico est0ndar de Linux es un proceso m0s llamado X. uando se arrancan las X todos los pro5ramas 5r07icos (1ue son a su ve: procesos! col5ar0n de /l " se e#ecutar0n por normal 5eneral con los permisos del usuario 1ue se (a lo#eado con su nombre " pass3ord al inicio de la sesin. Las aplicaciones 1ue solemos mane#ar 7recuentemente como el nave5ador 3eb o el reproductor de video no son m0s 1ue procesos (i#o del proceso X. Si e#ecutamos por e#emplo un cliente de correo con un a5u#ero de se5uridad " descar5amos un correo con virus, dic(o virus Jen5a8ar0J al cliente de correo para 1ue lo e#ecute " entonces tendremos un nuevo proceso JvirusJ

col5ando del cliente de correo " asociado al usuario 1ue inici la sesin. Sin embar5o puesto 1ue este usuario no tiene permisos de administracin el virus no podr0 modi7icar 7ic(eros claves del sistema, solamente los 7ic(eros propios del usuario. +l reiniciar el ordenador el virus (abr0 desaparecido. Esto complica enormemente la creacin de virus para Linux. El entorno 5r07ico X es un proceso m0s, sin nin5@n privile5io sobre cual1uier otro. Esto si5ni7ica 1ue podemos prescindir del mismo si no nos (ace 7alta. En 5eneral, cuando Linux se utili:a como servidor de Internet es normal no iniciar el entorno 5r07ico "a 1ue consume muc(a memoria " puede ralenti:ar el sistema. Este (a (ec(o 1ue Linux se popularice " desplace a Mindo3s en el entorno pro7esional "a 1ue por e#emplo permite contratar servicios de (ospeda#e virtual a precios muc(o m0s reducidos 1ue sus e1uivalentes en Mindo3s. .ambi/n al no depender de un entorno 5r07ico, puede administrarse remotamente de 7orma muc(o m0s cmoda mediante l*neas de comandos, mientras 1ue Mindo3s re1uiere transmitir el entorno 5r07ico a trav/s de Internet (muc(o m0s lento, costoso e inse5uro!. FICHEROS. Los procesos acceden al (ard3are " a otros recursos como la conexin de red a internet o los datos almacenados en disco a trav/s de un sistema de 7ic(eros. .odas las entradas " salidas de datos desde4(acia procesos se reali:an a trav/s de 7ic(eros. Por e#emplo, para acceder a la tar#eta 5r07ica de v*deo lo (ar0 le"endo " escribiendo enG 4dev4video4card6 N O O O O PQQ +breviatura de device (dispositivo! ,ientras 1ue para acceder a un documento de texto almacenado en su disco duro lo (ar0 accediendo a una ruta similar (aG 4(ome4usuario;4documento;.od7 N O O O O PQQ -irectorio reservado para los 7ic(eros de los usuarios 7inales N O O PQQ Subdirectorio4carpeta usuario; (puede (aber muc(os usuarios! N PQQ -ocumento 1ue 1ueremos leer4editar. N O O PQQ Subdirectorio4carpeta video N PQQ .ar#eta 6 (podr*a (aber m0s de una tar#eta de video en el sistema!

En 5eneral un mismo proceso puede acceder simult0neamente a varios 7ic(eros " a su ve: un mismo 7ic(ero puede ser accedido simult0neamente por varios procesos como se v/ en el es1uema si5uienteG

+2DOL -E P2O ESOS Proceso Inicial (Init! O

$I =E2OS R -I2E .O2IOS 4bin4Init

SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

TQQ proc.=i#o; QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 4bin4proc.=i#o; O O O O O O ... TQQ proc.=i#o;.; QQQQQQQQQQUQQQQQQQQQQQQ 4bin4proc.=i#o;.; PQQ proc.=i#o;.C QQQQQQQQQQUQUQQQQQQQQQQ 4bin4proc.=i#o;.C TQQ proc.=i#oC.; QQQQQQQQQQUQUQUQUQQQQQQ 4bin4proc.=i#oC.; PQQ proc.=i#oC.C QQQQQQQQQQUQUQUQUQUQQQQ 4bin4proc.=i#oC.C PQQ proc.=i#o%.; QQQQQQQQQQUQUQUQUQUQUQUQ 4bin4proc.=i#o%.; PQQ proc.=i#o%.;.;UQUQUQUQUQUQUQ 4bin4proc.=i#o%.;.; O O O O O O O ... Q Q Q Q Q Q Q 4 QQQUQUQUQUQ 4dev4pts46 UQUQUQQQQUQ 4dev4pts4; UQUQUQUQUQUQUQ 4dev4pts4C UQQUQUQQUQUQ 4etc4pass3d UQUQQUQUQQUQ 4dev4snd4control 6 QQQQQQQ 4dev4null QUQQUQQQQ 4lib4i'&'4libc?C.;;.so ... En el es1uema anterior puede verse como por e#emplo todos los procesos (lado i:1uierdo! tienen acceso a J4J, la ra*: del sistema as* como a 4dev4null. ada proceso tiene acceso tambi/n a su ima5en en el disco duro desde donde se leen el mismo antes de volcarla a memoria 2+,. + continuacin se muestra un e#emplo real del 0rbol de procesos (asta lle5ar al proceso nave5ador $ire7oxG USU+2IO P2O ESO 2oot ... 2oot VW 4usr4sbin45dm?binar" VW 4etc4X;;4X VW 5nome?panel VW 4usr4bin47ire7ox usuario; usuario; usuario; 4sbin4init FAH

TQQ proc.=i#oC QQQQQQQQQQQQQQQQQQQUQUQUQQQQQQQQ 4bin4proc.=i#oC

TQQ proc.=i#o% QQQQQQQQQQQQQQQQQQQUQUQUQUQUQUQ Q 4bin4proc.=i#o%

TQQ proc.=i#o)

En el es1uema anterior se puede observar como el proceso inicial init lan:ar0 entre otros el proceso 5dm?binar" 1ue es el encar5ado de autenti7icarnos con nuestro usuario " pass3ord. + continuacin e#ecutar0 el entorno 5r07ico X. -entro de X se e#ecutar0n una serie de aplicaciones, p.e#, el relo# mostrando la (ora o el administrador de arc(ivos. En el es1uema anterior se muestra solamente la aplicacin 5nome?panel, una pe1ue8a barra colocada en el lateral del monitor " 1ue sirve para 1ue el usuario pueda indicarle al sistema 1u/ otras tareas (procesos! 1uiere e#ecutar a continuacin pulsando sobre un *cono 5r07ico asociado a la misma. En este caso se e#ecut el nave5ador 3eb 7ire7ox. omo puede observarse en el es1uema 7ire7ox se e#ecuta asociado al usuario; " por tanto con los permisos restrin5idos del mismo "a 1ue es (i#o de 5nome?panel 1ue a su ve: es (i#o de X " 1ue 7ue e#ecutado como usuario; por el 5estor de sesiones una ve: identi7icados correctamente con nuestro usuario " pass3ord. Si mientras nave5amos por internet un virus se colase en nuestro nave5ador entonces el es1uema anterior 1uedar*a comoG USU+2IO P2O ESO 2oot ... 2oot VW 4usr4sbin45dm?binar" VW 4etc4X;;4X VW 5nome?panel VW 4usr4bin47ire7ox VW 4(ome4usuario;4,iKirus$avorito usuario; usuario; usuario; usuario; 4sbin4init FAH

,iKirus$avorito estar*a mu" limitado " slo podr*a acceder a 7ic(eros del usuario;, es decir a1uellos situados dentro de la carpeta 4(ome4usuario;4. Puesto 1ue no tiene acceso a los 7ic(eros de arran1ue si reiniciamos la m01uina el virus morir0 "a 1ue JinitJ #am0s e#ecutar0 el 7ic(ero 4(ome4usuario;4,iKirus$avorito. Por otro lado puesto 1ue otras m01uinas slo permanecer0n in7ectadas mientras el virus est/ en 7uncionamiento la posibilidad de 1ue dic(a m01uina J:ombiJ nos ata1ue ser0 mu" reducida. Este sistema de se5uridad no trans7orma a Linux en un sistema invencible pero s* muc(o m0s complicado de in7ectar 1ue otros sistemas operativos. Por tanto (a" 1ue procurar mantener actuali:ado el sistema " (acer copias de se5uridad, aun cuando ten5amos la certe:a de 1ue las posibilidades de ata1ue son mu" in7eriores. on esta pe1ue8a introduccin "a podemos curiosear las tripas de nuestro sistema. Para ello podemos utili:ar los comandos de monitori:acin.

EL KERNEL. omentaba anteriormente 1ue el primer proceso en e#ecutarse el init. En realidad esto no (a sido m0s 1ue una mentira con 7ines peda55icos. El primer proceso en e#ecutarse es el Iernel. El >ernel (ace de 7rontera entre el so7t3are " el (ard3are. Para nuestra PU, el >ernel es un pro5rama de so7t3are como cual1uier otro (o casi como cual1uier otro! pero para el resto de procesos, init incluido, el >ernel se comporta como si 7uese (ard3are. uando un proceso 1uiere acceder al (ard3are no lo (ace directamente, sino 1ue se lo pide al >ernel. El >ernel (ace de interlocutor entre procesos " (ard3are. Si varios procesos 1uieren acceder al disco duro o a

Internet, el >ernel asi5nar0 un tiempo a cada uno de ellos, copiar0 los datos 1ue cada proceso 1uiere enviar " los enviar0 al disco duro o a la red. .ambi/n es el >ernel el encar5ado de distribuir el tiempo de PU asi5nado a cada proceso. Linux es un sistema multiproceso debido a 1ue, aun disponiendo de un @nico procesador, Linux es capa: de e#ecutar simult0neamente varias tareas (aciendo rotar el propietario de la PU cada 7raccin de se5undo. En realidad puede asi5nar el control de la PU a un nuevo proceso entre ;66 o ;666 veces por se5undo, dependiendo de la potencia de la PU. Para un ser (umano da la impresin de 1ue todas las tareas se est0n e#ecutando de 7orma simult0nea. Este sistema de asi5nacin de la PU es clave " est0 extremadamente estudiado " optimi:ado. P.e#, Linux es lo su7icientemente inteli5ente como para saber 1u/ procesos est0n a la espera de recibir un dato de internet ", mientras este dato no lle5ue, no le asi5nar0 el valioso tiempo de PU. -esde (ace unos a8os a esta parte, los procesadores (an desarrollado sistemas de a(orro de ener5*a permitiendo disminuir la 7recuencia, potencia o ciclo de traba#o de la PU cuando no (a" tareas 1ue (acer. Linux est0 al tanto de este (ec(o " si observa 1ue no (a" aplicaciones demandando la PU autom0ticamente le indica al procesador 1ue disminu"a el consumo de ener5*a. Si antes nombr0bamos 1ue los procesos est0n asociados a usuarios " 5estionan 7ic(eros, en realidad estos usuarios " 7ic(eros son 5estionados por el >ernel. uando un proceso 1uiere acceder a un 7ic(ero, en realidad le pide al >ernel 1ue acceda al 7ic(ero " ser0 el >ernel 1uien le devuelva los datos 1ue (a"a le*do. +ntes de ello el >ernel comprueba el usuario " 5rupo asociado al proceso, comprueba a su ve: los usuarios o 5rupos 1ue pueden acceder a dic(o 7ic(ero. Si no concuerdan, en ve: de devolver el dato, devolver0 un error o excepcin al proceso llamante indic0ndole el Bpor1ueB. Otra labor del >ernel es abstraer a los procesos del (ard3are real de la m01uina. Un proceso Jvisor de 7otosJ 1ue 1uiera acceder al 7ic(ero 4(ome4usuario;4$O.OS4vaciones66;.pn5 no tiene 1ue preocuparse si dic(o 7ic(ero est0 en un disco duro, una memoria SS- o debe ser accedido a trav/s de la red local "a 1ue se encuentra en otro ordenador. El >ernel mediante un sistema llamado Bmonta#eB mapea rutas l5icas de directorios, p.e#, 4(ome4usuario; con un dispositivo 7*sico, p.e#, el disco duro local o un disco duro en Internet a ;666 >ms. de distancia. El proceso Jvisor de 7otosJ no se tiene 1ue preocupar de dnde est0 7*sicamente el 7ic(ero, solamente de su ruta simblica 4(ome4usuario;4$O.OS4vacaciones666;.pn5. La memoria 2+, de un sistema es limitada, " de nuevo el >ernel se encar5a de asi5nar memoria a los procesos. +dem0s, de nuevo, es lo su7icientemente inteli5ente como para saber 1u/ procesos llevan muc(o tiempo sin e#ecutarse (por e#emplo un servidor de correo 1ue lleva ;6 minutos sin enviar ni recibir correos! " si la memoria 2+, escasea, es capa: de mover el proceso de 2+, al disco duro " asi5nar la memoria 2+, a procesos 1ue en un instante dado puedan (acer me#or uso de la misma. La palabra Linux, estrictamente (ablando, en realidad se re7iere solamente al >ernel. Los procesos normales en realidad no son Linux, son procesos desarrollados por di7erentes 5rupos de traba#o (7undacin ENU, ,o:illa, empresas,...!. Sin embar5o es costumbre resumir, por abuso del len5ua#e, como Linux a todo " cuanto se e#ecuta ba#o el >ernel (al5o 1ue en realidad siempre (a molestado a otros 5rupos de desarrollo 1ue se ven in#ustamente i5norados por este (ec(o!. $uenteG http://es.wikibooks.org/wiki/Introducci%C3%B3n_a_Linux/Arquitectura

PRINCIPIOS DEL DISEO DE LINUX.

$uenteG http://www.adminso.es/index.php/

.!."._#ise%C3%B!o_de_Linux

PARADIGMAS DE LINUX Linux es un sistema operativo 1ue sur5e como una alternativa otros sistemas 1ue restrin5*an 7uncionalidades o cerraban las posibilidades de crecimiento, "a sea por la imposibilidad de reali:ar la tarea solicitada o por los aletar5ados ciclos de respuesta del proveedor. Es por ello 1ue los sistemas basados en ENU4Linux (acen (incapi/ en la 7lexibilidad, balanceando alta disponibilidad " escalabilidad, obteniendo el me#or rendimiento, 5ran cantidad de aplicaciones con m*nimos re1uerimientos de (ard3are " ba#o costo 7inal.

Estamos 7rente a un concepto 1ue es importante comprender, el paradi5ma del alto costo de licencia, las restricciones al usuario, las 7ormas tradicionales de desarrollo " distribucin est0n cambiando radicalmente, cre0ndose el paradi5ma de la libertad en el uso de so7t3are, centrado en el usuario. Libertad con un sistema operativo robusto, estable " en constante evolucin. En sus inicios ENU4Linux era usado casi exclusivamente en el 0mbito acad/mico, con el paso del tiempo, " a medida 1ue se 7ue populari:ando Internet, se di7undi a otros medios. Or5ani:aciones cient*7icas, or5anismos 5ubernamentales, empresas " usuarios 7inales comen:aron a utili:ar ENU4Linux como (erramienta diaria de traba#o.

Si anali:amos los inconvenientes m0s 7recuentes 1ue atraviesa el par1ue in7orm0tico actual, podemos destacarG

Kirus, debido a la popularidad creciente de Internet " el uso cada ve: m0s 7recuente del correo electrnico " la mensa#er*a instant0nea suele ser com@n encontrarse con cdi5o malicioso. En otros casos las 7allas son provocadas por desconocimiento o intencionalmente, en muc(os de los casos esto se debe a la di7icultad en la administracin de permisos " al ba#o nivel de se5uridad de las implementaciones m0s di7undidas. El ambiente a5resivo en el 1ue se encuentran las computadoras, expuestas a 5randes cantidades de usuarios, polvo, 5olpes, etc. Por @ltimo " para concluir esta contextuali:acin nos resta a5re5ar un @ltimo dato mu" importante, la 5ran ma"or*a no posee las licencias del so7t3are instalado, es decir no (an pa5ado los casi '66 dlares (por e1uipo! 1ue cuestan las licencias de ,S Mindo3sXO77ice, "a sea por el costo o por 1ue no se dispone de la potencia necesaria para correr la @ltima aplicacin del mercado. +ctualmente ,icroso7t est0 aumentando los re1uerimientos m*nimos de (ard3are para sus productos, de#ando de dar soporte a sus aplicaciones " reali:ando 7uerte presin sobre el estado para 1ue aumente los controles sobre las licencias del so7t3are instalado.

,illones de usuarios, un crecimiento ininterrumpido " el reconocimiento de su calidad, (acen de ENU4Linux en la actualidad el sistema dominante en servidores corporativos de 5randes, pe1ue8as " medianas empresas, sin de#ar atr0s su avance sobre las estaciones de traba#o con entornos 5r07icos sumamente traba#ados, estabilidad, rapide: " con in7inidad de aplicaciones libres. ENU4Linux es un descendiente de los UNIX, reconocidos desde (ace m0s de ) d/cadas por su desempe8o " estabilidad.

$uenteG (ttpG44333.niux.com.ar4debian45nu?linux4

LLAMADAS DEL SISTEMA DE LINUX ENU4Linux es un Sistema Operativo multitarea en el 1ue van a convivir un 5ran n@mero de procesos. Es posible, bien por un 7allo de pro5ramacin o bien por un intento malicioso, 1ue al5uno

de esos procesos (a5a cosas 1ue atenten contra la estabilidad de todo el sistema. Por ello, con vistas a prote5er esa estabilidad, el n@cleo o >ernel del sistema 7unciona en un entorno totalmente di7erente al resto de pro5ramas. Se de7inen entonces dos modos de e#ecucin totalmente separadosG el modo >ernel " el modo usuario. ada uno de estos modos de e#ecucin dispone de memoria " procedimientos di7erentes, por lo 1ue un pro5rama de usuario no podr0 ser capa: de da8ar al n@cleo. Las s"scalls o llamadas al sistema son el mecanismo por el cual los procesos " aplicaciones de usuario acceden a los servicios del n@cleo. Son la inter7a: 1ue proporciona el n@cleo para reali:ar desde el modo usuario las cosas 1ue son propias del modo >ernel (como acceder a disco o utili:ar una tar#eta de sonido!. La si5uiente 7i5ura explica de 7orma 5r07ica cmo 7unciona la s"scall read (!. ? See more atG Mecanismo de peticin de servicios al kernel

El modo usuario necesita acceder al disco para leer, para ello utili:a la s"scall read (! utili:ando la inter7a: de llamadas al sistema. El n@cleo atiende la peticin accediendo al (ard3are " devolviendo el resultado al proceso 1ue inici la peticin. Pr0cticamente todas las 7unciones 1ue utilicemos desde el espacio de e#ecucin de usuario necesitar0n solicitar una peticin al >ernel mediante una s"scall, esto es, la e#ecucin de las aplicaciones de usuario se canali:a a trav/s del sistema de peticiones al sistema. Este (ec(o es importante a la (ora de 7i#ar controles " re5istros en el sistema, "a 1ue si utili:amos nuestras propias versiones de las s"scalls para ello, estaremos abarcando todas las aplicaciones " procesos del espacio de e#ecucin de usuario. -eberemos ser cautelosos tambi/n a la (ora de car5ar drivers o mdulos en nuestro n@cleo.

Para (acer uso de las llamadas al sistema desde el len5ua#e de pro5ramacin , los sistemas operativos 1ue traba#an con el n@cleo Linux ponen a disposicin del usuario varias 7unciones o

procedimientos de librer*a 1ue representan a las llamadas del sistema. Los prototipos relativos a estas 7unciones o procedimientos pueden encontrarse listados en el arc(ivo de cabecera unistd.( (este se encuentra en el directorio 4usr4include4asm4, a1u* tambi/n pueden encontrarse los arc(ivos unistdW%C.( " unistdW').(, arc(ivos relativos a las ar1uitecturas de %C " ') bits respectivamente!.

El sistema operativo de n@cleo Linux cuenta con aproximadamente C66 7unciones relacionadas con cada llamada al sistema, al5unos de los cuales pueden a5ruparse en ciertas cate5or*as 1ue permiten el mane#o o control deG procesos, se8ales, arc(ivos, tiempo, etc.

Los conceptos explicados anteriormente pueden resumirse con el si5uiente es1uemaG

$uenteG http://s$stope.b%ogspot.mx/"&!"/&'/%%amadas(a%(sistema(en(%inux.htm%

También podría gustarte