Usuario
Sistema Operativo
Hardware
Estimacin del uso de sistemas operativos, segn una muestra de
computadoras con acceso a Internet en noviembre de 2009.[1]
1
2 1 PERSPECTIVA HISTRICA
(muchos usuarios al mismo tiempo) por un sistema mo- lotes mediante lo que se conoce como procesamiento por
nousuario (nicamente un usuario al mismo tiempo) ms lotes (batch) sin automatizar.
sencillo de gestionar.[5] Vase AmigaOS, beOS o Mac OS
como los pioneros[6] de dicha modernizacin, cuando los
Amiga fueron bautizados con el sobrenombre de Video 1.2 Monitores residentes
Toasters[7] por su capacidad para la Edicin de vdeo en
entorno multitarea round robin, con gestin de miles de
colores e interfaces intuitivos para diseo en 3D.
En ciertos textos, el sistema operativo es llamado indis-
tintamente como ncleo o kernel, pero debe tenerse en
cuenta que la diferencia entre kernel y sistema operativo
solo es aplicable si el ncleo es monoltico, lo cual fue
muy comn entre los primeros sistemas. En caso contra-
rio, es incorrecto llamar al sistema operativo ncleo.
Uno de los propsitos del sistema operativo que gestiona
el ncleo intermediario consiste en gestionar los recur-
sos de localizacin y proteccin de acceso del hardware,
hecho que alivia a los programadores de aplicaciones de
tener que tratar con estos detalles. La mayora de aparatos
electrnicos que utilizan microprocesadores para funcio-
nar, llevan incorporado un sistema operativo (telfonos Fichas en lenguaje de procesamiento por lotes, con programa y
mviles, reproductores de DVD, computadoras, radios, datos, para ejecucin secuencial.
enrutadores, etc.). En cuyo caso, son manejados median-
te una interfaz grca de usuario, un gestor de ventanas Segn fue avanzando la complejidad de los programas,
o un entorno de escritorio, si es un celular, mediante una fue necesario implementar soluciones que automatizaran
consola o control remoto si es un DVD y, mediante una la organizacin de tareas sin necesidad de un operador.
lnea de comandos o navegador web si es un enrutador. Debido a ello se crearon los monitores residentes: progra-
mas que residan en memoria y que gestionaban la ejecu-
cin de una cola de trabajos.
1 Perspectiva histrica Un monitor residente estaba compuesto por un cargador,
un Intrprete de comandos y un controlador (drivers) para
Los primeros sistemas (1945-1954) eran grandes mqui- el manejo de entrada/salida.
nas operadas desde la consola maestra por los programa-
dores. Durante la dcada siguiente (1955-1965) se lleva-
ron a cabo avances en el hardware: lectoras de tarjetas, 1.3 Sistemas con almacenamiento tempo-
impresoras, cintas magnticas, etc. Esto a su vez provoc ral de E/S
un avance en el software: compiladores, ensambladores,
cargadores, manejadores de dispositivos, etc. Los avances en el hardware crearon el soporte de
A nales de los aos 1980, una computadora Commodore interrupciones y posteriormente se llev a cabo un inten-
Amiga equipada con una aceleradora Video Toaster era to de solucin ms avanzado: solapar la E/S de un trabajo
capaz de producir efectos comparados a sistemas dedi- con sus propios clculos, por lo que se cre el sistema de
cados que costaban el triple. Un Video Toaster junto a bfers con el siguiente funcionamiento:
Lightwave ayud a producir muchos programas de tele-
visin y pelculas, entre las que se incluyen Babylon 5, Un programa escribe su salida en un rea de memo-
SeaQuest DSV y Terminator 2.[8] ria (bfer 1).
El problema principal de los primeros sistemas era su ba- La salida desde el buer 1 termina y el nuevo clculo
ja utilizacin, la primera solucin fue poner un operador tambin.
profesional que lo manejase, con lo que se eliminaron las
Se inicia la salida desde el buer 2 y otro nuevo
hojas de reserva, se ahorr tiempo y se aument la velo-
clculo dirige su salida al buer 1.
cidad.
Para ello, los trabajos se agrupaban de forma manual en El proceso se puede repetir de nuevo.
1.7 Modos de ejecucin en un CPU 3
Los problemas surgen si hay muchas ms operaciones de Las llamadas correspondientes deben tener el mismo
clculo que de E/S (limitado por la CPU) o si por el con- formato.
trario hay muchas ms operaciones de E/S que clculo
(limitado por la E/S). Cada llamada al nuevo SO tiene que dar los mismos
resultados que la correspondiente del anterior.
1.4 Spoolers
1.7 Modos de ejecucin en un CPU
Hace aparicin el disco magntico con lo que surgen nue-
vas soluciones a los problemas de rendimiento. Se elimi- Las aplicaciones no deben poder usar todas las instruccio-
nan las cintas magnticas para el volcado previo de los nes de la CPU. No obstante el Sistema Operativo, tiene
datos de dispositivos lentos y se sustituyen por discos (un que poder utilizar todo el conjunto de instrucciones del
disco puede simular varias cintas). Debido al solapamien- CPU. Por ello, una CPU debe tener (al menos) dos mo-
to del clculo de un trabajo con la E/S de otro trabajo se dos de operacin diferentes:
crean tablas en el disco para diferentes tareas, lo que se
conoce como Spool (Simultaneous Peripherial Operation Modo usuario: el CPU podr ejecutar slo las ins-
On-Line). trucciones del juego restringido de las aplicaciones.
Cuando desempea esas tareas, el monitor residente se Las llamadas al sistema no siempre tienen una expresin
transforma en un sistema operativo multiprogramado. sencilla en los lenguajes de alto nivel, por ello se crean las
bibliotecas de interfaz, que son bibliotecas de funciones
que pueden usarse para efectuar llamadas al sistema. Las
1.6 Llamadas al sistema operativo hay para distintos lenguajes de programacin.
La aplicacin llama a una funcin de la biblioteca de in-
Denicin breve: llamadas que ejecutan los programas
terfaz (mediante una llamada normal) y esa funcin es la
de aplicacin para pedir algn servicio al SO.
que realmente hace la llamada al sistema.
Cada SO implementa un conjunto propio de llamadas al
sistema. Ese conjunto de llamadas es la interfaz del SO
frente a las aplicaciones. Constituyen el lenguaje que de- 1.10 Interrupciones y excepciones
ben usar las aplicaciones para comunicarse con el SO. Por
ello si cambiamos de SO, y abrimos un programa disea- El SO ocupa una posicin intermedia entre los progra-
do para trabajar sobre el anterior, en general el programa mas de aplicacin y el hardware. No se limita a utilizar
no funcionar, a no ser que el nuevo SO tenga la misma el hardware a peticin de las aplicaciones ya que hay si-
interfaz. Para ello: tuaciones en las que es el hardware el que necesita que
4 1 PERSPECTIVA HISTRICA
se ejecute cdigo del SO. En tales situaciones el hardwa- Cuando se introduce un carcter, se codica en el registro
re debe poder llamar al sistema, pudiendo deberse estas de datos del dispositivo y adems se activa un bit del re-
llamadas a dos condiciones: gistro de estado quien crea una interrupcin en el hardwa-
re. El procesador deja temporalmente la tarea que estaba
Algn dispositivo de E/S necesita atencin. completando y ejecuta la rutina de atencin a la interrup-
cin correspondiente. El teclado almacena el carcter en
Se ha producido una situacin de error al intentar el vector de memoria intermedia (tambin llamado buf-
ejecutar una instruccin del programa (normalmente fer) asociada al teclado y despierta el proceso que haba
de la aplicacin). en el estado de espera de la operacin de entrada/salida.
El mecanismo de tratamiento de las interrupciones per- El mecanismo de tratamiento de las excepciones es esen-
mite al SO utilizar la CPU en servicio de una aplicacin, cial para impedir, junto a los modos de ejecucin de la
mientras otra permanece a la espera de que concluya una
CPU y los mecanismos de proteccin de la memoria, que
operacin en un dispositivo de E/S. las aplicaciones realicen operaciones que no les estn per-
El hardware se encarga de avisar al SO cuando el dis- mitidas. En cualquier caso, el tratamiento especco de
positivo de E/S ha terminado y el SO puede intervenir una excepcin lo realiza el SO.
entonces, si es conveniente, para hacer que el programa Como en el caso de las interrupciones, el hardware se li-
que estaba esperando por el dispositivo, se contine eje- mita a dejar el control al SO, y ste es el que trata la si-
cutando. tuacin como convenga.
En ciertos intervalos de tiempo puede convenir no aceptarEs bastante frecuente que el tratamiento de una excepcin
seales de interrupcin. Por ello las interrupciones pue-no retorne al programa que se estaba ejecutando cuando
den inhibirse por programa (aunque esto ellas no deben se produjo la excepcin, sino que el SO aborte la ejecu-
poder hacerlo). cin de ese programa. Este factor depende de la pericia
Un ejemplo de sincronismo por interrupcin es el almace- del programador para controlar la excepcin adecuada-
namiento de caracteres introducidos mediante el teclado. mente.
2.3 Gestin del almacenamiento secundario 5
La memoria es una gran tabla de palabras o bytes que se Existen diferentes sistemas de archivos, es decir, existen
referencia cada una mediante una direccin nica. Este diferentes formas de organizar la informacin que se al-
almacn de datos de rpido acceso es compartido por la macena en las memorias (normalmente discos) de los or-
CPU y los dispositivos de E/S, es voltil y pierde su con- denadores. Por ejemplo, existen los sistemas de archivos
tenido ante fallos del sistema. El SO es el responsable de: FAT, FAT32, ext3, NTFS, XFS, etc.
Conocer qu partes de la memoria estn siendo uti-Desde el punto de vista del usuario estas diferencias pue-
lizadas y por quin. den parecer insignicantes a primera vista, sin embargo,
existen diferencias muy importantes. Por ejemplo, los sis-
Decidir qu procesos se cargarn en memoria cuan- temas de cheros FAT32 y NTFS, que se utilizan funda-
do haya espacio disponible. mentalmente en sistemas operativos de Microsoft, tienen
6 4 EJEMPLOS DE SISTEMAS OPERATIVOS PARA PC
una gran diferencia para un usuario que utilice una ba- 3 Clasicacin
se de datos con bastante informacin ya que el tamao
mximo de un chero con un sistema de archivos FAT32
3.1 Administracin de tareas
est limitado a 4 gigabytes, sin embargo, en un sistema
NTFS el tamao es considerablemente mayor. Monotarea: Solamente permite ejecutar un proceso
(aparte de los procesos del propio SO) en un mo-
2.6 Sistemas de proteccin mento dado. Una vez que empieza a ejecutar un pro-
ceso, continuar hacindolo hasta su nalizacin y/o
Mecanismo que controla el acceso de los programas o los interrupcin.
usuarios a los recursos del sistema. El SO se encarga de: Multitarea: Es capaz de ejecutar varios procesos al
mismo tiempo. Este tipo de SO normalmente asig-
Distinguir entre uso autorizado y no autorizado. na los recursos disponibles (CPU, memoria, perif-
Especicar los controles de seguridad a realizar. ricos) de forma alternada a los procesos que los so-
licitan, de manera que el usuario percibe que todos
Forzar el uso de estos mecanismos de proteccin. funcionan a la vez, de forma concurrente.
Windows
Como gestor de recursos, el sistema operativo administra:
GNU/Linux
La unidad central de procesamiento (donde est alo-
jado el microprocesador). Unix
HP-UX
Exirion OS 7 Referencias
ReactOS
[1] W3counter
BeOS
[2] Cfr., entre otros: Tanenbaum, A. (1992) Modern Opera-
Tuquito ting Systems, Englewood Clis: Prentice-Hall; Haldar, S.
y Aravind, A. A. (2010) Operating Systems, Pearson Edu-
Red Hat Enterprise Linux for Desktops or cation India, pp. 12 y ss.; Turner, R. W. (1986) Operating
Workstations[9] Systems: design and implementation, MacMillan.
Suse Desktop[10] [3] Its important to realize that these programs are not part
of the operating system (...). The operating system is the
Open Suse [11]
portion of the software that runs in kernel mode (...). A
trend in modern operating systems is to take this idea of
moving code up into higher layers even further and remo-
5 Ejemplos de sistemas operativos ve as much as possible from the operating system, leaving
a minimal kernel (Rerindose a un sistema microncleo
para dispositivos mviles basado en el modelo cliente-servidor. El autor indica repe-
tidamente que es razonable argumentar que las funciones
Android que pasan a ejecutarse en espacio de usuario siguen siendo
parte del sistema operativo). Operating Systems Design &
iOS Implementation, Tanenbaum y Woodhull.
Windows 10 Mobile [6] toastytech.com, ed. (2010). BeOS 5.0 Personal Edition
(en ingls). Consultado el 10 de febrero de 2010.
Symbian OS
[7] Amiga Video Toaster (en ingls). NewTek, Inc. 2010.
HP webOS Consultado el 1 de febrero de 2010.
8 Bibliografa
Obrien, James A. (2006). Sistemas de Informacin
Gerencial. Mxico DF.
9 Enlaces externos
10.2 Imgenes
Archivo:Batchjobb_Norwegian.png Fuente: https://upload.wikimedia.org/wikipedia/commons/1/14/Batchjobb_Norwegian.png Licen-
cia: Public domain Colaboradores: Trabajo propio Artista original: Harald Hansen
Archivo:Commons-emblem-question_book_yellow.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/d/dd/
Commons-emblem-question_book_yellow.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-query.svg' class='image'><img alt='Commons-emblem-query.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/c/c5/Commons-emblem-query.svg/25px-Commons-emblem-query.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commons-emblem-query.svg/38px-Commons-emblem-query.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commons-emblem-query.svg/50px-Commons-emblem-query.svg.png
2x' data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg'
class='image'><img alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.
svg/25px-Question_book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/
Question_book.svg/38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.
svg/50px-Question_book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Linfocito
B
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
10 10 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Este artculo presenta una lnea del tiempo de los Sistemas CP/M
Operativos desde 1960 a 2015. TOPS-20
1978
1 1960s Apple DOS 3.1 (Primer sistema operativo Ap-
ple)
1960
TripOS
1961 VMS
Lisp Machine (CADR)
CTSS
1979
1962
POS
EXEC II
NLTSS
1964
EXEC 8
3 1980s
1965
OS/360 1980
1969 OS-9
QDOS
Unix
SOS
XDE (Tajo) (Xerox Development Environ-
2 1970s ment)
Xenix
1970
1981
BATCH-11 (PDP-11)
MS-DOS
1971
Acorn MOS
OS/8
1982
1972
Commodore DOS
MFT SunOS (1.0)
MVT Ultrix
RDOS
1983
SVS
VM/CMS Lisa OS
Coherent
1973
Novell NetWare
Alto OS
ProDOS
BS2000 1984
1
2 5 2000S
AmigaOS 1994
Atari TOS Linux RedHat
MIPS OS
1995
1986
Digital UNIX (aka Tru64 )
AIX OpenBSD
GS-OS OS/390
HP-UX Windows 95
1987 Plan 9 (Segunda versin)
Arthur 1996
IRIX (3.0 es la primera versin de SGI)
Windows NT 4.0
Minix
1997
OS/2 (1.0)
1988 Inferno
Mac OS 7.6 (El primer Mac OS llamado o-
A/UX (Apple Computer) cialmente as)
LynxOS SkyOS
MVS/ESA
1998
OS/400
Mandrake Linux (hoy Conocido como
1989
Mandriva Linux)
NeXTSTEP (1.0) Solaris 7 (El primer 64-bit de Solaris)
RISC OS Windows 98
SCO Unix (release 3) ReactOS 0.0.13
1999
4 1990s AROS
Mac OS 8
1990
ReactOS 0.0.14
Amiga OS 2.0
BeOS (v1)
OSF/1 (karla duran OX) 5 2000s
1991 2000
Linux
AtheOS
MS-DOS 5.0
Mac OS 9
1992 MorphOS
386BSD 0.1 Mac OS X Beta pblica
Amiga OS 3.0 Windows 2000
Solaris 2.0 (Sucesor de SunOS 4.x; basado en Windows Me
SVR4) ReactOS 0.0.16
1993 Plan 9 (Tercera versin)
3
2001 6 2010
Amiga OS 4.0 (Mayo 2001)
2010
Mac OS X 10.1
Windows XP Android 2.1
z/OS iOS 4 (la ltima actualizacin es el iOS 4.3.5)
ReactOS 0.0.18 Ubuntu 10.04
Syllable 2011
Mac OS X 10.2 Ubuntu 11.04
ReactOS 0.0.21 iOS 5
Plan 9 (Cuarta versin) Mac OS X Lion 10.7
gnulinex Ubuntu 11.10
2003 Mac OS X Snow Leopard v10.6
Windows Server 2003 2012
Mac OS X 10.3
Windows 8
ReactOS 0.1.5
iOS 6
knoppix
Android 4.1
2004 Ubuntu 12.04 LTS (Soporte largo de 5 aos)
Ubuntu Linux Ubuntu 12.10
ReactOS 0.2.4
2013
2005
Firefox OS
Mac OS X 10.4 iOS 7
ReactOS 0.2.9 Ubuntu 13.04 (Raring Ringtail)
2006 Ubuntu 13.10 (Saucy Salamander)
Windows Vista OS X Mavericks
ReactOS 0.3.0 2014
2007 iOS 8
Mac OS X v10.5 OS X Yosemite
ReactOS 0.3.2 (Versin nunca lanzada)
2015
iPhone OS 1.0
iOS 9
2008
OS X El Capitan
ReactOS 0.3.7 Windows 10
Windows Server 2008
2016
iPhone OS 2.0
Ubuntu 16.04 LTS Xenial Xerus
2009
Android Nougat Versin 7
JNode 0.2.8
Mac OS X v10.6
Windows 7
ReactOS 0.3.10
iPhone OS 3.0
Palm webOS
Android
4 7 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
7.2 Imgenes
Archivo:Spanish_Language_Wiki.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/2/2a/Spanish_Language_Wiki.svg
Licencia: CC BY-SA 3.0 Colaboradores: Derived from Wiki puzzle.svg by user:Kimbar Artista original: James.mcd.nz
Un sistema operativo es uno o varios programas que 2.2 Procesamiento por lotes
se usan para poder trabajar con los componentes de un
equipo de cmputo. Los sistemas operativos proveen un Como solucin para optimizar, en una misma cinta o con-
conjunto de funciones necesarias y usadas por diversos junto de tarjetas, se cargaban varios programas, de forma
programas de aplicaciones de una computadora, y los que se ejecutaran uno a continuacin de otro sin perder
vnculos necesarios para controlar y sincronizar el hard- apenas tiempo en la transicin.
ware de la misma. En las primeras computadoras, que no
tenan sistema operativo cada programa necesitaba la ms
detallada especicacin del hardware para ejecutarse co- 2.3 Almacenamiento temporal
rrectamente y desarrollar tareas estndares, y sus propios
drivers para los dispositivos perifricos como impresoras Su objetivo era disminuir el tiempo de carga de los pro-
y lectores de tarjetas perforadas. El incremento de la gramas, haciendo simultnea la carga del programa o la
complejidad del hardware y los programas de aplicacio- salida de datos con la ejecucin de la siguiente tarea. Para
nes eventualmente hicieron del sistema operativo una ne- ello se utilizaban dos tcnicas, el buering y el spooling.
cesidad.
Los primeros sistemas operativos fueron desarrollados
por cada usuario para el uso de su propia computadora 3 La dcada de 1960
central,[1] y es en 1956 que la General Motors desarrolla
lo que es hoy considerado el primer sistema, el GM-NAA En los aos 60 se produjeron cambios notorios en varios
I/O,[2] para su IBM 704.[3] campos de la informtica, con la aparicin del circuito in-
tegrado la mayora orientados a seguir incrementando el
potencial de los ordenadores. Para ello se utilizaban tc-
1 La dcada de 1940 nicas de lo ms diversas.
1
2 5 LA DCADA DE 1980
ma operativo lo detiene para que se ejecute otra aplica- 4.2 Inconvenientes de los Sistemas opera-
cin. tivos
el rendimiento y se busc ms que el sistema operativo ya caractersticas novedosas era una GUI (Graphic User
fuera amigable, surgiendo mens, e interfaces grcas. Interface), Multitareas y Mouse. Provoc diferentes reac-
Esto reduca la rapidez de las aplicaciones, pero se vol- ciones entre los usuarios acostumbrados a la lnea de co-
van ms prcticos y simples para los usuarios. En esta mandos y algunos tachando el uso del Mouse como ju-
poca, siguieron utilizndose lenguajes ya existentes, co- guete.
mo Smalltalk o C, y nacieron otros nuevos, de los cua-
les se podran destacar: C++ y Eiel dentro del paradig-
ma de la orientacin a objetos, y Haskell y Miranda en 5.4 AmigaOS
el campo de la programacin declarativa. Un avance im-
portante que se estableci a mediados de la dcada de AmigaOS es el nombre que recibe el conjunto de la fa-
1980 fue el desarrollo de redes de computadoras perso- milia de gestores de ventanas y ROMs que incluan por
nales que corran sistemas operativos en red y sistemas defecto los ordenadores personales Commodore Amiga
operativos distribuidos. En esta escena, dos sistemas ope- como sistema operativo. Fue desarrollado originalmente
rativos eran los mayoritarios: MS-DOS (Micro Soft Disk por Commodore International, e inicialmente presentado
Operating System), escrito por Microsoft para IBM PC en 1985 junto con el Amiga 1000.
y otras computadoras que utilizaban la CPU Intel 8088 y
sus sucesores, y UNIX, que dominaba en los ordenadores
5.5 OS/2
personales que hacan uso del Motorola 68000.
OS/2 es un sistema operativo de IBM que intent suce-
der a DOS como sistema operativo de las computadoras
5.1 SunOS
personales. Se desarroll inicialmente de manera conjun-
ta entre Microsoft e IBM, hasta que la primera decidi
SunOS fue la versin del sistema operativo derivado de
seguir su camino con su Windows e IBM se ocup en so-
Unix y BSD desarrollado por Sun Microsystems para sus
litario de OS/2.
estaciones de trabajo y servidores hasta el principio de los
aos 1990. sta estaba basada en los UNIX BSD con al- OS/2 ya no es comercializado por IBM, y el soporte es-
gunos aadidos de los System V UNIX en versiones pos- tndar de IBM para OS / 2 se suspendi el 31 de di-
teriores. ciembre de 2006. Se ha mantenido desde entonces con
relativamente pocas nuevas caractersticas bajo el nom-
SunOS 1.0 estaba basada bsicamente en BSD 4.1 y se
bre eComStation.
public en 1982. SunOS 2.0, que sali en 1985, usaba
BSD 4.2 como una base e introduca una capa de sistema
de cheros virtual (VFS) y el protocolo NFS. SunOS 3.0
coincida con el lanzamiento de la serie Sun-3 en 1986 6 La dcada de 1990
e incorporaba varias utilidades de System V. SunOS 4.0,
que sali en 1989, migr a la base de BSD 4.3, introdujo 6.1 BeOS
un nuevo sistema de memoria virtual, enlazamiento din-
mico y una implementacin de la arquitectura System V BeOS es un sistema operativo para PC desarrollado por
STREAMS I/O. Be Incorporated en 1990, orientado principalmente a
SunOS 5.0 y las versiones posteriores estn basadas en proveer alto rendimiento en aplicaciones multimedia. A
UNIX System V Release 4. pesar de la creencia comn fomentada por la inclusin de
la interfaz de comandos Bash en el sistema operativo, el
diseo de BeOS no estaba basado en UNIX.
5.2 MS-DOS Originalmente (1995-1996) el sistema operativo se corra
sobre su propio hardware, conocido como BeBox. Ms
En 1981 Microsoft compr un sistema operativo llamado tarde (1997) fue extendido a la plataforma PowerPC y
QDOS que, tras realizar unas pocas modicaciones, se nalmente (1998) se aadi compatibilidad con procesa-
convirti en la primera versin de MS-DOS (Micro Soft dores x86.
Disk Operating System). A partir de aqu se sucedieron
una serie de cambios hasta llegar a la versin 7.1, versin
8 en Windows Milenium, a partir de la cual MS-DOS dej 6.2 GNU/Linux
de existir como un componente del Sistema Operativo.
Este sistema al parecer es una versin mejorada de Unix,
basado en el estndar POSIX, un sistema que en prin-
5.3 Macintosh cipio trabajaba en modo comandos. Hoy en da dispone
de Ventanas, gracias a un servidor grco y a gestores de
El lanzamiento ocial del ordenador Macintosh en enero ventanas como KDE, GNOME entre muchos. Reciente-
de 1984, al precio de US $1,995 (despus cambiado a mente GNU/Linux dispone de un aplicativo que convier-
$2,495 dlares). Inclua su sistema operativo Mac OS cu- te las ventanas en un entorno 3D como por ejemplo Beryl
4 6 LA DCADA DE 1990
o Compiz. Lo que permite utilizar Linux de una forma nas utilidades bsicas. La versin 6.1[4] trajo importantes
visual atractiva. mejoras como mayor apoyo para dispositivos Bluetooth
Existen muchas distribuciones actuales de Gnu/Linux y controladores para tarjetas de sonido y red.
(Debian, Fedora, Ubuntu, Slackware, etc.) donde todas La versin 7.0, lanzada el 27 de febrero de 2008, incluye
ellas tienen en comn que ocupan el mismo ncleo Linux. compatibilidad con el sistema de archivos ZFS de Sun y
Dentro de las cualidades de Gnu/Linux se puede caracte- a la arquitectura ARM, entre otras novedades.
rizar el hecho de que la navegacin a travs de la web es
La distribucin ms notable es PC-BSD.
sin riegos de ser afectada por virus, esto debido al sistema
de permisos implementado, el cual no deja correr ningu-
na aplicacin sin los permisos necesarios, permisos que 6.6 Microsoft Windows
son otorgados por el usuario. A todo esto se suma que los
virus que vienen en dispositivos desmontables tampoco Windows es el nombre de una familia de sistemas ope-
afectan al sistema, debido al mismo sistema de permisos. rativos desarrollados y vendidos por Microsoft basado
en MS-DOS. Windows nunca fue realmente un Sistema
Operativo con verdadero entorno grco hasta Windows
6.3 Solaris 95. Hasta la versin 3.11 Windows fue un entorno de es-
critorio para MS-DOS.
Solaris es un sistema operativo de tipo Unix desarrollado
desde 1992 inicialmente por Sun Microsystems y actual- Windows 95 es un sistema operativo con interfaz gr-
mente por Oracle Corporation como sucesor de SunOS. ca de usuario hbrido de entre 16 y 32 bits. Fue lanzado
Es un sistema certicado ocialmente como versin de al mercado el 24 de agosto de 1995 por la empresa de
Unix. Funciona en arquitecturas SPARC y x86 para ser- software Microsoft con notable xito de ventas. Durante
vidores y estaciones de trabajo. su desarrollo se conoci como Windows 4 o por el nom-
bre clave Chicago. Esta serie de Windows termin con
Windows Me.
6.4 Microsoft Windows NT
9 Referencias
[1] A Brief History of Linux
10.2 Imgenes
Archivo:Commons-emblem-question_book_yellow.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/d/dd/
Commons-emblem-question_book_yellow.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-query.svg' class='image'><img alt='Commons-emblem-query.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/c/c5/Commons-emblem-query.svg/25px-Commons-emblem-query.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commons-emblem-query.svg/38px-Commons-emblem-query.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commons-emblem-query.svg/50px-Commons-emblem-query.svg.png
2x' data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg'
class='image'><img alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.
svg/25px-Question_book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/
Question_book.svg/38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.
svg/50px-Question_book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Linfocito
B
Un sistema operativo de red, tambin llamado N.O.S Coordina las funciones de red, incluso con las pro-
(del ingls, Network Operating System), es un software pias del equipo.
que permite la interconexin de ordenadores para poder
acceder a los servicios y recursos, hardware y software, Comparte recursos (lleva a cabo la coordinacin y
creando redes de computadoras. Al igual que un equipo los privilegios a la hora de compartir). Por tanto,
no puede trabajar sin un sistema operativo, una red de mejora notablemente la utilizacin de los recursos.
equipos no puede funcionar sin un sistema operativo de Permite monitorizar y gestionar la red y sus compo-
red. Consiste en un software que posibilita la comunica- nentes.
cin de un sistema informtico con otros equipos en el
mbito de una red.
3 Entorno de los sistemas operati-
1 Sistemas operativos de red insta- vos en red
lables/incorporados Componentes de los sistemas operativos de red habituales
son:
Dependiendo del fabricante del sistema operativo de red,
tenemos que el software de red para un equipo personal Servidores: Son equipos con sistemas operativos en
se puede aadir al propio sistema operativo del equipo o red que proporcionan recursos a los clientes, hacin-
venir integrado con l. dolos accesibles a los equipos de la red, sea a otros
MAthSL de Ferchi fue un ejemplo, de amplia difusin, servidores o, habitualmente, a clientes.
de sistema operativo de red donde el Software que le per- Clientes: Son equipos con un sistema operativo mo-
mita trabajar en red se deba instalar en el cliente sobre nopuesto conectados para empezar a trabajar en red.
el sistema operativo del equipo. El equipo personal nece- A diferencia de los servidores, no comparten sus re-
sitaba ambos sistema operativos para gestionar conjunta- cursos.
mente las funciones de red y las individuales.
Dominios: Es una agrupacin lgica de equipos, que
El software del sistema operativo de red se integra en
permite realizar una gestin centralizada, es decir,
un nmero importante de sistemas operativos, inclu-
desde una ubicacin se controla los servicios admi-
yendo: casi todas las distribuciones de Linux; los sis-
nistrativos del dominio. Los recursos los gestiona el
temas operativos de Microsoft y Apple para porttiles,
servidor principal. Uno de los protocolos habituales
servidores y equipos de sobremesa;, sistemas operativos
para la formacin de dominios es LDAP.
de dispositivos mviles, como Android, IOS, Windows
Phone, etc.
Dependiendo del sistema operativo, se puede dar el caso
que en un determinado dominio un equipo sea servidor
de ciertos recursos y cliente de otros.
2 Caractersticas
Las caractersticas genricas de un sistema operativo de 4 Vase tambin
red son:
Comparacin de sistemas operativos
Conecta todos los equipos y recursos de la red. Cronologa de los sistemas operativos
Gestin de usuarios centralizada. Arquitectura de computadores
1
2 5 ENLACES EXTERNOS
5 Enlaces externos
Historia de los sistemas operativos
6.2 Imgenes
Controladores de dispositivos
Programas utilitarios
Lnea de comandos
BIOS
Hipervisores
1
2 4 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
4.2 Imgenes
Aplicacin mvil
1
2 3 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
3.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
Archivo:OpenOffice.org_Writer.png Fuente: https://upload.wikimedia.org/wikipedia/commons/8/85/OpenOffice.org_Writer.png Li-
cencia: LGPL Colaboradores: http://hacktolive.org/images Artista original: http://hacktolive.org/
Archivo:Util.png Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/Util.png Licencia: CC-BY-SA-3.0 Colaboradores:
Transferido desde es.wikipedia a Commons. Artista original: The original uploader was Willy de Wikipedia en espaol
Virtual
file
IPC
manager
system
calls
o tareas que deba ser realizada en modo supervisor.
system Linux
process
scheduler Idealmente, esto reduce la dependencia entre el sistema
system
I/O Network
calls
operativo y la aplicacin, e incrementa su portabilidad.
interface interface
fu
nc
ca tion
lls
1
2 7 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
7.2 Imgenes
Archivo:Linux_kernel_System_Call_Interface_and_glibc.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/45/
Linux_kernel_System_Call_Interface_and_glibc.svg Licencia: CC BY-SA 3.0 Colaboradores: Trabajo propio Artista original: ScotXW
Este artculo se reere al proceso Esta denicin vara ligeramente en el caso de sistemas
informtico, para otros usos vase operativos multihilo, donde un proceso consta de uno o
Proceso. ms hilos, la memoria de trabajo (compartida por todos
los hilos) y la informacin de planicacin. Cada hilo
Un proceso puede informalmente entenderse como un consta de instrucciones y estado de ejecucin.
programa en ejecucin. Formalmente un proceso es Una Los procesos son creados y eliminados por el sistema
unidad de actividad que se caracteriza por la ejecucin operativo, as como tambin ste se debe hacer cargo
de una secuencia de instrucciones, un estado actual, y un de la comunicacin entre procesos, pero lo hace a peti-
conjunto de recursos del sistema asociados.[1] cin de otros procesos (interrupcin o tiempo de reloj).
Para entender lo que es un proceso y la diferencia entre El mecanismo por el cual un proceso crea otro proceso
un programa y un proceso, A. S. Tanenbaum propone la se denomina bifurcacin (fork). El proceso de arranque
analoga Un cientco computacional con mente culina- de GNU/Linux inicia con un slo proceso (init) y despus
ria hornea un pastel de cumpleaos para su hija; tiene la comienza a crear los hilos necesarios para tener el sistema
receta para un pastel de cumpleaos y una cocina bien listo para su uso. Los nuevos procesos pueden ser inde-
equipada con todos los ingredientes necesarios, harina, pendientes y no compartir el espacio de memoria con el
huevo, azcar, leche, etctera. Situando cada parte de la proceso que los ha creado o ser creados en el mismo es-
analoga se puede decir que la receta representa el progra- pacio de memoria.
ma (el algoritmo), el cientco computacional es el pro- En los sistemas operativos multihilo es posible crear tan-
cesador y los ingredientes son las entradas del programa. to hilos como procesos. La diferencia estriba en que un
El proceso es la actividad que consiste en que el cient- proceso solamente puede crear hilos para s mismo y en
co computacional vaya leyendo la receta, obteniendo los que dichos hilos comparten toda la memoria reservada
ingredientes y horneando el pastel. para el proceso.
Cada proceso tiene su contador de programa, registros Los procesos pueden ser cooperativos o independientes.
y variables, aislados de otros procesos, incluso siendo el Dos o ms procesos pueden cooperar mediante seales
mismo programa en ejecucin 2 veces. Cuando este l- de forma que uno obliga a detenerse a los otros hasta que
timo caso sucede, el sistema operativo usa la misma re- reciban una seal para continuar.
gin de memoria de cdigo, debido a que dicho cdigo
no cambiar, a menos que se ejecute una versin distinta
Se usa una variable de tipo semforo para sincroni-
del programa.
zar los procesos.
Los procesos son gestionados por el sistema operativo y
estn formados por: Si un proceso est esperando una seal, se suspende
hasta que la seal se enve.
Las instrucciones de un programa destinadas a ser
Se mantiene una cola de procesos en espera en el
ejecutadas por el microprocesador.
semforo.
Su estado de ejecucin en un momento dado, esto
es, los valores de los registros de la unidad central La forma de elegir los procesos de la cola en espera
de procesamiento para dicho programa. es mediante una poltica rst in rst out.
Su memoria de trabajo (memoria crtica), es decir, La sincronizacin explcita entre procesos es un caso par-
la memoria que ha reservado y sus contenidos. ticular del estado bloqueado. En este caso, el suceso que
permite desbloquear un proceso no es una operacin de
Otra informacin que permite al sistema operativo
entrada/salida, sino una seal generada a propsito por el
su planicacin.
programador desde otro proceso.
Un proceso se rige en pequeas porciones, conocidas co- Hay cuatro eventos principales que provocan la creacin
mo pginas, y cada proceso tiene su propia tabla de pa- de procesos:
ginacin, fungiendo como una optimizacin del sistema
operativo ante los fallos de pgina. El arranque del sistema.
1
2 3 ESTADOS DE UN PROCESO
La ejecucin, desde un proceso, de una llamada al Error fatal, ste sucede por un error en el programa, como
sistema para la creacin de otro proceso. las divisiones entre 0 o requerimiento de memoria inac-
cesible.
Una peticin de usuario para crear un proceso.
Eliminado por otro proceso, ste es sumamente til cuan-
El inicio de un trabajo por lotes. do un proceso se queda colgado, es decir, sin terminar,
pero tampoco responde. En Unix un ejemplo es cuando
se utiliza el comando kill para terminar procesos abrup-
Los procesos pueden contener uno o ms hilos, hacien-
tamente.
do ms eciente las tareas, asimismo la complejidad de
los algoritmos de sincronizacin, ya que podra ocurrir la
condicin de carrera muy a menudo, inclusive los inde-
seados interbloqueos. 3 Estados de un proceso
Los estados de un proceso obedecen a su participacin y
1 Creacin de un proceso disponibilidad dentro del sistema operativo y surgen de la
necesidad de controlar la ejecucin de cada proceso. Los
procesadores slo pueden ejecutar un solo proceso a la
Bsicamente hasta el da de hoy existen slo 4 formas de
vez, turnndolos para el uso de ste. Existen procesos no
crear un proceso:
apropiativos o cooperativos que bsicamente ocupan todo
el tiempo del procesador hasta que ellos deciden dejarlo.
Arranque del sistema. Los procesos apropiativos son aquellos que ocupan por
un perodo de tiempo el procesador hasta que una inte-
En la ejecucin, desde un proceso, de una llamada
rrupcin o seal llega al procesador para hacer el cambio
al sistema para la creacin del proceso.
de proceso, a esto se le conoce como cambio de contexto.
Una peticin deliberada del usuario para crear un Los posibles estados que puede tener un proceso son eje-
proceso. cucin, bloqueado y listo:
4 Tipos de procesos
Existen dos tipos de procesos, aquellos que se ejecutan en
modo kernel y aquellos que se ejecutan en modo usuario.
Los primeros son ms lentos por las llamadas al sistema
que realizan, sin embargo, son ms seguros por la inte-
gridad que representan. Cuando hablamos de los proce-
sos de usuario, podemos decir que el sistema operativo
podra no ser multiproceso, ya que se vale de libreras
(como pthread) para hacer un multiplexado y dar la apa-
riencia de trabajar como multiproceso.
Podra pensarse en otra clasicacin, como son los pro-
cesos en primer plano y procesos en segundo plano. Los
primeros interactan con el usuario, es decir, el usuario
proporciona los datos que el proceso utilizar. Los segun-
dos, son creados para tareas bien denidas y no necesitan
la intervencin del usuario, por ejemplo, se puede tener
un proceso en segundo plano para revisar la temperatura
del disco duro constantemente, stos tambin son cono-
cidos como demonios.[cita requerida]
5 Vase tambin
Memoria virtual
Multiproceso
Unix
Paginacin
6 Referencias
[1] Stallings 5 edicin pag. 109
7 Bibliografa
Tanenbaum, Andrew S. (2009). 2 Procesos e hilos. Sis-
temas operativos modernos (3 edicin). Prentice Hall. p.
1076. [[Categora:Sistemas operativos y mas))
4 8 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
8.2 Imgenes
Archivo:Commons-emblem-question_book_yellow.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/d/dd/
Commons-emblem-question_book_yellow.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-query.svg' class='image'><img alt='Commons-emblem-query.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/c/c5/Commons-emblem-query.svg/25px-Commons-emblem-query.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commons-emblem-query.svg/38px-Commons-emblem-query.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Commons-emblem-query.svg/50px-Commons-emblem-query.svg.png
2x' data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg'
class='image'><img alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.
svg/25px-Question_book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/
Question_book.svg/38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.
svg/50px-Question_book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Linfocito
B
Administracin
Los administradores de Windows pueden gestionar los servicios a travs de:
Ver una lista de servicios instalados junto con el nombre del servicio, descripciones y
configuracin.
Iniciar, detener, pausar o reiniciar los servicios.5
Especificar los parmetros de servicio, en su caso.
Cambiar el tipo de inicio. Tipos de inicio aceptables incluyen:
Automtico: el servicio comienza en el inicio del sistema.
Automtico (en diferido): el servicio se inicia poco despus de que el sistema haya
terminado de arrancar. Esta opcin se introdujo en Windows Vista en un intento de
reducir el tiempo de arranque en el escritorio. Sin embargo, no todos los servicios
soportan el inicio con retraso.6
Manual: el servicio se inicia slo cuando se le llame explcitamente.
Desactivado: El servicio est deshabilitado. No va a funcionar.
Cambiar el contexto de la cuenta de usuario en el que opera el servicio.
Configurar las acciones de recuperacin que se deben tomar si un servicio falla.
Inspeccionar las dependencias de servicio, descubrir qu servicios o controladores de
dispositivo dependen de un determinado servicio o sobre que dependen servicio
dependen los servicios o controladores de dispositivo.
Exportar la lista de servicios como un archivo de texto o como un archivo CSV.
Sc.exe
La pareja en la lnea de comandos del complemento de Servicios es sc.exe, la utilidad "de
control de servicios".7 Esta utilidad se incluye con Windows XP8 y posteriores versiones.9
La esfera de accin de Sc.exe se limita al equipo local. Sin embargo, a partir de Windows
Server 2003, Sc.exe no slo puede hacer todo lo que hace el complemento Servicios en s,
sino que tambin puede instalar y desinstalar los servicios.9
Windows PowerShell
Windows PowerShell puede gestionar intrnsecamente servicios de Windows a travs de
los siguientes cmdlets:
Get-Service10
New-Service11
Restart-Service12
Resume-Service13
Set-Service14
Start-Service15
Stop-Service16
Suspend-Service17
Otras herramientas de gestin
Adems del tro compuesto por el complemento, sc.exe y PowerShell, Windows tambin
incluye componentes que pueden hacer un subconjunto de lo que el tro puede hacer.
Net.exe puede iniciar, detener, pausar o reanudar un servicio de Windows.18 En Windows
Vista y versiones posteriores, el Administrador de tareas puede mostrar una lista de
servicios instalados y comenzarlos o detenerlos. MSConfig puede activar o desactivar
(vase la descripcn hecha anteriormente sobre de tipos de inicio anterior) servicios de
Windows.
Desarrollo
Un servicio de Windows se creado usando herramientas de desarrollo como Microsoft
Visual Studio o Embarcadero Delphi. Con el fin de que sea un servicio de Windows, se
debe escribir un programa de una manera tal que puede manejar los mensajes de inicio,
deteccin y pausa del Service Control Manager (Administrador de Control de Servicios). el
Service Control Manager es un componente de Windows que se encarga de iniciar y
detener servicios.
El Kit de recursos de Windows para Windows NT 3.51, Windows NT 4.0 y Windows 2000
proporciona herramientas para controlar el uso y registro de servicios: Srvany.exe acta
como un contenedor de servicio para manejar la interfaz esperada de un servicio (por
ejemplo, manejar service_start y responder en algn momento ms adelante con
service_started o service_failed) y permitir que cualquier ejecutable o script pueda ser
configurado como un servicio. sc.exe (Control Service) permite que nuevos servicios se
instalen, inicien, detengan o desinstalen.19
Demonio (informtica)
Un demonio (nomenclatura usada en sistemas UNIX y acceder. Otro ejemplo son los demonios cronolgicos
UNIX-like), servicio (nomenclatura usada en Windows) como cron, que realizan tareas programadas como man-
o programa residente (nomenclatura usada en MS- tenimiento del sistema en segundo plano.
DOS) es un tipo especial de proceso informtico no in-
teractivo, es decir, que se ejecuta en segundo plano en vez
de ser controlado directamente por el usuario. Este tipo 1 Vase tambin
de programas continua en el sistema, es decir, que puede
ser ejecutado en forma persistente o reiniciado si se in-
Bootstrapping (informtica)
tenta matar el proceso dependiendo de la conguracin
del demonio y de las polticas del sistema. Servidor
0.1 Historia
2 Referencias
Los programas demonios reciben este nombre en los siste-
mas UNIX. En otros sistemas existen procesos similares [1] http://www.takeourword.com/TOW146/page4.html
como los TSRs de MS-DOS o los servicios de Windows. [2] http://www.takeourword.com/TOW129/page2.html
Segn una investigacin realizada por Richard Steinberg,
la palabra daemon fue utilizada en 1963 por primera
vez, en el rea de la informtica, para denominar a un
proceso que realizaba backups en unas cintas. Este pro-
ceso se utiliz en el proyecto MAC del MIT y en una
computadora IBM 7094.[1] Dicho proyecto estaba lidera-
do por Fernando J. Corbat, quien arma que se bas en
el demonio de James Maxwell, este daemon era una espe-
cie de vigilante que resida en medio de un recipiente di-
vidido en dos, lleno de molculas. El vigilante o daemon
se encargaba de permitir, dependiendo de la velocidad de
la molcula, que stas pasaran de un lado al otro. Los dae-
mons de las computadoras actan muy similar al daemon
de Maxwell, pues realizan acciones segn el comporta-
miento y algunas condiciones del sistema.[2]
0.2 Caractersticas
Los demonios suelen tener las siguientes caractersticas:
1
2 3 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
3.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
1 Vase tambin
Multiprocesamiento simtrico
Multitarea
1
2 2 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
2.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
En computacin, SMP (del ingls Symmetric Multi- En un entorno de multiproceso simtrico, las CPU com-
Processing, en espaol multiproceso simtrico) es un parten la misma memoria, y como resultado, el cdigo
tipo de arquitectura de computadores en la que dos o que corre en una CPU puede afectar a la memoria usada
ms unidades de procesamiento comparten una nica por otra. No se puede estar seguro de que una variable
memoria central. que se ha establecido a un cierto valor en la lnea anterior
todava tenga el mismo valor dado que la otra CPU pue-
de modicar el valor de la variable. Es importante por lo
tanto considerar estos casos e implementar mecanismos
1 Explicacin detallada para evitarlos (vase seccin crtica).
En el caso de la programacin de procesos esto no suele
La arquitectura SMP (tambin llamada UMA, del ingls ser un problema, porque un proceso normalmente slo se
Uniform Memory Access, en espaol acceso uniforme ejecutar en una CPU a la vez. El ncleo, sin embargo,
a memoria) se caracteriza por el hecho de que varias podra ser llamado por diferentes procesos ejecutndose
unidades de procesamiento comparten el acceso a la me- en CPUs diferentes.
moria, compitiendo en igualdad de condiciones por dicho
acceso, de ah la denominacin simtrico. En la versin 2.0.x de Linux, esto no es un problema por-
que el ncleo entero est en un gran `spinlock'. Esto sig-
Los sistemas SMP permiten que cualquier procesador nica que si una CPU est dentro del ncleo y otra CPU
trabaje en cualquier tarea sin importar su localizacin en quiere entrar en l, por ejemplo por una llamada al sis-
memoria; con un propicio soporte del sistema operativo, tema, tiene que esperar hasta que la primera CPU haya
estos sistemas pueden mover fcilmente tareas entre los acabado. Esto es lo que hace el SMP en Linux: es seguro,
procesadores para garantizar ecientemente el trabajo. pero ineciente.
Una computadora SMP se compone de microprocesado-
res independientes que se comunican con la memoria a
travs de un bus compartido. Dicho bus es un recurso de 3 Vase tambin
uso comn. Por tanto, debe ser arbitrado para que so-
lamente un microprocesador lo use en cada instante de multiprocesamiento
tiempo. Si las computadoras con un nico microprocesa-
dor tienden a gastar considerable tiempo esperando a que
lleguen los datos desde la memoria, SMP empeora esta
situacin, ya que hay varios parados en espera de datos.
2 Conceptos relacionados
Arquitectura NUMA
1
2 4 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
4.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
1 Tipos de multitarea
1.1 Cooperativa
1
2 3 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
3.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
Archivo:Desktop-Linux-Mint.png Fuente: https://upload.wikimedia.org/wikipedia/commons/4/41/Desktop-Linux-Mint.png Licencia:
CC BY-SA 4.0 Colaboradores: Trabajo propio Artista original: Benjamintf1
Virtual address space Physical address space de la combinacin entre hardware especial y el sistema
operativo hace uso de la memoria principal y la secunda-
0x00000000
0x00010000 ria para hacer parecer que el ordenador tiene mucha ms
memoria principal (RAM) que la que realmente posee.
text 0x00000000
Este mtodo es invisible a los procesos. La cantidad de
memoria mxima que se puede hacer ver que hay tiene
0x10000000 que ver con las caractersticas del procesador. Por ejem-
plo, en un sistema de 32 bits, el mximo es 232 , lo que da
data
4096 Megabytes (4 Gigabytes). Todo esto hace el trabajo
del programador de aplicaciones mucho ms fcil, al po-
der ignorar completamente la necesidad de mover datos
entre los distintos espacios de memoria.
Aunque la memoria virtual podra estar implementada
por el software del sistema operativo, en la prctica casi
0x00ffffff
siempre se usa una combinacin de hardware y software,
stack
page belonging to process dado el esfuerzo extra que implicara para el procesador.
0x7fffffff page not belonging to process
1
2 2 DETALLES
est en memoria fsica y el resto almacenado en el disco, Justo despus de obtener la direccin fsica, y antes
y puede ser referenciado fcilmente. de consultar el dato en memoria principal, se busca en
Debido a que slo la parte de memoria virtual que es- memoria-cache. Si est entre los datos recientemente usa-
t almacenada en la memoria principal es accesible a la dos, la bsqueda tendr xito, pero si falla, la memoria
CPU, segn un programa va ejecutndose, la proximidad virtual consultar la memoria principal , en el peor de
de referencias a memoria cambia, necesitando que algu- los casos, el disco (swapping).
nas partes de la memoria virtual se traigan a la memoria
principal desde el disco, mientras que otras ya ejecuta-
das, se pueden volver a depositar en el disco (archivos de 2 Detalles
paginacin).
La memoria virtual ha llegado a ser un componente esen- La traduccin de las direcciones virtuales a reales es
cial de la mayora de los sistemas operativos actuales. Y implementada por una Unidad de Manejo de Memoria
como en un instante dado, en la memoria slo se tienen (MMU). El sistema operativo es el responsable de de-
unos pocos fragmentos de un proceso dado, se pueden cidir qu partes de la memoria del programa es mante-
mantener ms procesos en la memoria. Es ms, se aho- nida en memoria fsica. Adems mantiene las tablas de
rra tiempo, porque los fragmentos que no se usan no se traduccin de direcciones (si se usa paginacin la tabla
cargan ni se descargan de la memoria. Sin embargo, el se denomina tabla de paginacin), que proveen las rela-
sistema operativo debe saber cmo gestionar este esque- ciones entre direcciones virtuales y fsicas, para uso de
ma. la MMU. Finalmente, cuando una excepcin de memo-
La memoria virtual tambin simplica la carga del pro- ria virtual ocurre, el sistema operativo es responsable de
grama para su ejecucin, llamada reubicacin, este pro- ubicar un rea de memoria fsica para guardar la infor-
cedimiento permite que el mismo programa se ejecute en macin faltante, trayendo la informacin desde el disco,
cualquier posicin de la memoria fsica. actualizando las tablas de traduccin y nalmente conti-
nuando la ejecucin del programa que dio la excepcin de
En un estado estable, prcticamente toda la memoria memoria virtual desde la instruccin que caus el fallo.
principal estar ocupada con fragmentos de procesos, por
lo que el procesador y el S.O tendrn acceso directo a En la mayora de las computadoras, las tablas de traduc-
la mayor cantidad de procesos posibles, y cuando el S.O cin de direcciones de memoria se encuentran en memo-
traiga a la memoria un fragmento, deber expulsar otro. ria fsica. Esto implica que una referencia a una direccin
Si expulsa un fragmento justo antes de ser usado, tendr virtual de memoria necesitar una o dos referencias para
que traer de nuevo el fragmento de manera casi inmedia- encontrar la entrada en la tabla de traduccin, y una ms
ta. Demasiados intercambios de fragmentos conducen a para completar el acceso a esa direccin.
lo que se conoce como hiperpaginacin: donde el proce- Para acelerar el desempeo de este sistema, la mayora
sador consume ms tiempo intercambiando fragmentos de las Unidades Centrales de Proceso (CPU) incluyen una
que ejecutando instrucciones de usuario. Para evitarlo el MMU en el mismo chip, y mantienen una tabla de las tra-
sistema operativo intenta adivinar, en funcin de la his- ducciones de direcciones virtuales a reales usadas recien-
toria reciente, qu fragmentos se usarn con menor pro- temente, llamada Translation Lookaside Buer (TLB).
babilidad en un futuro prximo (vase algoritmos de re- El uso de este buer hace que no se requieran referencias
emplazo de pginas). de memoria adicionales, por lo que se ahorra tiempo al
Los argumentos anteriores se basan en el principio de traducir.
cercana de referencias o principio de localidad que ar- En algunos procesadores, esto es realizado enteramente
ma que las referencias a los datos y el programa dentro de por el hardware. En otros, se necesita de la asistencia del
un proceso tienden a agruparse. Por lo tanto, es vlida la sistema operativo: se levanta una excepcin, y en ella el
suposicin de que, durante cortos perodos de tiempo, se sistema operativo reemplaza una de las entradas del TLB
necesitarn slo unos pocos fragmentos de un proceso. con una entrada de la tabla de traduccin, y la instruccin
Una manera de conrmar el principio de cercana es con- que hizo la referencia original a memoria es reejecutada.
siderar el rendimiento de un proceso en un entorno de El hardware que tiene soporte para memoria virtual, la
memoria virtual. mayora de la veces tambin permite proteccin de me-
El principio de cercana sugiere que los esquemas de me- moria. La MMU puede tener la habilidad de variar su
moria virtual pueden funcionar. Para que la memoria vir- forma de operacin de acuerdo al tipo de referencia a me-
tual sea prctica y efectiva, se necesitan dos ingredientes. moria (para leer, escribir, o ejecutar), as como el modo
Primero, tiene que existir un soporte de hardware y, en en que se encontraba el CPU en el momento de hacer la
segundo lugar, el S.O debe incluir un software para ges- referencia a memoria. Esto permite al sistema operati-
tionar el movimiento de pginas o segmentos entre me- vo proteger su propio cdigo y datos (como las tablas de
moria secundaria y memoria principal. traduccin usadas para memoria virtual) de corromperse
por una aplicacin, y de proteger a las aplicaciones que
podran causar problemas entre s.
3
4 Vase tambin
Paginacin
4 5 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
5.2 Imgenes
Archivo:Virtual_address_space_and_physical_address_space_relationship.svg Fuente: https://upload.wikimedia.org/wikipedia/
commons/3/32/Virtual_address_space_and_physical_address_space_relationship.svg Licencia: BSD Colaboradores: en:Image:Virtual
address space and physical address space relationship.png Artista original: Traced by User:Stannered, original by en:User:Dysprosia
1
2 2 FAMILIAS UNIX MS SIGNIFICATIVAS
Linux: En 1991, cuando Linus Torvalds empez a X [el cual, en su versin 10.5 ya ha alcanzado la certica-
proponer el ncleo Linux y a reunir colaboradores, cin UNIX], FreeBSD, NetBSD, OpenBSD), los cuales
las herramientas GNU eran la eleccin perfecta. Al no buscan la certicacin UNIX por resultar cara para
combinarse ambos elementos, conformaron la base productos destinados al consumidor nal o que se distri-
del sistema operativo (basado en POSIX), que hoy buyen libremente en Internet. En estos casos, el trmino
se conoce como GNU/Linux. Las distribuciones ba- se suele escribir como UN*X, UNIX*", "*NIX, o
sadas en el ncleo, el software GNU y otros agrega- "*N?X. Para referirse a ellos (tanto a Unix, como a los
dos entre las que se pueden mencionar a Slackware sistema basados en Unix/POSIX) tambin se utiliza Uni-
Linux, Red Hat Linux y Debian GNU/Linux se xes, pero Unices (que trata la palabra Unix como un
han hecho populares tanto entre los acionados a la nombre latino de la tercera declinacin) es asimismo po-
computacin como en el mundo empresarial. Obsr- pular.
vese que Linux tiene un origen independiente, por
lo que se considera un 'clnico' de UNIX y no un
UNIX en el sentido histrico. 4 Implementaciones ms impor-
tantes
Las interrelaciones entre estas familias son las siguientes,
aproximadamente en orden cronolgico:
A lo largo de la historia ha surgido una gran multitud de
implementaciones comerciales de UNIX. Sin embargo,
La familia BSD surge del licenciamiento del UNIX un conjunto reducido de productos han consolidado el
original de AT&T. mercado y prevalecen gracias a un continuo esfuerzo de
desarrollo por parte de sus fabricantes. Los ms impor-
Xenix tambin surge por licenciamiento del UNIX
tantes son:
original de AT&T, aunque an no era propiedad de
SCO.
Solaris de Sun Microsystems. Uno de los sistemas
AIX surge por licenciamiento de UNIX System operativos Unix ms difundidos en el entorno em-
III, pero tambin incorpora propiedad intelectual de presarial y conocido por su gran estabilidad. Parte
BSD. del cdigo fuente de Solaris se ha liberado con li-
cencia de fuentes abiertas (OpenSolaris).
La familia original AT&T incorpora ilegalmente
AIX de IBM. El UNIX propietario de IBM cum-
propiedad intelectual de BSD en UNIX System III
pli 20 aos de vida en el 2006 y contina en pleno
r3.
desarrollo, con una perceptible herencia del main-
La familia AIX vuelve a incorporar propiedad inte- frame en campos como la virtualizacin o la RAS
lectual de la familia AT&T, esta vez procedente de de los servicios, heredada de sus hermanos mayo-
UNIX System V. res.
HP-UX de Hewlett-Packard. Este sistema operativo
Linux incorpora propiedad intelectual de BSD, gra- tambin naci ligado a las computadoras departa-
cias a que ste tambin se libera con una licencia de mentales de este fabricante. Tambin es un sistema
cdigo abierto denominada Open-source BSD. operativo estable que continua en desarrollo.
Segn SCO Group, Linux incorpora propiedad inte- macOS. Se trata de un UNIX completo, aprobado
lectual procedente de AIX, gracias a la colaboracin por The Open Group. Su diferencia marcada es que
de IBM en la versin 2.4, mas an no est demos- posee una interfaz grca propietaria llamada Aqua,
trado, hay un proceso judicial al respecto: Disputas y es principalmente desarrollada en Objective-C en
de SCO sobre Linux. lugar de C o C++.
SUSE Linux de Novell. Originalmente liberado por Procesamiento de textos: echo cat grep sort uniq sed
la compaa alemana SuSE. Es popular por sus he- awk tail head.
rramientas de administracin centralizada. De ma-
nera anloga a RedHat con Fedora, apoya el proyec- Comparacin de archivos: comm cmp di patch.
to openSUSE.
Administracin del sistema: chmod chown ps nd
xargs sd w who.
Debian GNU/Linux. Con una de las comunidades
ms grandes y antiguas del movimiento de software Comunicacin: mail telnet ssh ftp nger rlogin.
libre, es base para distribuciones como Xandros,
Mepis, Linspire y Ubuntu. Shells: sh csh ksh.
Documentacin: man.
Tambin son populares los sistemas operativos descen-
dientes del 4.4BSD:
Esta es una lista de los sesenta comandos de usuario de la
seccin 1 de la Primera Edicin:
FreeBSD. Quiz el sistema operativo ms popular
de la familia, de propsito mltiple. Con una imple-
ar as b bas bcd boot cat chdir check chmod
mentacin SMP muy elaborada, es el sistema ope-
chown cmp cp date db (Unix) dbppt dc df
rativo utilizado por los servidores de Yahoo. Y base
dsw dtf du ed nd for form hup lbppt ld ln ls
de muchos sistemas operativos entre ellos Mac OS
mail mesg mkdir mkfs mount mv nm od pr
X de Apple.
rew (Unix) rkd rkf rkl rm rmdir ro sdate
OpenBSD. Ampliamente reconocida por su segu- sh stat strip (Unix) su sum tap (Unix) tm tty
ridad proactiva y auditora permanente del cdigo type un wc who write
fuente. Es utilizada en ambientes donde la seguridad
prima sobre todo, es usual encontrarlo instalado en Otros comandos
servidores que actan como Firewall, VPN o Proxy.
7 Referencias
5 rdenes clsicas de UNIX
[1] Bell Labs. The Creation of the UNIX* Operating System.
Algunos comandos bsicos de UNIX son: (en ingls)
Edicin/visin de archivos: touch more ed vi nano. [3] Unix pertenece a Novell. El Pas. 31 de marzo de 2010.
5
[4] Bell Labs. Before Multics there was chaos, and afterwards, Wikilibros alberga un libro o manual sobre
too The Creation of the UNIX* Operating System. (en Hacks para sistemas operativos Unix-like.
ingls)
Sistemas Unix del Open Group
[5] Bell Labs. The famous PDP-7 comes to the rescue The
Creation of the UNIX* Operating System. (en ingls)
[8] Bell Labs. The UNIX system begins to take shape The Crea-
tion of the Unix Operating System (en ingls).
[10] Bell Labs. Porting UNIX for its rst commercial application
The Creation of the UNIX* Operating System (en ingls).
[13] Bell Labs. Sharing UNIX with the rest of the world The
Creation of the UNIX* Operating System (en ingls).
[14] Bell Labs. Early versions of the UNIX* system The Crea-
tion of the UNIX* Operating System. (en ingls)
[17] Novell, Inc. Press Release (20 September 1995) HP, No-
vell and SCO To Deliver High-Volume UNIX OS With Ad-
vanced Network And Enterprise Services Novell, Inc. New
York. (en ingls)
8 Enlaces externos
Wikilibros
6 9 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
9.2 Imgenes
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:Unix_based.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/d/d9/Unix_based.jpg Licencia: Public domain Cola-
boradores: ? Artista original: ?
Archivo:Wikibooks-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/f/fa/Wikibooks-logo.svg Licencia: CC BY-SA
3.0 Colaboradores: Trabajo propio Artista original: User:Bastique, User:Ramac et al.
En sistemas operativos de computadoras, los sistemas de 5. El programa D se carga en memoria (se le asignan
paginacin de memoria dividen los programas en peque- los marcos 3 y 4 que usaba el proceso B y el marco
as partes o pginas. Del mismo modo, la memoria es 7 que permaneca libre)
dividida en trozos del mismo tamao que las pginas lla-
mados marcos de pgina. De esta forma, la cantidad de De esta forma, las tablas simplicadas de cada proceso se
memoria desperdiciada por un proceso es el nal de su ven de esta forma:
ltima pgina, lo que minimiza la fragmentacin interna
y evita la externa. Ahora consideremos qu sucede cuando un progra-
ma quiere acceder a su memoria. Si el programa A
En un momento cualquiera, la memoria se encuentra ocu- contiene una referencia a la memoria con direccin
pada con pginas de diferentes procesos, mientras que 20FE, se realizar el siguiente procedimiento. 20FE es
algunos marcos estn disponibles para su uso. El siste- 0010000011111110 en notacin binaria (en un sistema
ma operativo mantiene una lista de estos ltimos marcos, de 16 bit), y en el ejemplo se estn usando pginas de 4Kb
y una tabla por cada proceso, donde consta en qu mar- de tamao. Cuando la peticin de la direccin de memo-
co se encuentra cada pgina del proceso. De esta forma, ria 20FE es realizada, la Unidad de Gestin de memoria
las pginas de un proceso pueden no estar contiguamente se ve de esta forma:
ubicadas en memoria, y pueden intercalarse con las pgi-
nas de otros procesos. 0010000011111110 = 20FE |__||__________| | | | v | Po-
sicin de memoria dentro de la pgina (0FE) v Nmero de
En la tabla de pginas de un proceso, se encuentra la ubi- pgina (0010 = 2) * n = bits de la @ lgica -log2(nmero
cacin del marco que contiene a cada una de sus pginas. de palabras de una pgina). * V: bit de validez. * P: bit
Las direcciones lgicas ahora se forman como un nme- de persistencia. * L: bit de derecho a lectura. * E: bit de
ro de pgina y de un desplazamiento dentro de esa pgina derecho a escritura. * M: bit de modicacin.
(conocido comnmente como oset). El nmero de pgi-
na es usado como un ndice dentro de la tabla de pginas, Al usar pginas de 4096 bytes, todas las ubicaciones den-
y una vez obtenida la direccin del marco de memoria, se tro de una pgina pueden 12
ser representadas por 12 bits,
utiliza el desplazamiento para componer la direccin real en el sistema binario (2 =4096), lo que deja 4 bits para
o direccin fsica. Este proceso se realiza en una parte del representar el nmero de pgina. Si las pginas hubieran
computador especcamente diseada para esta tarea, es sido de la mitad del tamao (2048) se podran tener 5 bits
decir, es un proceso hardware y no software. para el nmero de pgina, lo que signica que a menor ta-
mao de pgina se pueden tener tablas con ms pginas.
De esta forma, cuando un proceso es cargado en memoria,
se cargan todas sus pginas en marcos libres y se completa Cuando el pedido de acceso a memoria es realizado, la
su tabla de pginas. MMU busca en la tabla de pginas del proceso que reali-
z el pedido por la relacin en memoria fsica. En nuestro
Veamos un ejemplo: ejemplo, la pgina nmero 2 del proceso A corresponde
La tabla de la derecha muestra una posible conguracin al marco nmero 2 en memoria fsica, con direccin real
de la memoria en un momento dado, con pginas de 4Kb. 1000:2000, por lo tanto, la MMU devolver la direccin
La forma en que se lleg a este estado puede haber sido del marco en memoria fsica, con el desplazamiento den-
la siguiente: tro de esa pgina: 1000:20FE.
Se tienen cuatro procesos, llamados A, B, C y D, que ocu-
pan respectivamente 3, 2, 2 y 3 pginas.
1 Paginacin en memoria virtual
1. El programa A se carga en memoria (se le asignan
los marcos 0, 1 y 2) El nico inconveniente de paginacin pura es que todas
las pginas de un proceso deben estar en memoria pa-
2. El programa B se carga en memoria (se le asignan ra que se pueda ejecutar. Esto hace que si los programas
los marcos 3 y 4) son de tamao considerable, no puedan cargarse muchos
3. El programa C se carga en memoria (se le asignan a la vez, disminuyendo el grado de multiprogramacin
los marcos 5 y 6) del sistema. Para evitar esto, y aprovechando el principio
de cercana de referencias donde se puede esperar que un
4. El programa B termina, liberando sus pginas programa trabaje con un conjunto cercano de referencias
1
2 2 VASE TAMBIN
2 Vase tambin
Paginacin anidada
Segmentacin de memoria
3
3.2 Imgenes
Este artculo explica los archivos informticos y tos imaginables, desde los ms simples a los ms comple-
los sistemas de archivos en trminos generales. jos. La mayora de los archivos informticos son usados
Para una explicacin ms detallada y tcnica, por programas informticos. Estos programas crean, mo-
vase Sistema de archivos. dican y borran archivos para su propio uso bajo deman-
da. Los programadores que crean los programas deciden
Un archivo o chero informtico es un conjunto de bits qu archivos necesitan, cmo se van a usar, y (a menudo)
que son almacenados en un dispositivo. Un archivo es sus nombres.
identicado por un nombre y la descripcin de la carpeta En algunos casos, los programas de computadora mani-
o directorio que lo contiene. A los archivos informticos pulan los archivos que se hacen visibles al usuario de la
se les llama as porque son los equivalentes digitales de los computadora. Por ejemplo, en un programa de procesa-
archivos escritos en expedientes, tarjetas, libretas, papel miento de texto, el usuario manipula archivos-documento
o microchas del entorno de ocina tradicional. a los que l mismo da nombre. El contenido del archivo-
documento est organizado de una manera que el progra-
ma de procesamiento de texto entiende, pero el usuario
1 Contenido de los archivos elige el nombre y la ubicacin del archivo, y proporciona
la informacin (como palabras y texto) que se almacenar
En lo que concierne al sistema operativo un archivo es, en el archivo.
en la mayora de los casos, simplemente un ujo unidi- Muchas aplicaciones empaquetan todos sus archivos de
mensional de bits, que es tratado por el sistema operati- datos en un nico archivo, usando marcadores internos
vo como una nica unidad lgica. Un archivo de datos para discernir los diferentes tipo de informacin que con-
informtico normalmente tiene un tamao, que general- tienen. Los archivos de datos usados por videojuegos co-
mente se expresa en bytes; en todos los sistemas opera- mo Doom y Quake son ejemplos de esto.
tivos modernos, el tamao puede ser cualquier nmero
Los archivos de una computadora se pueden crear, mo-
entero no negativo de bytes hasta un mximo dependien-
ver, modicar, aumentar, reducir y borrar. En la mayora
te del sistema. Depende del software que se ejecuta en la
de los casos, los programas de computadora que se ejecu-
computadora el interpretar esta estructura bsica como
tan en la computadora se encargan de estas operaciones,
por ejemplo un programa, un texto o una imagen, basn-
pero el usuario de una computadora tambin puede ma-
dose en su nombre y contenido. Los tipos especiales de
nipular los archivos si es necesario. Por ejemplo, los ar-
archivos, como los nodos de dispositivo que representan
chivos de Microsoft Oce Word son normalmente crea-
simblicamente partes del hardware, no consisten en un
dos y modicados por el programa Microsoft Word en
ujo de bits y no tienen tamao de archivo.
respuesta a las rdenes del usuario, pero el usuario tam-
Los datos de un archivo informtico normalmente consis- bin puede mover, renombrar o borrar estos archivos di-
ten en paquetes ms pequeos de datos (a menudo llama- rectamente usando un programa gestor de archivos como
dos registros o lneas) que son individualmente diferentes Windows Explorer (en computadoras con sistema opera-
pero que comparten algn rasgo en comn. Por ejemplo, tivo Windows).
un archivo de nminas puede contener datos sobre todos
Tambin un archivo es un documento donde uno introdu-
los empleados de una empresa y los detalles de su nmina;
ce algn tipo de Dato para almacenar en un objeto que lo
cada registro del archivo de nminas se reere nicamen-
pueda leer o modicar como una computadora.
te a un empleado, y todos los registros tienen la caracte-
rstica comn de estar relacionados con las nminas -esto
es muy similar a colocar todos los datos sobre nminas en
un archivador concreto en una ocina que no tenga nin-
guna computadora. Un archivo de texto puede contener
2 Identicacin y organizacin de
lneas de texto, correspondientes a lneas impresas en una archivos
hoja de papel.
La manera en que se agrupan los datos en un archivo de- En los ms modernos sistemas informticos, los archivos
pende completamente de la persona que disee el archi- siempre tienen nombres. Los archivos se ubican en di-
vo. Esto ha conducido a una pltora de estructuras de ar- rectorios. El nombre de un archivo debe ser nico en ese
chivo ms o menos estandarizadas para todos los propsi- directorio. En otras palabras, no puede haber ms de un
1
2 3 OPERACIONES SOBRE ARCHIVOS COMPLETOS
para que el sistema de archivos pueda reconocerlo y pro- 3.4 Extensin del archivo
cesarlo. En el proceso de creacin del archivo debe regis-
trarse la informacin necesaria para que el sistema pueda Esta operacin permite a los programas de usuario au-
localizar el archivo y manipular sus registros lgicos. Para mentar el tamao de un archivo asignndole ms espacio
ello, el mtodo de acceso debe obtener informacin sobre en el dispositivo de almacenamiento. Para realizar esta
el formato y el tamao de los registros lgicos y fsicos, la operacin el mtodo de acceso necesita conocer el iden-
identicacin del archivo, la fecha de creacin, su posible ticador del archivo y el tamao del espacio adicional que
tamao, su organizacin, aspectos de seguridad, etc. se debe asignar al archivo. En funcin de la organizacin
del archivo, el mtodo de acceso determinar si el espa-
cio adicional que debe asignar debe ser contiguo al archi-
3.2 Apertura de un archivo vo o no. Mediante esta operacin el atributo que indica
el tamao del archivo ser modicado y se devolver al
En esta operacin el mtodo de acceso localiza e identi- programa de usuario con un cdigo de estado. El nico
ca un archivo existente para que los usuarios o el propio motivo para que esta operacin no se lleve a cabo con
sistema operativo pueda operar con l. En algunos siste- xito es que no haya suciente espacio disponible en el
mas la operacin de creacin no existe como tal, y es la lugar adecuado (no contiguo).
operacin de archivo de un chero no existente, la que
implcitamente, crea un nuevo archivo. Los errores que
pueden producirse en la apertura de un archivo son los 4 Proteccin de archivos
siguientes:
Muchos sistemas informticos modernos proporcionan
El archivo no se encuentra en el lugar indicado (dis- mtodos para proteger los archivos frente a daos acci-
positivo, directorio, nombre). dentales o intencionados. Las computadoras que permi-
ten varios usuarios implementan permisos sobre archivos
El archivo se ha localizado pero el usuario no tiene para controlar quin puede o no leer, modicar, borrar o
permiso para acceder al mismo. crear archivos y carpetas. A un usuario dado se le puede
conceder solamente permiso para modicar un archivo o
El archivo no se puede leer por errores en el carpeta, pero no para borrarlo; o a un usuario se le puede
hardware del dispositivo de almacenamiento. conceder permiso para crear archivos o carpetas, pero no
para borrarlos. Los permisos tambin se pueden usar para
permitir que solamente ciertos usuarios vean el conteni-
3.3 Cierre de un archivo do de un archivo o carpeta. Los permisos protegen de la
manipulacin no autorizada o destruccin de la informa-
Esta operacin se utiliza para indicar que se va a dejar de cin de los archivos, y mantienen la informacin privada
utilizar un archivo determinado. Mediante esta operacin condencial impidiendo que los usuarios no autorizados
el mtodo de acceso se encarga de romper la conexin vean ciertos archivos.
entre el programa de usuario y el archivo, garantizando la Otro mecanismo de proteccin implementado en muchas
integridad de los registros. Al ejecutar esta operacin, el computadoras es una marca de slo lectura. Cuando esta
sistema se encarga de escribir en el dispositivo de alma- marca est activada en un archivo (lo que puede ser rea-
cenamiento aquella informacin que contienen los bfer lizado por un programa de computadora o por un usuario
asociados al archivo y se llevan a cabo las operaciones de humano), el archivo puede ser examinado, pero no pue-
limpieza necesarias. Tras cerrar el archivo, sus atributos de ser modicado. Esta marca es til para informacin
dejan de ser accesibles para el mtodo de acceso. El ni- crtica que no debe ser modicada o borrada, como ar-
co parmetro necesario para realizar esta operacin es el chivos especiales que son usados solamente por partes in-
identicador del archivo devuelto por el mtodo de acce- ternas del sistema informtico. Algunos sistemas incluyen
so al crear o abrir el archivo. Los errores que se pueden tambin una marca oculta para hacer que ciertos archivos
producir al cerrar un archivo son los siguientes: sean invisibles; esta marca la usa el sistema informtico
para ocultar archivos de sistema esenciales que los usua-
El archivo no est abierto. rios nunca deben modicar.
nivel de empresas y de pases. El mal uso de informacin balmente como su sistema de archivos. Todos los siste-
personal puede constituir un delito. mas operativos tienen al menos un sistema de archivos;
Algunos pases han creado organismos que se encargan algunos sistemas operativos permiten usar varios siste-
del tema y de legislar respecto del acceso, uso y con- mas de archivos diferentes. Por ejemplo, en Microsoft
dencialidad de los datos establecidos. Windows 7, se reconocen los antiguos sistemas de archi-
vos FAT y FAT32 de las versiones antiguas de Windows,
adems del sistema de archivos NTFS que es el sistema de
archivos normal en las versiones recientes de Windows.
6 Almacenamiento de archivos NTFS no es ms moderno que FAT32; ha existido desde
que Windows NT se public en 1993.
En trminos fsicos, la mayora de los archivos inform-
Cada sistema de archivos tiene sus propias ventajas y des-
ticos se almacenan en discos duros discos magnticos
ventajas. La FAT estndar solamente permite nombres de
que giran dentro de una computadora que pueden re-
archivo de ocho bytes (u ocho caracteres de slo 1 byte)
gistrar informacin indenidamente. Los discos duros
sin espacios (ms una extensin de tres bytes/caracteres),
permiten acceso casi instantneo a los archivos inform-
por ejemplo, mientras que NTFS permite nombres mu-
ticos.
cho ms largos que pueden contener espacios, y tener va-
Hace unos aos solan usarse cintas magnticas para rea- rias letras Unicode. Se puede llamar a un archivo Regis-
lizar copias de seguridad. Tambin se usaban otros me- tros de nminas en NTFS, mientras que en FAT estara
dios de almacenamiento como discos compactos graba- limitado a algo como nominas.dat (salvo que estuviera
bles, unidades Zip, etctera. usando VFAT, una extensin de FAT que permite nom-
No obstante en la actualidad han cobrado mucho auge bres de archivo largos).
las memorias ash, dispositivos con mucha capacidad de Los programas gestores o administradores de archivos
almacenamiento que tienen la ventaja de ser pequeos y son utilidades que le permiten manipular archivos direc-
porttiles; suelen usarse para guardar archivos en disposi- tamente. Le permiten mover, crear, borrar y renombrar
tivos pequeos como Telefonos mviles o reproductores archivos y carpetas, aunque no le permiten realmente leer
de audio porttiles el contenido de un archivo o almacenar informacin en l.
Cada sistema informtico proporciona al menos un pro-
grama gestor de archivos para su sistema de archivos na-
7 Respaldo de archivos tivo. En Windows, el gestor de archivos usado ms co-
mnmente es Windows Explorer.
Cuando los archivos informticos contienen informacin
que es extremadamente importante, se usa un proceso de
respaldo (back-up) para protegerse contra desastres que 9 Vase tambin
podran destruir los archivos. Hacer copias de respaldo
de archivos signica simplemente hacer copias de los ar- Ruta
chivos en una ubicacin separada de modo que se puedan
restaurar si le pasara algo a la computadora, o si fueran Localizador uniforme de recursos
borrados accidentalmente.
Formato de archivo
Hay muchas maneras de hacer copias de respaldo de ar-
chivos. La mayora de los sistemas informticos propor- Administrador de archivos
cionan utilidades para ayudar en el proceso de respaldo, Sistema de archivos
que puede llegar a consumir mucho tiempo si hay muchos
archivos a salvaguardar. Copiar los archivos a otro disco Copia de seguridad
duro en la misma computadora protege contra el fallo de
un disco, pero si es necesario protegerse contra el fallo o Bloque
destruccin de la computadora entera, entonces de deben
hacer copias de los archivos en otro medio que puede sa-
carse de la computadora y almacenarse en una ubicacin
distante y segura.
10.2 Imgenes
Archivo:FilesAndFolders.png Fuente: https://upload.wikimedia.org/wikipedia/commons/2/21/FilesAndFolders.png Licencia: CC-BY-
SA-3.0 Colaboradores: Trabajo propio Artista original: FrancoGG
1
2 3 TIPO DE SISTEMAS DE ARCHIVOS
Un sistema de archivos de red es el que accede a sus ar- Linux es el sistema operativo que soporta ms sistemas de
chivos a travs de una red de computadoras. organizacin lo cul lo convierte en uno de los ms vers-
tiles. Adems, al igual que Windows, utiliza los mismos
Dentro de esta clasicacin encontramos dos tipos de sis-
tipos de acceso y sistemas de organizacin. La estructu-
temas de archivos:
ra de archivos es unas estructura jerrquica en forma de
rbol invertido, donde el directorio principal (raz) es el
1. los sistemas de archivos distribuidos (no proporcio- directorio "/", del que cuelga toda la estructura del sis-
nan E/S en paralelo); tema. Este sistema de archivos permite al usuario crear,
borrar y acceder a los archivos sin necesidad de saber el
lugar exacto en el que se encuentran. No existen unidades
2. los sistemas de archivos paralelos (proporcionan una
fsicas, sino archivos que hacen referencia a ellas. Consta
E/S de datos en paralelo).
de tres partes importantes, superbloque, tabla de i-nodos
y bloques de datos.
3.3 Sistemas de archivos de propsito es- -EXT: El sistema de archivos extendido (extended
pecial le system o ext), fue el primer sistema de archi-
vos de Linux. Tiene metadatos estructura inspirada
Los sistemas de archivos de propsito especial (special en el tradicional sistema de archivos UNIX (UFS).
purpose le system) son aquellos tipos de sistemas de ar- Fue diseado por Rmy Card para vencer las limi-
chivos que no son ni sistemas de archivos de disco, ni taciones del sistema de archivos MINIX.
sistemas de archivos de red.
Ejemplos: acme (Plan 9), archfs, cdfs, cfs, devfs, udev, 3.4.3 Sistema de archivos de MacOS
ftpfs, lnfs, nntpfs, plumber (Plan 9), procfs, ROMFS,
swap, sysfs, TMPFS, wikifs, LUFS, etctera. Los sistemas de archivos que utiliza MacOs tienen su for-
ma peculiar de trabajar, la cual es totalmente distinta a la
de Windows y Linux, trabajan por medio de jerarquas.
3.4 Sistema de archivos por Sistema Ope- -HFS: El Sistema de Archivos Jerrquico divide un volu-
rativo men en bloques lgicos de 512 bytes. Estos bloques lgi-
cos estn agrupados juntos en bloques de asignacin (allo-
En cada sistema operativo existen distintas formas de uti- cation blocks) que pueden contener uno o ms bloques
lizacin de los tipos de acceso para la organizacin pti- lgicos dependiendo del tamao total del volumen.
ma de sus archivos y su informacin. Cada sistema ope-
rativo cuenta con uno o varios sistemas diferentes de or-
ganizacin, los cuales trabajan acorde a las necesidades 4 Referencias
del usuario y su uso de la informacin.
[1] Ral Juncos (21 de enero). observatorio.cnice.mec.es, ed.
Sistema de cheros GNU/Linux. Consultado el 1 de fe-
3.4.1 Sistemas de archivos en Windows brero de 2010.
6 Enlaces externos
Unix lesystem Sistema de cheros Unix (en ingls).
5
7.2 Imgenes
Archivo:FilesAndFolders.png Fuente: https://upload.wikimedia.org/wikipedia/commons/2/21/FilesAndFolders.png Licencia: CC-BY-
SA-3.0 Colaboradores: Trabajo propio Artista original: FrancoGG
1
2 5 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
5.2 Imgenes
Archivo:Bloc_Diagram.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/7/71/Bloc_Diagram.jpg Licencia: CC BY-SA 3.0
Colaboradores: Trabajo propio Artista original: Herko60
Archivo:Blockdiagramexemple.png Fuente: https://upload.wikimedia.org/wikipedia/commons/b/bc/Blockdiagramexemple.png Licen-
cia: Public domain Colaboradores: Trabajo propio Artista original: Regalafar
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
En informtica, un ncleo o kernel (de la raz germnica Gestin de los distintos programas informticos (ta-
Kern, ncleo, hueso) es un software que constituye una reas) de una mquina.
parte fundamental del sistema operativo, y se dene co-
Gestin del hardware (memoria, procesador,
mo la parte que se ejecuta en modo privilegiado (cono-
perifrico, forma de almacenamiento, etc.)
cido tambin como modo ncleo).[1] Es el principal res-
ponsable de facilitar a los distintos programas acceso se-
La mayora de las interfaces de usuario se construyen en
guro al hardware de la computadora o en forma bsica, es
torno al concepto de ncleo. La existencia de un ncleo,
el encargado de gestionar recursos, a travs de servicios
es decir, de un nico programa responsable de la comuni-
de llamada al sistema. Como hay muchos programas y el
cacin entre el hardware y el programa informtico, re-
acceso al hardware es limitado, tambin se encarga de
sulta de compromisos complejos referentes a cuestiones
decidir qu programa podr usar un dispositivo de hard-
de resultados, seguridad y arquitectura de los procesado-
ware y durante cunto tiempo, lo que se conoce como
res. El ncleo tiene grandes poderes sobre la utilizacin
multiplexado. Acceder al hardware directamente puede
de los recursos materiales (hardware), en particular, de
ser realmente complejo, por lo que los ncleos suelen im-
la memoria.
plementar una serie de abstracciones del hardware. Esto
permite esconder la complejidad, y proporcionar una in-
terfaz limpia y uniforme al hardware subyacente, lo que 2.1 Funciones generalmente ejercidas por
facilita su uso al programador.
un ncleo
En algunos sistemas operativos, no existe un ncleo como
tal (algo comn en sistemas empotrados), debido a que en Los ncleos tienen como funciones bsicas garantizar la
ciertas arquitecturas no hay distintos modos de ejecucin. carga y la ejecucin de los procesos, las entradas/salidas
y proponer una interfaz entre el espacio ncleo y los pro-
gramas del espacio del usuario.
1 Tcnica Aparte de las funcionalidades bsicas, el conjunto de las
funciones de los puntos siguientes (incluidos los pilotos
Cuando se aplica voltaje al procesador de un dispositivo materiales, las funciones de redes y sistemas de cheros o
electrnico, ste ejecuta un reducido cdigo en lenguaje los servicios) necesariamente no son proporcionados por
ensamblador localizado en una direccin concreta en la un ncleo de sistema de explotacin. Pueden establecerse
memoria ROM (direccin de reset) y conocido como re- estas funciones del sistema de explotacin tanto en el es-
set code, que a su vez ejecuta una rutina con la que se pacio usuario como en el propio ncleo. Su implantacin
inicializa el hardware que acompaa al procesador. Tam- en el ncleo se hace con el nico objetivo de mejorar los
bin en esta fase suele inicializarse el controlador de las resultados. En efecto, segn la concepcin del ncleo, la
interrupciones. Finalizada esta fase se ejecuta el cdigo misma funcin llamada desde el espacio usuario o el espa-
de arranque (startup code), tambin cdigo en lengua- cio ncleo tiene un coste temporal obviamente diferente.
je ensamblador, cuya tarea ms importante es ejecutar Si esta llamada de funciones es frecuente, puede resultar
el programa principal (main()) del software de la aplica- til integrar estas funciones al ncleo para mejorar los
cin.[2] resultados.
1
2 3 TIPOS DE SISTEMAS
El ncleo opera como asignador de recursos para cual- muy pronto se encargar de dar vida al sistema comple-
quier proceso que necesite utilizar las facilidades de to, mediante la activacin de otros procesos que tambin
cmputo. Sus funciones principales son: forman parte del ncleo. Es decir, se inicia una cadena de
activaciones de procesos, entre los cuales destaca el co-
Creacin de procesos, asignacin de tiempos de nocido como despachador, o planicador, que es el res-
atencin y sincronizacin. ponsable de decidir cul proceso se ejecutar y cules van
a entrar o salir de la memoria central. A partir de ese mo-
Asignacin de la atencin del procesador a los pro- mento se conoce el nmero uno como proceso de inicia-
cesos que lo requieren. lizacin del sistema, init.
Administracin de espacio en el sistema de archivos, El proceso init es el responsable de establecer la estructu-
que incluye: acceso, proteccin y administracin de ra de procesos en Unix. Normalmente, es capaz de crear
usuarios; comunicacin entre usuarios y entre pro- al menos dos estructuras distintas de procesos: el modo
cesos, y manipulacin de E/S y administracin de monousuario y el multiusuario. Comienza activando el in-
perifricos. trprete del lenguaje de control shell de Unix en la ter-
Supervisin de la transmisin de datos entre la me- minal principal, o consola del sistema, proporcionndole
moria principal y los dispositivos perifricos. privilegios de superusuario. En la modalidad de un solo
usuario la consola permite iniciar una primera sesin, con
privilegios especiales, e impide que las otras lneas de co-
Reside siempre en la memoria principal y tiene el con-
municacin acepten iniciar sesiones nuevas. Esta modali-
trol sobre la computadora, por lo que ningn otro proceso
dad se usa con frecuencia para revisar y reparar sistemas
puede interrumpirlo; slo pueden llamarlo para que pro-
de archivos, realizar pruebas de funciones bsicas del sis-
porcione algn servicio de los ya mencionados. Un pro-
tema y para otras actividades que requieren uso exclusivo
ceso llama al ncleo mediante mdulos especiales cono-
de la computadora.
cidos como llamadas al sistema.
Init crea otro proceso, que espera a que alguien entre en
Consta de dos partes principales: la seccin de control de
sesin en alguna lnea de comunicacin. Cuando esto su-
procesos y la de control de dispositivos. La primera asig-
cede, realiza ajustes en el protocolo de la lnea y ejecuta
na recursos, programas, procesos y atiende sus requeri-
el programa login, que se encarga de atender inicialmente
mientos de servicio; la segunda, supervisa la transferen-
a los nuevos usuarios. Si el nombre de usuario y la con-
cia de datos entre la memoria principal y los dispositivos
trasea proporcionadas son correctos, entonces entra en
del ordenador. En trminos generales, cada vez que algn
operacin el programa Shell, que en lo sucesivo se encar-
usuario oprime una tecla de una terminal, o que se debe
gar de la atencin normal del usuario que se dio de alta
leer o escribir informacin del disco magntico, se inte-
en esa terminal.
rrumpe al procesador central y el ncleo se encarga de
efectuar la operacin de transferencia. A partir de ese momento el responsable de atender al
usuario en esa terminal es el intrprete Shell. Cuando se
Cuando se inicia la operacin de la computadora, debe
desea terminar la sesin hay que desconectarse de Shell
cargarse en la memoria una copia del ncleo, que reside
(y, por lo tanto, de Unix), mediante una secuencia espe-
en el disco magntico (operacin denominada bootstrap).
cial de teclas (usualmente. < CTL > - D). A partir de ese
Para ello, se deben inicializar algunas interfaces bsicas
momento la terminal queda disponible para atender a un
de hardware; entre ellas, el reloj que proporciona inte-
nuevo usuario.
rrupciones peridicas. El ncleo tambin prepara algunas
estructuras de datos que abarcan una seccin de alma-
cenamiento temporal para transferencia de informacin
entre terminales y procesos, una seccin para almacena-
miento de descriptores de archivos y una variable que in-
3 Tipos de sistemas
dica la cantidad de memoria principal.
No necesariamente se necesita un ncleo para usar una
A continuacin, el ncleo inicializa un proceso especial, computadora. Los programas pueden cargarse y ejecu-
llamado proceso 0. En Unix, los procesos se crean me- tarse directamente en una computadora vaca, siempre
diante una llamada a una rutina del sistema (fork), que que sus autores quieran desarrollarlos sin usar ninguna
funciona por un mecanismo de duplicacin de procesos. abstraccin del hardware ni ninguna ayuda del sistema
Sin embargo, esto no es suciente para crear el primero operativo. Esta era la forma normal de usar muchas de
de ellos, por lo que el ncleo asigna una estructura de da- las primeras computadoras: para usar distintos programas
tos y establece apuntadores a una seccin especial de la se tena que reiniciar y recongurar la computadora cada
memoria, llamada tabla de procesos, que contendr los vez. Con el tiempo, se empez a dejar en memoria (an
descriptores de cada uno de los procesos existentes en el entre distintas ejecuciones) pequeos programas auxilia-
sistema. res, como el cargador y el depurador, o se cargaban desde
Despus de haber creado el proceso cero, se hace una co- memoria de slo lectura. A medida que se fueron desa-
pia del mismo, con lo que se crea el proceso uno; ste rrollando, se convirtieron en los fundamentos de lo que
3.2 Ncleos monolticos en contraposicin a microncleos 3
llegaran a ser los primeros ncleos de sistema operativo. la copia de variables que se realiza en la comunicacin
Hay cuatro grandes tipos de ncleos: entre mdulos.
Algunos ejemplos de microncleos:
Los ncleos monolticos facilitan abstracciones del
hardware subyacente realmente potentes y variadas. AIX
Los microncleos (en ingls microkernel) propor- La familia de microncleos L4
cionan un pequeo conjunto de abstracciones sim-
ples del hardware, y usan las aplicaciones llamadas El microncleo Mach, usado en GNU Hurd y en
servidores para ofrecer mayor funcionalidad.[3] Mac OS X
4 Referencias
[1] gnu.org, ed. (25 de julio). What is the GNU Hurd? (en
ingls). Consultado el 18 de febrero de 2010.
5 Vase tambin
Microncleo
Ncleo monoltico
Ncleo hbrido
Exoncleo
GNU GRUB
Ncleo Linux
Shell de Unix
6 Enlaces externos
7.2 Imgenes
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:Kernel-exo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/8/8f/Kernel-exo.svg Licencia: CC-BY-SA-3.0 Cola-
boradores: self-made, based on Image:Kernel-exo.png by User:Aholstenson Artista original: Surachit
Archivo:Kernel-microkernel.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/e/ec/Kernel-microkernel.svg Licencia: Pu-
blic domain Colaboradores: Trabajo propio Artista original: Mattia Gentilini
1
2 2 FIRMWARE HOY EN DA
zarlo con mucho cuidado, ya que al ser un componente 2.2 Reproductores de msica porttiles
vital cualquier fallo puede dejar al equipo inservible. Por
ejemplo, un fallo de alimentacin a mitad del proceso de Algunas compaas usan actualizaciones del rmware
actualizacin evitara la carga completa del cdigo que para agregar nuevos formatos de archivos de reproduc-
gobierna el equipo, quiz incluso la carga del cdigo que cin de sonido (codecs); el iriver agreg el formato ogg de
se encarga de actualizar el rmware, as que no podra- esta manera, por ejemplo. Otras caractersticas que pue-
mos actualizarlo de nuevo y por lo tanto el equipo dejara den cambiar con las actualizaciones del rmware son el
de funcionar. GUI e incluso la vida de la batera. La mayora de los
reproductores de msica modernos soportan las actuali-
zaciones del rmware.
2.1 Perifricos de computador
2.3 Telfonos mviles
La mayora de los perifricos del computador son de he-
cho computadores de propsito especial. Mientras que La mayora de los telfonos mviles tienen una capaci-
los dispositivos externos tienen el rmware almacena- dad de rmware actualizable por muchas de las mismas
do internamente, las modernas tarjetas de los perifri- razones que se especicaron anteriormente, pero algunos
cos de computadores tpicamente tienen grandes partes incluso pueden ser actualizados para mejorar la recepcin
de rmware que es cargado en el arranque por el sistema o la calidad del sonido.
husped, pues esto es ms exible. Dicho hardware por
lo tanto puede no funcionar completamente hasta que el
computador husped le haya cargado el rmware indis- 2.4 Automviles
pensable, a menudo por medio del driver de dispositivo
especco (o, ms exactamente, por medio de un subsis- Desde 1996 la mayora de los automviles han empleado
tema dentro del paquete del driver de dispositivo). Los una computadora a bordo y varios sensores para detectar
modernos drivers de dispositivo tambin pueden expo- problemas mecnicos. Los vehculos modernos tambin
ner una interfaz directa de usuario para la conguracin emplean sistemas controlados por computador, ABS y
adems de las llamadas/interfaces del sistema operativo osistemas de control de transmisin operados por compu-
de las Interfaces de programacin de aplicaciones (APIs).tadora. El conductor puede tambin recibir informacin
in-dash de esta manera mientras conduce, como, por
ejemplo, lecturas en tiempo real de la economa del com-
2.1.1 Retos del rmware en los PC bustible y de la presin del neumtico. La mayora del
rmware del vehculo puede ser actualizado en un distri-
En algn sentido, los varios componentes del rmwa- buidor local autorizado.
re son tan importantes como el sistema operativo en un
computador. Sin embargo, a diferencia de la mayora de
los sistemas operativos modernos, el rmware tiene rara- 2.5 Denicin del IEEE
mente un mecanismo automtico bien desarrollado para
actualizarse a s mismo para corregir los problemas de El glosario estndar de terminologa del software del
funcionalidad que son detectados despus de que la uni- Institute of Electrical and Electronics Engineers (IEEE),
dad es despachada. Std 610.12-1990, dene el rmware como sigue:
Software
7.2 Imgenes
Archivo:AMI_486DX_EISA_BIOS_20051109.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/0/0e/AMI_486DX_
EISA_BIOS_20051109.jpg Licencia: CC BY-SA 2.0 Colaboradores: File:Motherboard_Baby_AT.jpg Artista original: Andrew Dunn
Archivo:Television_remote_control.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/7/7f/Television_remote_control.
jpg Licencia: Public domain Colaboradores: ? Artista original: ?
1 Referencias
1
2 2 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
2.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
VirtualBox
1
2 1 TIPOS DE MQUINAS VIRTUALES
plataforma o programa. De esa manera, es posible la vi- Las funciones como servicios de terminal (Microsoft ter-
sualizacin de documentos o ejecucin de programas en minal service por ejemplo) y gestores de presentacin se
un ordenador que no estuviera proyectado para hacer esa encuadran en esa capa.
operacin. El emulador es un programa que crea para si Virtualizacin de aplicacin
mismo una capa extra entre una plataforma de ordenador,
denida por la plataforma del host y la plataforma donde Comprende la tecnologa de software, permitiendo la eje-
va a ser reproducida y denida por la plataforma objeti- cucin de aplicaciones en diferentes sistemas operativos
vo; as como transcurre en una mquina fsica, la mquina y distintas plataformas de hardware. Eso signica que
virtual (juez) emulada, es decir simula el hardware de la las aplicaciones pueden ser desarrolladas y escritas pa-
mquina fsica (host) por completo y un sistema operati- ra adoptar el uso de frameworks. Pero las aplicaciones
vo inmutable de otro ordenador puede ser ejecutado. Los que no usufructan esos frameworks no recibirn los be-
ejemplos de emulacin son el Bosch y el QEMU, desa- necios de virtualizacin de la aplicacin. Esa capa de
rrollados por la comunidad del Linux, y el virtual PC del virtualizacin permite.
Mac. Reinicializar la aplicacin en caso de fallo;
Virtualizacin nativa/servidor Iniciar una nueva instancia de la aplicacin que no al-
Signica particionar un servidor fsico en diversos ser- canza los objetivos en el nivel de servicio;
vidores virtuales o mquinas. Cada uno interacta con Responder a interrupciones planeadas y no planeadas;
independencia de los otros equipamientos. Aplicaciones,
datos y usuarios como si fuera un recurso aislado. La vir- Permitir el balanceo de carga de mltiples aplicaciones
tualizacin del servidor permite que la mquina virtual para alcanzar niveles altos de escalabilidad.
simule el hardware necesario para que un sistema ope- Microsoft explica que la virtualizacin de aplicacin pro-
rativo no modicado puede ser ejecutado aisladamente, porciona la capacidad de disponibilidad de aplicaciones a
compartiendo la misma CPU de la mquina fsica. Los ordenadores de usuarios nales sin la necesidad de insta-
ejemplos de virtualizacin nativa/servidor son Vmware lar las aplicaciones directamente en sus ordenadores. Eso
Workstation, IBM VM Y Parallels. (Miguel Daro Gon- es posible gracias a un proceso conocido como secuen-
zlez Ros. (2014). tecnologas de virtualizacin. Estados ciamiento de aplicacin, que permite que cada aplicacin
unidos: It campus academy). ejecute su propio entorno virtual de forma independien-
Para-virtualizacin te del ordenador cliente. Las aplicaciones secuenciadas
son aisladas unas de las otras, eliminando conictos entre
Al contrario de la virtualizacin nativa, en la para- aplicaciones, pero aun as ellos son capaces de interactuar
virtualizacin, el hardware de la mquina fsica no es si- con el ordenador cliente. (Miguel Daro Gonzlez Ros.
mulado en el sistema operativo de la mquina virtual. Se (2014). tecnologas de virtualizacin. Estados unidos: It
pasa el uso de una interface de programacin incorporada campus academy).
que la aplicacin puede utilizar para tomar los requisitos
del sistema operativo modicado de la mquina virtual. Virtualizacin de procesamiento
Vmware ESX server y citrix xen utilizan esa tecnologa. La capa de procesamiento agrega tecnologas de hardwa-
(Miguel Daro Gonzlez Ros. (2014). tecnologas de vir- re y software que ocultan conguraciones fsicas de hard-
tualizacin. estados unidos: It campus academy). ware de servicios de sistemas, sistemas operativos y apli-
Virtualizacin a nivel sistema operativo caciones. La tecnologa comprender la habilidad de pre-
sentar un sistema fsico a diversos recursos o viceversa.
La virtualizacin a nivel sistema operativo permite mu- La virtualizacin de procesamiento es utilizada, princi-
cha seguridad para la ejecucin de servidores virtuales y palmente, en la consolidacin de mltiples entornos en
servidores fsicos, compartiendo el mismo sistema opera- un nico sistema con alta disponibilidad. (Miguel Daro
tivo, sin embargo de forma aislada, sin que uno interera Gonzlez Ros. (2014). tecnologas de virtualizacin. Es-
en la ejecucin en las aplicaciones del otro. La virtuali- tados unidos: It campus academy).
zacin a nivel de sistema operativo es la base de tecno-
loga de los sistemas de virtualizacin Solaris containers, Virtualizacin de almacenamiento
bsd jails, y Linux server. (Miguel Daro Gonzlez Ros. Comprenden las tecnologas de software y hardware que
(2014). tecnologas de virtualizacin. Estados unidos: It ocultan quien son los sistemas de almacenamiento (sto-
campus academy). rage) y que tipo de equipamiento soporta aplicaciones
Virtualizacin de acceso y datos. La tecnologa ofrece diversos benecios. Entre
esos, permite que diferentes sistemas fsicos compartan
La virtualizacin de acceso incluye tecnologas de hard- un mismo recurso de almacenamiento, de forma transpa-
ware y software que permiten a cualquier equipamiento rente, de unos hacia los otros, copias de backup de aplica-
acceder a cualquier aplicacin aun sin tener mucho cono- ciones transaccionales en entorno en produccin y, prin-
cimiento sobre el otro. La aplicacin visualiza el equi- cipalmente, la reduccin de costes con compraventas de
pamiento con el cual est habituado a trabajar. El equipa- nuevos equipamientos de storage para almacenamiento
miento ve la aplicacin y ya sabe lo que debe mostrar.
3.2 Emulacin de un sistema no nativo 3
Monitor de tipo I.
1.2 Mquinas virtuales de proceso
Una mquina virtual de proceso, a veces llamada m-
quina virtual de aplicacin, se ejecuta como un proce-
so normal dentro de un sistema operativo y soporta un so-
lo proceso. La mquina se inicia automticamente cuando
se lanza el proceso que se desea ejecutar y se detiene pa-
ra cuando ste naliza. Su objetivo es el de proporcionar
un entorno de ejecucin independiente de la platafor-
ma de hardware y del sistema operativo, que oculte
los detalles de la plataforma subyacente y permita que un
programa se ejecute siempre de la misma forma sobre
cualquier plataforma.
La mquina virtual P-Code que permita a los pro- Adeos es una Capa de Abstraccin de Hardware que
gramadores de Pascal crear aplicaciones que se eje- puede ser cargado como un mdulo del ncleo Li-
cutasen sobre cualquier computadora con esta m- nux. Esto permite la carga de un ncleo en tiempo
quina virtual correctamente instalada. real como mdulo, al mismo tiempo que se ejecuta
Linux, pero con una prioridad ms alta.
La mquina virtual de Java.
Denali utiliza la paravirtualizacin para proporcio-
La mquina virtual del entorno .NET. nar mquinas virtuales de alto rendimiento sobre
Open Firmware procesadores x86.
OKL4 utiliza el software libre L4 (microncleo) co-
Esta tcnica permite que cualquier computadora pueda mo un hypervisor para proporcionar una solucin de
ejecutar software escrito para la mquina virtual. Slo la virtualizacin de alto rendimiento para sistemas em-
mquina virtual en s misma debe ser portada a cada una bebidos.
de las plataformas de hardware.
OpenVZ para Linux
3.3 Virtualizacin a nivel de sistema ope-
rativo Parallels
Esta tcnica consiste en dividir una computadora en va- QEMU puede emular una variedad de arquitecturas
rios compartimentos independientes de manera que en de CPU sobre muchas plataformas distintas.
cada compartimento podamos instalar un servidor. A
estos compartimentos se los llama entornos virtuales. Virtual Iron
Desde el punto de vista del usuario, el sistema en su con-
junto acta como si realmente existiesen varios servido-
Virtuozzo
res ejecutndose en varias mquinas distintas. Dos ejem-
plos son las zonas de Solaris (Solaris Zones) y la tcnica
de Micro Partioning de AIX. VMware
Xen
4 Lista de hardware con soporte
para virtualizacin KVM
8.2 Imgenes
Archivo:Java-jvm.png Fuente: https://upload.wikimedia.org/wikipedia/commons/0/0d/Java-jvm.png Licencia: CC-BY-SA-3.0 Colabo-
radores: Trabajo propio Artista original: Baptiste MATHUS
Archivo:VMM-Type1.JPG Fuente: https://upload.wikimedia.org/wikipedia/commons/5/53/VMM-Type1.JPG Licencia: Public domain
Colaboradores: Trabajo propio Artista original: Qingqing Chen
Archivo:VMM-Type2.JPG Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1a/VMM-Type2.JPG Licencia: Public domain
Colaboradores: Trabajo propio Artista original: Qingqing Chen
Archivo:VM_Monitor_IBM_VM_370.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/3/3d/VM_Monitor_IBM_VM_
370.jpg Licencia: Public domain Colaboradores: http://de.wikipedia.org/wiki/Bild:VM_Monitor_IBM_VM_370.jpg Artista original:
Segelschichen
Archivo:VMware-schema.png Fuente: https://upload.wikimedia.org/wikipedia/commons/7/71/VMware-schema.png Licencia: CC BY-
SA 3.0 Colaboradores: RadekK Artista original: Radoslaw Korzeniewski
Archivo:VirtualBox2.png Fuente: https://upload.wikimedia.org/wikipedia/commons/a/af/VirtualBox2.png Licencia: GFDL Colaborado-
res: Hidro (<a href='//commons.wikimedia.org/wiki/User_talk:Hidro' title='User talk:Hidro'>talk</a>) Artista original: VirtualBox: Sun
Microsystems, Inc., innotek GmbH; other works: various
tes cada vez que estos son solicitados. Esto signica que
todas las gestiones que se realizan se concentran en el ser-
vidor, de manera que en l se disponen los requerimien-
tos provenientes de los clientes que tienen prioridad, los
archivos que son de uso pblico y los que son de uso res-
tringido, los archivos que son de slo lectura y los que,
por el contrario, pueden ser modicados, etc. Este tipo
de red puede utilizarse conjuntamente en caso de que se
est utilizando en una red mixta.
1
2 4 VENTAJAS
Cada plataforma puede ser escalable independien- para actuar como clientes simples, mientras que el servi-
temente. Los cambios realizados en las plataformas dor acta como una cola que va capturando las peticiones
de los Clientes o de los Servidores, ya sean por ac- de los clientes (un proceso que debe pasar sus peticiones
tualizacin o por reemplazo tecnolgico, se realizan a otro, lo hace a travs de una cola, por ejemplo, una con-
de una manera transparente para el usuario nal. sulta a una base de datos, entonces, el segundo proceso
conecta con la base de datos, elabora la peticin, la pasa
La interrelacin entre el hardware y el software estn
a la base de datos, etc.). Esta arquitectura permite sim-
basados en una infraestructura poderosa, de tal for-
plicar en gran medida la implementacin de software.
ma que el acceso a los recursos de la red no muestra
La arquitectura P2P originalmente se bas en el concep-
la complejidad de los diferentes tipos de formatos
to Cliente-Cola-Cliente.
de datos y de los protocolos.
Su representacin tpica es un centro de trabajo
(PC), en donde el usuario dispone de sus propias 3 Arquitecturas multi-capas
aplicaciones de ocina y sus propias bases de da-
tos, sin dependencia directa del sistema central de La arquitectura cliente/servidor genrica tiene dos tipos
informacin de la organizacin. de nodos en la red: clientes y servidores. Consecuente-
mente, estas arquitecturas genricas se reeren a veces
Los servidores pueden ser aptridas o stateful. Un ser- como arquitecturas de dos niveles o dos capas.
vidor aptrida no guarda ninguna informacin entre las
peticiones. Un servidor stateful puede recordar la infor- Algunas redes disponen de tres tipos de nodos:
macin entre las peticiones. El alcance de esta informa-
cin puede ser global o sesin-especco. Un servidor del Clientes que interactan con los usuarios nales.
HTTP para las pginas estticas del HTML es un ejemplo
de un servidor aptrida mientras que Apache Tomcat es Servidores de aplicacin que procesan los datos para
un ejemplo de un servidor stateful. los clientes.
La interaccin entre el cliente y el servidor se describe a Servidores de la base de datos que almacenan los
menudo usando diagramas de secuencia. Los diagramas datos para los servidores de aplicacin.
de secuencia se estandarizan en el UML. Es importante
que los clientes no interacten entre s ni que lo hagan Esta conguracin se llama una arquitectura de tres-
clientes de capas bajas hacia otros de capas ms altas, por capas.
eso todo tiene que pasar por el servidor.
Otro tipo de arquitectura de red se conoce como arquitec- Ventajas de las arquitecturas n-capas:
tura del par-a-par porque cada nodo o caso del programa
es un cliente y un servidor y cada uno tiene responsa- La ventaja fundamental de una arquitectura n-
bilidades equivalentes. Ambas arquitecturas estn en uso capas comparado con una arquitectura de dos
amplio. tener encuenta que todo va en red --> niveles (o una tres-capas con una de dos nive-
les) es que separa hacia fuera el proceso, eso
ocurre para mejorar el balance la carga en los
2 Comparacin de la arquitectura diversos servidores; es ms escalable.
C/S con otras arquitecturas de
Desventajas de las arquitecturas de la n-capas:
red
Pone ms carga en la red, debido a una
2.1 Comparacin con las redes de pares mayor cantidad de trco de la red.
Es mucho ms difcil programar y probar
Las redes de pares, tambin conocidas como redes par-
el software que en arquitectura de dos ni-
a-par o peer-to-peer (abreviado con las siglas P2P) son
veles porque tienen que comunicarse ms
otro tipo de arquitectura de red.
dispositivos para terminar la transaccin
de un usuario.
2.2 Comparacin con la arquitectura
Cliente-Cola-Cliente
4 Ventajas
Si bien la clsica arquitectura C/S requiere uno de los
puntos terminales de comunicacin para actuar como un Centralizacin del control: los accesos, recursos y la
servidor, que puede ser algo ms difcil de aplicar, la ar- integridad de los datos son controlados por el servi-
quitectura Cliente-Cola-Cliente habilita a todos los nodos dor de forma que un programa cliente defectuoso o
3
Presentacin/Captacin de la informacin.
Procesos.
Almacenamiento de la informacin.
Puestos de trabajo
Comunicaciones.
10 Vase tambin
Cliente
Cliente hbrido
Servidor
Par-a-par
Lado del cliente
11 Referencias
5
12.2 Imgenes
Archivo:Client-server-model.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/c/c9/Client-server-model.svg Licencia:
LGPL Colaboradores:
Gnome-fs-client.svg Artista original: Gnome-fs-client.svg: David Vignoni
Archivo:Commons-emblem-issue.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/b/bc/Commons-emblem-issue.svg
Licencia: GPL Colaboradores: File:Gnome-emblem-important.svg Artista original: GNOME icon artists and User:ViperSnake151
1
2 5 ENLACES EXTERNOS
3 Vase tambin
Bootloader
Bootstrapping
Master Boot Record
MSCong
Proceso de arranque en Linux
4 Referencias
[1] http://splashy.alioth.debian.org/wiki
[2] http://web.archive.org/web/http://www.bootsplash.org/
Welcome_to_the_graphical_world_of_Linux
5 Enlaces externos
6.2 Imgenes
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:Fedora10_plymouth.png Fuente: https://upload.wikimedia.org/wikipedia/commons/f/f1/Fedora10_plymouth.png Licencia:
GFDL Colaboradores: https://fedoraproject.org/ Artista original: Team Fedora
Archivo:Linux_Boot.png Fuente: https://upload.wikimedia.org/wikipedia/commons/8/83/Linux_Boot.png Licencia: Public domain Co-
laboradores: Trabajo propio Artista original: es:Usuario:House
Archivo:PC_Boot.png Fuente: https://upload.wikimedia.org/wikipedia/commons/c/c4/PC_Boot.png Licencia: Public domain Colabora-
dores: Trabajo propio Artista original: es:Usuario:House
El proceso de arranque en Linux es el proceso de ini- y planicador, y el proceso de Init (que se ejecuta en
cializacin del sistema operativo que realiza Linux el el espacio de usuario).
ncleo o kernel (un componente de este sistema infor-
mtico), el programa en el sistema que asigna los recur- 5. El planicador toma control efectivo de la gestin
sos de la mquina a los otros programas que ejecuta. del sistema, y el ncleo queda dormido (inactivo).
1
2 4 FASE DEL KERNEL
La primera etapa del cargador de arranque carga el resto comandos. Contiene tres interfaces: un men de selec-
del gestor de arranque, que normalmente da un mensaje cin, un editor de conguracin, y una consola de lnea
que pregunta que sistema operativo (o tipo de sesin) el de comandos.
usuario desea inicializar. Bajo LILO, esto se hace a tra-
vs del mapa instalado que lee el archivo de conguracin
/etc/lilo.conf para identicar los sistemas disponibles. In- 3.2 LILO
cluye datos como la particin de arranque y la localiza-
cin del kernel para cada uno, as como las opciones per- LILO es ms antiguo. Es casi idntico a GRUB en su pro-
sonalizadas en su caso. El sistema operativo seleccionado ceso, excepto que no contiene una interfaz de lnea de
es cargado en la memoria RAM, un sistema de archivos comandos. Por lo tanto todos los cambios en su congu-
mnimo inicial se establece en la memoria RAM desde racin deben ser escritos en el MBR y luego reiniciar el
un archivo de imagen (" initrd "), y junto con los par- sistema. Un error en la conguracin puede dejar el dis-
metros adecuados, el control se pasa al sistema operativo co inservible para el proceso de arranque hasta tal grado,
activado recientemente. que sea necesario usar otro dispositivo (disquete, etc) que
LILO y GRUB dieren en algunos aspectos: contenga un programa capaz de arreglar el error. Ade-
ms, no entiende el sistema de archivos. En su lugar, la
LILO no entiende los sistemas de archivos, por lo ubicacin de los archivos de imagen se almacenan direc-
que utiliza desplazamientos de disco sin procesar y tamente en el MBR y el BIOS se utiliza para acceder a
el BIOS para cargar los datos. Se carga el cdigo del ellos directamente.
men y, a continuacin, en funcin de la respuesta,
carga, o el sector MBR del disco de 512 bytes como
en Microsoft Windows, o la imagen del kernel de 3.3 Loadlin
Linux.
Otra forma de cargar Linux es desde DOS o Windows
GRUB por el contrario comprende los sistemas de 9x, donde el ncleo de Linux reemplaza completamente
archivos comunes ext2 , ext3 y ext4. Debido a que la copia de funcionamiento de estos sistemas operativos.
GRUB almacena sus datos en un archivo de con- Esto puede ser til en el caso de hardware que necesita
guracin en vez de en el MBR y a que contiene un ser conectado a travs del software y la conguracin de
interfaz de lnea de comandos, a menudo es ms fcil estos programas slo est disponible para DOS y no pa-
recticar o modicar GRUB si est mal congurado ra Linux, debido a cuestiones de secretos industriales y
o corrupto. cdigo propietario. Sin embargo, esta tediosa forma de
arranque ya no es necesaria en la actualidad ya que Linux
tiene drivers para multitud de dispositivos hardware. Aun
3.1 GRUB as, esto era muy til en el pasado.
GRUB se carga y se ejecuta en 4 etapas: Otro caso es cuando Linux se encuentra en un dispositi-
vo que el BIOS no lo tiene disponible para el arranque.
1. La primera etapa del cargador la lee el BIOS desde Entonces, DOS o Windows pueden cargar el driver apro-
el MBR. piado para el dispositivo superando dicha limitacin del
BIOS, y cargar Linux desde all.
2. La primera etapa carga el resto del gestor de arran-
que (segunda etapa). Si la segunda etapa est en una
unidad grande, en ocasiones se carga una fase inter-
media 1.5, que contiene cdigo adicional para per- 4 Fase del kernel
mitir que los cilindros por encima de 1024, o unida-
des tipo LBA, puedan leerse. El gestor de arranque El kernel de Linux se encarga de todos los procesos
1.5 es almacenado (si es necesario) en el MBR o en del sistema operativo, como la gestin de memoria,
la particin de arranque. planicador de tareas, I/O, comunicacin entre procesos,
3. La segunda etapa del gestor de arranque ejecuta y y el control general del sistema. Este se carga en dos eta-
muestra el men de inicio de GRUB que permite pa: en la primera etapa el kernel (como un archivo imagen
al usuario elegir un sistema operativo y examinar y comprimido) se carga y se descomprime en memoria, y
modicar los parmetros de inicio. algunas funciones fundamentales como la gestin de me-
moria de base se establecen. El control entonces se cam-
4. Despus de elegir un sistema operativo, se carga y bia a la etapa nal para iniciar el kernel principal. Una
se le pasa el control. vez que el ncleo est en pleno funcionamiento - y como
parte de su puesta en marcha, despus de ser cargado y
GRUB soporta mtodos de arranque directo, arranque ejecutado - el kernel busca un proceso de inicio para eje-
chain-loading, LBA, ext2, ext3, ext4 y hasta un pre- cutar, que (separadamente) ja un espacio de usuario y
sistema operativo en mquinas x86 totalmente basado en los procesos necesarios para un entorno de usuario y ul-
3
5 El proceso de inicio
4.1 Fase de carga del kernel
El trabajo de Init es conseguir que todo funcione como
El kernel es cargado normalmente como un archivo ima- debe ser una vez que el kernel est totalmente en funcio-
gen, comprimido dentro de otro con zlib como zImage o namiento. En esencia, establece y opera todo el espacio
bzImage. Contiene una cabecera de programa que hace de usuario. Esto incluye la comprobacin y montaje de
una cantidad mnima de instalacin del hardware, des- sistemas de archivos, la puesta en marcha los servicios de
comprime la imagen completamente en la memoria alta usuario necesarios y, en ltima instancia, cambiar al en-
, teniendo en cuenta cualquier disco RAM si est con- torno de usuario cuando el inicio del sistema se ha com-
gurado. A continuacin, lleva a cabo su ejecucin. Esto pletado. Es similar a los procesos Init de Unix y BSD,
se realiza llamando la funcin startup del kernel (en los de la que deriva, pero en algunos casos se ha apartado o
procesadores x86 a travs de la funcin startup_32() del se hicieron a la medida. En un sistema Linux estndar,
archivo /arch/i386/boot/head). Init se ejecuta con un parmetro, conocido como nivel de
ejecucin, que tiene un valor entre 1 y 6, y que determina
que subsistemas pueden ser operacionales. Cada nivel de
4.2 Fase de inicio del kernel ejecucin tiene sus propios scripts que codican los dife-
rentes procesos involucrados en la creacin o salida del
La funcin de arranque para el kernel (tambin llamado nivel de ejecucin determinado, y son estas secuencias
intercambiador o proceso 0) establece la gestin de me- de comandos los necesarios en el proceso de arranque.
moria (tablas de paginacin y paginacin de memoria), Los scripts de Init se localizan normalmente en directo-
detecta el tipo de CPU y cualquier funcionalidad adicio- rios con nombres como "/etc/rc.... El archivo de con-
nal como capacidades de punto otante, y despus cam- guracin de ms alto nivel para Init es /etc/inittab.
bia a las funcionalidades del kernel para arquitectura no
especcas de Linux, a travs de una llamada a la funcin Durante el arranque del sistema, se verica si exis-
start_kernel(). te un nivel de ejecucin predeterminado en el archivo
/etc/inittab, si no, se debe introducir por medio de la con-
start_kernel ejecuta una amplia gama de funciones de ini- sola del sistema. Despus se procede a ejecutar todos los
cializacin. Establece el manejo de interrupciones (IRQ), scripts relativos al nivel de ejecucin especicado.
congura memoria adicional, comienza el proceso de ini-
cializacin (procesa el espacio del primer usuario), y lue- Despus de que se han dado lugar todos los procesos es-
go comienza la tarea inactiva a travs de cpu_idle(). En pecicados, Init se aletarga, y espera a que uno de estos
particular, el proceso de inicio del kernel tambin monta tres eventos sucedan:- que procesos comenzados nalicen
el disco RAM inicial ("initrd") que se ha cargado ante- o mueran; un fallo de la seal de potencia (energa); o una
riormente como el sistema raz temporal durante la fase peticin a travs de /sbin/telinit para cambiar el nivel de
de arranque. Esto permite que los mdulos controlado- ejecucin.
res se carguen sin depender de otros dispositivos fsicos
y drivers y mantiene el kernel ms pequeo. El sistema
de archivos raz es cambiado ms tarde a travs de la lla- 6 Enlaces externos
mada a pivot_root(), que desmonta el sistema de archivos
temporal y lo reemplaza por el real una vez que ste sea El cdigo de un IPL en GNU ensamblador
accesible. La memoria utilizada por el sistema de archi-
vos temporal es entonces recuperada.
Por lo tanto, el ncleo inicializa los dispositivos, mon-
ta el sistema de archivos raz especicado por el ges-
tor de arranque como de slo lectura , y se ejecuta Init
(/sbin/init), que es designado como el primer proceso eje-
cutado por el sistema (PID=1). Tambin puede ejecutar
opcionalmente initrd para permitir instalar y cargar dis-
positivos relacionados (disco RAM o similar), para ser
manipulados antes de que el sistema de archivos raz est
montado.
En este punto, con las interrupciones habilitadas, el pro-
gramador puede tomar el control de la gestin general del
sistema, para proporcionar multitarea preventiva, e ini-
ciar el proceso para continuar con la carga del entorno de
4 7 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
7.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
1
2 3 MOVIMIENTO DEL CDIGO ABIERTO
1-5 de marzo de 1999: LinuxWorld Conference and 3. La posibilidad de evitar monopolios de software
Expo: primera exposicin sobre GNU/Linux. HP, propietario: Para no depender de un nico fabrican-
IBM, SAP inician el comienzo del apoyo de las r- te de software.
mas comerciales.
4. Un modelo de avance: Por lo cual la informacin no
15 de marzo de 1999: Apple lanza Darwin bajo li- se oculta.
cencia cdigo abierto.
Al igual que el software libre, el cdigo abierto tiene una
4 de junio de 1999: Microsoft arma que Li-
serie de requisitos[2] necesarios para que un programa
nux vende ms que Windows 98 en las grandes
pueda considerarse dentro de este movimiento, estos son:
supercies.[1]
8 de junio de 2015: Apple anuncia Swift 2 bajo li- Libre redistribucin: el software debe poder ser re-
cencia cdigo abierto. galado o vendido libremente.
3
Cdigo fuente: el cdigo fuente debe estar incluido 5 Extensiones del concepto
u obtenerse libremente.
Recientemente se est aplicando por extensin el trmino
Trabajos derivados: la redistribucin de modica- cdigo abierto o su equivalente en ingls open source
ciones debe estar permitida. a creaciones que no son programas. En concreto se ha-
bla popularmente de cine open source para referirse a ci-
Integridad del cdigo fuente del autor: las licencias ne bajo distintos tipos de licencias libres.[cita requerida] Otro
pueden requerir que las modicaciones sean redis- ejemplo es el proyecto de una economa de cdigo abierto
tribuidas solo como parches. de la plataforma Open Source Ecology, comenzado con el
desarrollo de mquinas industriales de cdigo abierto.[3]
La licencia no debe discriminar a ninguna persona o
grupo: nadie puede dejarse fuera.
Diseo abierto
4 Programas en cdigo abierto
9.2 Imgenes
Archivo:MapaConceptualFLOSS.png Fuente: https://upload.wikimedia.org/wikipedia/commons/7/79/MapaConceptualFLOSS.png
Licencia: CC BY 3.0 Colaboradores: Trabajo propio Artista original: VARGUX
Archivo:Opensource.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/42/Opensource.svg Licencia: CC BY 2.5 Colabo-
radores: Simon Phipps, former president of OSI Artista original: Open Source Initiative ocial SVG
USAR
APRENDER
ADAPTAR
REDISTRIBUIR PUBLICAR
MEJORAS
UNA FORMA TICA
DE ENTENDER VALORES
modicadas del programa.
con cualquier el programa a copias para todos para beneciar a EL SOFTWARE tica, creatividad,
propsito
(libertad 0)
sus necesidades
(libertad 1)
(libertad 2) toda la comunidad
(libertad 3) En su desarrollo,
comercializacin,
eciencia, colaboracin,
no discrimacin, ciencia, Tampoco debe confundirse software libre con software
a
transparencia, seguridad,
es
distribucin y uso
es competitividad, privacidad,
pr
que permita solidaridad,y sobre todo,
de dominio pblico. Este ltimo es aquel que no requie-
ex
libertad
LICENCIA requiere
ne LIBRE
SOFTWARE LIBRE
c es
i ta
GPL (Copyleft),
Apache, BSD, rib
uy
e
re de licencia, pues sus derechos de explotacin son para
st para
di
Creative Commons
(Share Alike) producen y
depuran colaboran
(netiqueta)
toda la humanidad, porque pertenece a todos por igual.
CDIGO
DISTRIBUCIONES
Debian GNU/Linux
FUENTE
instrucciones
DESARROLLADORES/AS
WikipediA, Greenpeace
Cualquiera puede hacer uso de l, consignando su autora
do
ONGs:
Ubuntu
GNew Sense
OpenBSD m
pi
la
con
usuarios y proyectos como: INSTITUCIONES: UNESCO, NASA
EMPRESAS: Google, IBM, SUN, Nokia
PAISES-REGIONES: Extremadura
original. Este software sera aquel cuyo autor lo dona a la
OpenSolaris co Francia, China, Brasil, Alemania
reunidos
PROGRAMAS CONTENIDOS
GNU, KDE
Enlightenment, Linux
Gnome, Window Maker,
UNIVERSIDADES: MIT, Berkeley
El 89% del TOP500 de superordenadores
humanidad o cuyos derechos de autor han expirado. Si un
EJECUTABLES LIBRES Apache, PostgreSQL, reciben
en re
sp
et
fuentes tipogrcas,
traducciones, localizaciones,
Gentoo, MySQL,
PHP, X.org
y dan autor condiciona su uso bajo una licencia, por muy dbil
an plantillas, sonidos, imgenes,
Openoice.org,
Firefox, Audacity,
Scribus, Inkscape,
FAQs, guas, manuales...
ESTNDARES
SOPORTE
EMPRESAS: p.ej. en Espaa dan soporte 150 en ASOLIF y 588 segn Libro Blanco
que sea, ya no es del dominio pblico.
Blender, GIMP, EVENTOS: aKademy, FLISOL JORNADAS DE Hispalinux, JRSL, Hackmeeting
Ktouch, K3b ABIERTOS LUGS: Velug, GPUL, CafeLug BLOGOSFERA: bulma.net, vivalinux.com.ar
~
Tab
Caps
1
A
2
Q W E
3
S
4
D
R
5
F
T
6
G
Y
H
7
U
8
J
I
9
K
O
0
L
P
;
-
[
=
'
]
\ BS
Enter
UTF-8 de IETF WIKIS: emacswiki, wiki.debian.org FOROS: preguntaslinux, ubuntu Mxico
IRC (Chats): OFTC, freenode LISTAS DE CORREO: bulmailing, asturlinux
,
1 Historia
Mapa conceptual del software libre.
1
2 2 LAS CUATRO LIBERTADES DEL SOFTWARE LIBRE
cambiar. Las computadoras ms modernas comenzaban 2 Las cuatro libertades del software
a utilizar sistemas operativos privativos, forzando a los
usuarios a aceptar condiciones restrictivas que impedan
libre
intercambiar, compartir o realizar modicaciones a dicho
software.
En caso de que algn usuario o programador encontrase De acuerdo con la denicin establecida por Richard
algn error en la aplicacin, lo nico que poda hacer era Stallman, un software es libre cuando garantiza las si-
darlo a conocer a la empresa desarrolladora para que sta guientes libertades:[6]
lo solucionara. Aunque el programador estuviese capaci- Ciertos tericos usan este cuarto punto (libertad 3) pa-
tado para solucionar el problema y lo desease hacer sin ra justicar parcialmente las limitaciones impuestas por
pedir nada a cambio, el contrato le impeda que modi- la licencia GNU GPL frente a otras licencias de softwa-
case el software. re libre (ver Licencias GPL).[cita requerida] Sin embargo el
En 1971, el estadounidense Richard Matthew Stallman, sentido original es ms libre, abierto y menos restrictivo
estudiante de Fsica de la Universidad de Harvard, form que el que le otorga la propia situacin de incompatibili-
parte como hacker del Laboratorio de Inteligencia Arti- dad, que ha sido resuelta a cierto grado en versin 3 de la
cial del Instituto Tecnolgico de Massachusetts. En la licencia GNU GPL.
dcada de 1980, la cultura hacker que constitua la vi- Tanto la Open Source Initiative[7] como la Free Software
da de Stallman empez a disolverse bajo la presin de Foundation,[8] mantienen en sus webs ociales, listados
la comercializacin en la industria del software. Los de- de las licencias de software libre que aprueban.
ms compaeros de Stallman, tambin hackers del labo-
El trmino software no libre se emplea para referirse al
ratorio, fundaron la compaa Symbolics que intentaba
software distribuido bajo una licencia de software ms
reemplazar el software libre producido en las instalacio-
restrictiva que no garantiza estas cuatro libertades. Las
nes por software no libre de su propiedad. Stallman con-
leyes de la propiedad intelectual reservan la mayora de
t, aos despus, que por aquellos aos, en el laboratorio
los derechos de modicacin, duplicacin, y redistribu-
donde trabajaba, haban recibido una impresora donada
cin, para el dueo del copyright; el software dispuesto
por una empresa externa. El dispositivo, que era utiliza-
bajo una licencia de software libre rescinde especca-
do en red por todos los trabajadores, pareca no funcionar
mente la mayora de estos derechos reservados.
a la perfeccin, dado que cada cierto tiempo el papel se
atascaba. Como agravante, no se generaba ningn aviso La denicin de software libre no contempla la cuestin
que se enviase por red e informase a los usuarios de la del precio; un eslogan frecuentemente usado es libre co-
situacin. mo en libertad, no como en cerveza gratis o en ingls
Free as in freedom, not as in free beer (aludiendo a la
La prdida de tiempo era constante, ya que en ocasiones,
ambigedad del trmino ingls free), y es habitual ver a
los trabajadores enviaban por red sus trabajos a imprimir
la venta CD de software libre como distribuciones Linux.
y al ir a buscarlos se encontraban la impresora atascada
Sin embargo, en esta situacin, el comprador del CD tiene
y una cola enorme de trabajos pendientes. Richard Stall-
el derecho de copiarlo y redistribuirlo. El software gratis
man decidi arreglar el problema, e implementar el en-
puede incluir restricciones que no se adaptan a la deni-
vo de un aviso por red cuando la impresora se bloqueara.
cin de software libre por ejemplo, puede no incluir el
Para ello necesitaba tener acceso al cdigo fuente de los
cdigo fuente, puede prohibir explcitamente a los distri-
controladores de la impresora. Pidi a la empresa propie-
buidores recibir una compensacin a cambio, etc..
taria de la impresora lo que necesitaba, comentando, sin
pedir nada a cambio, qu era lo que pretenda realizar. La Para evitar la confusin, algunas personas utilizan los tr-
empresa se neg a entregarle el cdigo fuente. En ese pre- minos libre (software libre) y gratis (software gratis)
ciso instante, Stallman se vio en una encrucijada: deba para evitar la ambigedad de la palabra inglesa free. Sin
elegir entre aceptar el nuevo software propietario rman- embargo, estos trminos alternativos son usados nica-
do acuerdos de no revelacin y acabar desarrollando ms mente dentro del movimiento del software libre, aunque
software propietario con licencias restrictivas, que a su estn extendindose lentamente hacia el resto del mundo.
vez deberan ser ms adelante aceptadas por sus propios Otros deenden el uso del trmino open source software
colegas. Stallman renunci a su empleo, viviendo de rea- (software de cdigo abierto). La principal diferencia en-
lizar programas libres y vender las copias en cintas y el da tre los trminos open source y free software es que
27 de septiembre de 1983, anunci en varios grupos de este ltimo tiene en cuenta los aspectos ticos y los-
noticias de Usenet el inicio del Proyecto GNU, que per- cos de la libertad, mientras que el open source se basa
segua crear un sistema operativo completamente libre.[4] nicamente en los aspectos tcnicos.
En 1985, Stallman fund la organizacin Free Software En un intento por unir los mencionados trminos que se
Foundation (FSF) e introdujo la denicin formal de soft- reeren a conceptos semejantes, se est extendiendo el
ware libre y el concepto de copyleft, que desarroll para uso de la palabra "FLOSS" con el signicado de free/libre
otorgar libertad a los usuarios y para restringir las posibi- and open source software e, indirectamente, tambin a la
lidades de apropiacin del software.[5] comunidad que lo produce y apoya.
3.2 Licencias LGPL 3
son compatibles. Puede argumentarse que esta licencia desarrollo nal tiene que estar licenciado GPL). Desde
asegura verdadero software libre, en el sentido que el un punto de vista del desarrollador la GPL presenta un
usuario tiene libertad ilimitada con respecto al software, inconveniente en este punto, y lamentablemente mucha
y que puede decidir incluso redistribuirlo como no libre. gente se cierra en banda ante el uso de dicho cdigo. No
Otras opiniones estn orientadas a destacar que este tipo obstante la MPL no es tan excesivamente permisiva como
de licencia no contribuye al desarrollo de ms software las licencias tipo BSD. Estas licencias son denominadas
libre (normalmente utilizando la siguiente analoga: una de copyleft dbil. La NPL (luego la MPL) fue la primera
licencia BSD es ms libre que una GPL si y slo si se opi- licencia nueva despus de muchos aos, que se encargaba
na tambin que un pas que permita la esclavitud es ms de algunos puntos que no fueron tomados en cuenta por
libre que otro que no la permite). las licencias BSD y GNU. En el espectro de las licencias
de software libre se la puede considerar adyacente a la
licencia estilo BSD, pero perfeccionada.
3.5 Licencia PSFL
La Python Software Foundation License, anterior- 3.8 Licencias CDDL
mente Python License, es una licencia de software li-
bre permisiva, al estilo de la licencia BSD, es decir, que Common Development and Distribution License (Li-
cumple con los requisitos OSI para ser declarada licencia cencia Comn de Desarrollo y Distribucin), tambin
de software libre; adems, es compatible con la licencia conocida como Sun Public License (SPL) versin 2, es
GPL. A diferencia de la licencia GPL, y como la mayora una licencia de cdigo abierto (OSI) y libre, producida
de licencias tipo BSD, la licencia PSFL no es una licencia por Sun Microsystems, basada en la Mozilla Public Li-
copyleft, y permite modicaciones del cdigo fuente, as cense o MPL, versin 1.1. La licencia CDDL fue envia-
como la creacin de trabajos derivados, sin requerir que da para su aprobacin al Open Source Initiative el 1 de
ni las modicaciones ni los trabajos derivados tengan que diciembre de 2004, y fue aprobada como una licencia de
ser a su vez de cdigo abierto. La licencia PSFL est den- cdigo abierto a mediados de enero de 2005. En el primer
tro de las listas de licencias aprobadas tanto por la Free borrador hecho por el comit de divulgacin de licencias
Software Foundation como por la Open Source Initiative. OSI, la CDDL es una de las nueve licencias ms popula-
res, mundialmente usadas o con fuertes comunidades.
Licencia Pblica de Eclipse est diseado para ser una li- 4 Comparacin con el software de
cencia de software favorable a los negocios y cuenta con
disposiciones ms dbiles que las licencias copyleft con-
cdigo abierto
temporneas. El receptor de programas licenciados EPL
pueden utilizar, modicar, copiar y distribuir el trabajo y
las versiones modicadas, en algunos casos estn obliga-
dos a liberar sus propios cambios.
to), la mayora de la gente lo interpreta como un esque- Algunos consideran el software libre como una for-
ma de distribucin, e intercambia libremente los trminos ma de trabajo colaborativo en un modelo de merca-
cdigo abierto y software libre. An cuando existen do, tal como se haba planteado el cooperativismo.
importantes diferencias loscas entre ambos trminos,
especialmente en trminos de las motivaciones para el
desarrollo y el uso de tal software, raramente suelen tener Algunos comparan el software libre a una economa
impacto en el proceso de colaboracin. del regalo, donde el valor de una persona est basado
en lo que sta da a los dems, sin que incurra valor
Aunque el trmino cdigo abierto elimina la ambige- monetario formal de por medio.
dad de libertad frente a precio (en el caso del ingls), in-
troduce una nueva: entre los programas que se ajustan a
la denicin de cdigo abierto, que dan a los usuarios la Grupos como Oekonux e Hipatia consideran que
libertad de mejorarlos, y los programas que simplemente todo debera producirse de esta forma y que es-
tiene el cdigo fuente disponible, posiblemente con fuer- te modelo de produccin no se limita a reempla-
tes restricciones sobre el uso de dicho cdigo fuente. Mu- zar el modelo no libre de desarrollo del software.
cha gente cree que cualquier software que tenga el cdigo La cooperacin basada en la libre asociacin pue-
fuente disponible es de cdigo abierto, puesto que lo pue- de usarse y se usa para otros propsitos (tales como
den manipular (un ejemplo de este tipo de software sera escribir enciclopedias, por ejemplo).
el popular paquete de software gratuito Graphviz, inicial-
mente no libre pero que inclua el cdigo fuente, aunque
luego AT&T le cambi la licencia). Sin embargo, mucho Hay proyectos de desarrollo con impulso guberna-
de este software no da a sus usuarios la libertad de distri- mental que utilizan software libre, as como en pro-
buir sus modicaciones, restringe el uso comercial, o en yectos de voluntariado en pases en vas de desarro-
general restringe los derechos de los usuarios. llo.
6 Software libre en la Administra- vida de los mismos. Los servicios sobre el software
libre se ofrecen en un mercado de libre competen-
cin Pblica cia, por lo que sus precios son menores a los ofre-
cidos por el mantenimiento y soporte de programas
Entre los argumentos que sustentan la utilizacin de soft- propietarios.
ware libre en las administraciones pblicas encontramos
los siguientes[17] :
Existen pases en los cuales, sus administraciones p-
blicas, han mostrado apoyo al software libre, sea
Defensa del inters general. El uso de software li- migrando total o parcialmente sus servidores y sis-
bre benecia a la sociedad en su conjunto. Fomenta temas de escritorio, o subvencionndolo. Este es
el crecimiento de la industria nacional de servicios y el caso de Alemania,[19][20] Brasil,[21][22] Cuba,[23]
permite ahorrar divisas. La Administracin Pblica Chile,[24] China,[25] Ecuador, Espaa,[26][27] Francia,[28]
tiene cierta funcin de gua de la industria que la ha- Mxico,[29] Repblica Dominicana,[30] , Venezuela.[31] ,
ce tener un gran impacto, que se considera que debe Argentina [32] , entre otros.
dirigirse a la creacin de un mbito tecnolgico ge-
nerador de riqueza nacional.[18]
los libros, folletos y otros escritos; las conferencias, alo- 9.7 Per
cuciones, sermones y otras obras de la misma naturale-
za; las obras dramticas o dramtico-musicales; las obras Proyecto de Ley sobre software libre nmero 1609, di-
coreogrcas y las pantomimas; las composiciones mu- ciembre de 2001. Proyecto de ley propuesto por el con-
sicales con letra o sin ella; las obras cinematogrcas, a gresista Edgar Villanueva Nez en diciembre de 2001,
las cuales se asimilan las obras expresadas por procedi- el cual promueve el uso del software libre en la adminis-
miento anlogo a la cinematografa, inclusive los video- tracin pblica.
gramas; las obras de dibujo, pintura, arquitectura, escul-
tura, grabado, litografa; las obras fotogrcas o las cua-
les se asimilan las expresadas por procedimiento anlogo 9.8 Uruguay
a la fotografa; las obras de arte aplicadas; las ilustracio-
nes, mapas, planos croquis y obras plsticas relativas a la En Uruguay, a partir de 2003 (Comisin de Constitucin,
geografa, a la topografa, a la arquitectura o a las cien- Cdigos, Legislacin General y Administracin Carpeta
cias y, en n, toda produccin del dominio cientco, li- N 3565 de 2003 Repartido N 1510 de noviembre de
terario o artstico que pueda reproducirse, o denirse por 2003) se estudi una Ley de Software Libre y Forma-
cualquier forma de impresin o de reproduccin, por fo- tos Abiertos en el Estado. La primera versin planteaba
nografa, radiotelefona o cualquier otro medio conocido el uso de formatos abiertos en todo el Estado y Software
o por conocer. Libre en la educacin, con una segunda versin presen-
tada en el 2006, que ya planteaba dar preferencia al uso
Como el software se compara a la obra literaria se de- de Software Libre en todos los organismos del Estado[46] .
be registrar ante la Direccin Nacional de Derechos de Luego dicha versin con modicaciones, fue la que reci-
Autor del Ministerio del Interior. Esta se hace de manera bi media sancin en la Cmara de Diputados el 19 de
declarativa y es gratuita. Como el software libre no es pa- diciembre de 2012[47] ,[48] la cual fue apoyada por la co-
tentable reconoce la propiedad intelectual. El creador de munidad de software libre uruguaya.[49] Finalmente, la
un software libre conserva los derechos morales y el de ley fue aprobada en diciembre de 2013[50] establecindo-
paternidad. El autor de una obra derivada de la original se en ella que:[51]
tambin tiene derecho al reconocimiento de la paternidad
sobre la obra derivada.
1. El Estado deber preferir la inversin y desarrollo
en software libre sobre el que no lo es, salvo cuando
ste no cumpla las necesidades tcnicas requeridas.
9.4 Ecuador
2. En caso de que el Estado decida invertir en softwa-
El Presidente Rafael Correa Delgado, el da jueves 10 de re privativo, deber justicar las razones del gasto y
abril de 2008, rm el Decreto N 1014; en el cual or- argumentar su eleccin.
dena, que el software usado por las administraciones p-
3. El Estado deber distribuir y aceptar toda informa-
blicas del pas sea software libre e implcitamente basado
cin en al menos un formato abierto, estndar y li-
en estndares abiertos.[44][45]
bre.
4. El intercambio de informacin a travs de Internet
9.5 Espaa deber ser posible en al menos un programa con li-
cencia libre.
La Orden EDU/2341/2009, de 27 de agosto, por la que se
crea el Centro Nacional de Desarrollo Curricular en Sis-
temas no Propietarios, tiene como nalidad el diseo, el 9.9 Venezuela
desarrollo y la promocin de contenidos educativos digi-
tales para colectivos educativos especcos, en el mbito El Decreto presidencial 3390 de fecha 23 de diciembre de
de las Tecnologas de la Informacin y la Comunicacin, 2004 y publicado en la Gaceta Ocial de Venezuela N
que se centra en promocionar y aplicar estrategias diri- 38095 del 28 de diciembre de 2004, establece textual-
gidas a poner a disposicin de los centros escolares re- mente en su artculo 1 que los entes pblicos emplearn
cursos y contenidos digitales de calidad, desarrollados en prioritariamente Software Libre, en sus sistemas, proyec-
software libre. tos y servicios informticos, por lo que dichas organiza-
ciones deben iniciar procesos de migracin gradual y pro-
gresiva de stos hacia el Software Libre[52]
9.6 Francia
9.10 Costa Rica
Proyecto de Ley nmero 2000-117. Proyecto propuesto
por Latte, Trgouet y Cabanel. ste abogaba por el uso En Costa Rica disponen de la Red Costarricense de Soft-
obligatorio de software libre en la Administracin. ware Libre, una agrupacin sin nimo de lucro fundada en
10 11 REFERENCIAS
Radio libre [19] DE: Foreign ministry: 'Cost of Open Source desktop
maintenance is by far the lowest' .
Recursos educativos abiertos
[20] DiarioTi: Diario Tecnologas de la Informacin. Archi-
Video libre vado desde el original el 26 de noviembre de 2015.
11
[21] El gobierno de Lula levanta la bandera del 'software' libre [39] Debian -- Situacin de los desarrolladores. www.
ELPAS.com. debian.org. Consultado el 21 de septiembre de 2016.
[23] Cuba abandona Windows y se pasa a Linux EL- [41] Boletn Ocial del martes 23 de noviembre de 2010 -
PAS.com. Ley Provincial 13139-2010. Consultado el 30 de mayo
de 2015.
[24] Regulador e IBM promueven Linux en el Gobierno, Chi-
le, Tecnologas de Info., noticias. [42] Software Libre de Argentina (7 de noviembre de 2013).
El Software Libre en Bolivia es Ley Reglamentada. Es-
[25] China Earthquake Administration Chooses Linux - Chi- tado. Consultado el 14 de diciembre de 2013.
naTechNews.com - The Technology Source for the Latest
Chinese News on Internet, Computers, Digital, Science, [43] Software Libre de Argentina (17 de noviembre de 2013).
Electronics, La.... Dcreto Supremo N 1793. Estado. Consultado el 14 de
diciembre de 2013.
[26] Extremadura usar 'software' 'libre en los 10.000 orde-
[44] Alan Lorenzo (11 de abril de 2008). Ecuador migra a
nadores de la administracin ELPAS.com.
software libre va Decreto. Consultado el 14 de diciem-
[27] Trejo Pulido, Ana; Domnguez Dorado, Manuel; Ram- bre de 2013.
samy, Pop (2012). El Software Libre en los Organismos
[45] David Ochoa (16 de abril de 2012). Una ley para promo-
Pblicos de mbito Estatal. CENATIC. ISBN 978-84-
ver el software libre. Consultado el 14 de diciembre de
15927-00-6. Consultado el 24 de febrero de 2015.
2013.
[28] French police: we saved millions of euros by adopting [46] Repartido 779 de setiembre/2006. Parlamento del Uru-
Ubuntu - Ars Technica. guay. Consultado el 21 de enero de 2016.
[29] Michoacn ahorra muchos millones con software libre - [47] Proyecto de ley Software libre y formatos abiertos en el
El Universal - Finanzas. Estado". CESoL (Centro de Estudios de Software). Con-
sultado el 21 de enero de 2016.
[30] El Estado Dominicano se evitara invertir los US$600
millones en el Gobierno Electrnico :: CLAVE digital [48] Proyecto de ley Software libre y formatos abiertos en el
mvil. Estado, fuente: Poder Legislativo - Cmara de Represen-
tantes - Uruguay.
[31] Gobierno de Venezuela. Apoyo del Gobierno Venezo-
lano al Software Libre. Archivado desde el original el 26 [49] Comunicado de la comunidad sobre Ley de Software Libre
de noviembre de 2015. y Formatos Abiertos en el Estado, 13 de marzo de 2013.
[32] Agencia Telam (25 de abril de 2014). La relacin en- [50] Ley 19.179: SOFTWARE LIBRE Y FORMATOS
tre el software libre y el Estado marc el inicio del Flisol ABIERTOS EN EL ESTADO. Parlamento del Uruguay.
2014. www.telam.com.ar. Consultado el 1 de septiembre Consultado el 24 de octubre de 2016.
de 2016.
[51] Uruguay pone el ejemplo con la ley de software libre y
[33] Entrevista de EL TIEMPO a Walter Bender - Archivo formatos abiertos
Digital de Noticias de Colombia y el Mundo desde 1.990
- eltiempo.com. Consultado el 1 de septiembre de 2016. [52] Decreto N 3.390. 28 de diciembre de 2004. Consulta-
do el 24 de febrero de 2015.
[34] Software libre y educacin - Proyecto GNU - Free Soft-
[53] Polticas de software libre en Latinoamrica (en espa-
ware Foundation. www.gnu.org. Consultado el 31 de
ol de Espaa). 30 de abril de 2015. Consultado el 3 de
marzo de 2016.
octubre de 2016.
[35] Da Rosa, Fernando; Heinz, Federico. Gua prctica sobre
software libre: su seleccin y aplicacin local en Amrica
Latina y el Caribe. pp. 53-54. ISBN 92-9089-103-3. Con- 12 Enlaces externos
sultado el 24 de febrero de 2015.
[36] Por qu las escuelas deben usar exclusivamente software Wikimedia Commons alberga contenido multi-
libre. Consultado el 31 de agosto de 2016. media sobre Software libre. Commons
[37] La catedral y el bazar
Wikinoticias tiene noticias relacionadas con
[38] Jordi Mas Hernndez (coordinador), David Megas Jim- Software libre.Wikinoticias
nez (coordinador), Jess M. Gonzlez Barahona, Joaqun
Seoane Pascual, Gregorio Robles (2008). Introduccin al
software libre. Barcelona: Fundaci per a la Universitat Wikiversidad alberga proyectos de aprendizaje
Oberta de Catalunya. sobre Software libre.Wikiversidad
12 12 ENLACES EXTERNOS
13.2 Imgenes
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:Heckert_GNU_white.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/2/22/Heckert_GNU_white.svg Licencia:
CC BY-SA 2.0 Colaboradores: gnu.org Artista original: Aurelio A. Heckert <aurium@gmail.com>
Archivo:MapaConceptualFLOSS.png Fuente: https://upload.wikimedia.org/wikipedia/commons/7/79/MapaConceptualFLOSS.png
Licencia: CC BY 3.0 Colaboradores: Trabajo propio Artista original: VARGUX
Archivo:Mapa_conceptual_del_software__libre.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/6/61/Mapa_
conceptual_del_software_libre.svg Licencia: CC BY-SA 3.0 Colaboradores: http://es.gnu.org/~{}reneme/map/es/ Artista original: Ren
Mrou
Archivo:Richard_Matthew_Stallman.jpeg Fuente: https://upload.wikimedia.org/wikipedia/commons/f/f7/Richard_Matthew_
Stallman.jpeg Licencia: CC-BY-SA-3.0 Colaboradores: Taken from the cover of the O'Reilly book w:Free as in Freedom: Richard
Stallmans Crusade for Free Software Artista original: Sam Williams
Archivo:Software-294x567.JPG Fuente: https://upload.wikimedia.org/wikipedia/commons/f/fe/Software-294x567.JPG Licencia: CC
BY-SA 4.0 Colaboradores: Trabajo propio Artista original: Jrsheik
Archivo:Wikinews-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/2/24/Wikinews-logo.svg Licencia: CC BY-SA
3.0 Colaboradores: This is a cropped version of Image:Wikinews-logo-en.png. Artista original: Vectorized by Simon 01:05, 2 August
2006 (UTC) Updated by Time3000 17 April 2007 to use ocial Wikinews colours and appear correctly on dark backgrounds. Originally
uploaded by Simon.
Archivo:Wikiversity-logo-Snorky.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1b/Wikiversity-logo-en.svg Licen-
cia: CC BY-SA 3.0 Colaboradores: Trabajo propio Artista original: Snorky
14 13 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
GNU es un sistema operativo de tipo Unix desarrolla- Movimiento del software libre
do por y para el Proyecto GNU, y auspiciado por la
Free Software Foundation. Est formado en su totalidad Historia del software libre y de cdigo abierto
por software libre, mayoritariamente bajo trminos de Anexo:Paquetes GNU
copyleft. GNU es el acrnimo recursivo de GNUs Not
Unix (en espaol: GNU no es Unix),[1][2] nombre elegido
debido a que GNU sigue un diseo tipo Unix y se mantie-
ne compatible con ste, pero se distingue de Unix por ser
2 Referencias
software libre y por no contener cdigo de Unix.[3][1][4][5]
[1] Kirk St.Amant & Brian Still. Handbook of Research on
El desarrollo de GNU ha sido liderado desde su inicio Open Source Software: Technological, Economic, and So-
en 1983 por Richard Stallman,[1][6] auxiliado por un n- cial Perspectives. ISBN 1591409993.
mero de acadmicos, programadores voluntarios y for-
[2] GNUs Not Unix. Thefreedictionary.com. Consultado
malmente empleados, con el objetivo de crear el primer el 22 de septiembre de 2012.
sistema operativo completamente libre. A fecha de di-
ciembre de 2013 todava no hay un lanzamiento ocial [3] The GNU Operating system. Consultado el 18 de agos-
de GNU[1][7][8][9] pero el proyecto ha sido responsable to de 2008.
por la creacin de varios programas ampliamente utili- [4] GNU Manifesto. Gnu.org. Consultado el 27 de julio de
zados; como los compiladores GCC, el intrprete de co- 2011.
mandos Bash, el editor de texto Emacs e incluso el escri-
torio GNOME. La Free Software Foundation considera [5] Raymond, Eric (1 de febrero de 2001). The Cathedral &
que el objetivo principal del Proyecto GNU ha sido al- the Bazaar: Musings on Linux and Open Source by an Acci-
canzado con la ayuda de otros programas de software li- dental Revolutionary. pp. 10-12. ISBN 9780596001087.
bre ajenos a GNU, por lo que el desarrollo de un sistema [6] Marshall, Rosalie (17 de noviembre de 2008). Q&A: Ri-
operativo puramente GNU se ha vuelto una tarea secun- chard Stallman, founder of the GNU Project and the Free
daria al crecimiento y manutencin del sistema existente Software Foundation. PC & Tech Authority. Consultado
(GNU/Linux), y secundaria a la garanta de la libertad de el 22 de septiembre de 2012.
sus usuarios y la promocin de tales ideas. Richard Stall-
[7] Vaughan-Nichols, Steven J. "Opinion: The top 10 opera-
man as como muchos otros partidarios del movimiento ting system stinkers" in Computerworld, April 9, 2009:
del software libre considera al sistema operativo GNU But after more than 25 years in development, GNU re-
como un medio tcnico para un n social.[10] mains incomplete: Its kernel, Hurd, has never really made
El proyecto GNU originalmente pretenda remplazar el it out of the starting blocks.... Almost no one has actually
ncleo de Unix con su propio ncleo llamado GNU Hurd, been able to use the OS; its really more a set of ideas than
an operating system.
pero las implementaciones comunes de GNU siempre
han usado Linux en lugar de Hurd; combinacin a la cual [8] Hillesley, Richard. "GNU HURD: Altered visions and lost
se le llama GNU/Linux o simplemente Linux.[11][12][13] promise", June 30, 2010. See especially page 3: Nearly
Ntese que el Proyecto GNU denomina a GNU como twenty years later the HURD has still to reach maturity,
"sistema operativo" en el sentido coloquial del termino, and has never achieved production quality.... Some of
similar al de distribucin, como sucede cuando se habla us are still wishing and hoping for the real deal, a GNU
de sistemas operativos como Windows, Mac OS, Android operating system with a GNU kernel.
e incluso Unix; mientras que algunos programas particu- [9] Lessig, Lawrence. The Future of Ideas: The Fate of the
lares como Linux y GNU Hurd tambin son llamados sis- Commons in a Connected World, p. 54. Random House,
temas operativos en calidad de kernels o ncleos. Inc., 2001. ISBN 978-0-375-50578-2. Referring to Stall-
man, Lessig wrote, He had mixed all of the ingredients
needed for an operating system to function, but he was
missing the core.
1 Vase tambin
[10] Richard Stallmans speech in Stockholm, Sweden in 1986
www.gnu.org
GNU Hurd
[11] Information about the Linux OS (Operating System).
Creative Commons Ntchosting.com. Consultado el 22 de septiembre de 2012.
1
2 3 ENLACES EXTERNOS
3 Enlaces externos
Sitio web ocial
4.2 Imgenes
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:HURD_Live_CD.png Fuente: https://upload.wikimedia.org/wikipedia/commons/d/d4/HURD_Live_CD.png Licencia: GPL
Colaboradores: http://hacktolive.org/images Artista original: http://hacktolive.org/
Archivo:Heckert_GNU_white.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/2/22/Heckert_GNU_white.svg Licencia:
CC BY-SA 2.0 Colaboradores: gnu.org Artista original: Aurelio A. Heckert <aurium@gmail.com>
Se conoce como sistema por lotes (en ingls batch pro- 3 Referencias
cessing), o modo batch, a la ejecucin de un programa sin
el control o supervisin directa del usuario (que se deno- [1] http://docs.gimp.org/es/gimp-introduction-history-2-2.
mina procesamiento interactivo). Este tipo de programas html
se caracterizan porque su ejecucin no precisa ningn ti-
po de interaccin con el usuario.
Generalmente, este tipo de ejecucin se utiliza en tareas
repetitivas sobre grandes conjuntos de informacin, ya
que sera tedioso y propenso a errores realizarlo manual-
mente. Un ejemplo sera el renderizado de los fotogramas
de una pelcula.
Los programas que ejecutan por lotes suelen especicar
su funcionamiento mediante scripts o guiones (procedi-
mientos) en los que se indica qu se quiere ejecutar y,
posiblemente, qu tipo de recursos necesita reservar.
1 Programas batch
Algunos programas conocidos que pueden funcionar
en modo por lotes: GIMP (GNU Image Manipu-
lation Program),[1] R-project, gnuplot, GNU Octave,
command.com, EXEC II, entre otros muchos.
Realmente, casi cualquier programa puede ejecutar en
modo batch, siempre y cuando pueda especicarse los
distintos pasos de ejecucin o las entradas de usuario a
partir de un script.
Es importante no confundir el procesamiento por lotes
con los programas o archivos .bat de los sistemas batch
(de los cuales heredan su nombre debido a su metodolo-
ga). Como bien est explicado ms arriba, estos archivos
se ejecutan de manera secuencial, y cerrando la ejecucin
al usuario ya que este no puede interactuar ni intervenir
en el programa que se ejecuta.
Frente a este tenemos los 'Sistemas por batch', los cuales
son una manera de llevar a cabo el proceso de la informa-
cin, en lenguaje llano, una manera de hacer informtica,
en estos sistemas los programas y tareas se ejecutan de
manera secuencial, no porque el programa lo exija como
es el caso de los .bat, sino porque no conoca otra forma
de ejecucin.
2 Vase tambin
Tiempo compartido
1
2 4 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
4.2 Imgenes
La supercomputadora Cray-2 fue la ms rpida del mundo desde 1985 hasta 1989.
Conceptos bsicos[editar]
Tradicionalmente, los programas informticos se han escrito para el cmputo en serie.
Para resolver un problema, se construye un algoritmo y se implementa como un flujo en
serie de instrucciones. Estas instrucciones se ejecutan en una unidad central de
procesamiento en un ordenador. Slo puede ejecutarse una instruccin a la vez y un
tiempo despus de que la instruccin ha terminado, se ejecuta la siguiente.6
La computacin en paralelo, por el contrario, utiliza simultneamente mltiples elementos
de procesamiento para resolver un problema. Esto se logra mediante la divisin del
problema en partes independientes de modo que cada elemento de procesamiento pueda
ejecutar su parte del algoritmo de manera simultnea con los otros. Los elementos de
procesamiento son diversos e incluyen recursos tales como una computadora con
mltiples procesadores, varios ordenadores en red, hardware especializado, o cualquier
combinacin de los anteriores.6
El aumento de la frecuencia fue la razn dominante de las mejoras en el rendimiento de
las computadoras desde mediados de 1980 hasta el ao 2004. El tiempo de ejecucin de
un programa es igual al nmero de instrucciones multiplicado por el tiempo promedio por
instruccin. Manteniendo todo lo dems constante, el aumento de la frecuencia de
reloj reduce el tiempo medio que tarda en ejecutarse una instruccin, por tanto un aumento
en la frecuencia reduce el tiempo de ejecucin de los programas de cmputo.7
Sin embargo, el consumo de energa de un chip est dada por la ecuacin P = C V2 F,
donde P es la potencia, C es el cambio de capacitancia por ciclo de reloj proporcional al
nmero de transistores cuyas entradas cambian, V es la tensin, y F es la frecuencia
del procesador (ciclos por segundo).8 Un aumento en la frecuencia aumenta la cantidad de
energa utilizada en un procesador. El aumento del consumo de energa del procesador
llev a Intel en mayo del 2004 a la cancelacin de sus procesadores Tejas y Jayhawk, este
hecho generalmente se cita como el fin del escalado de frecuencia como el paradigma
dominante de arquitectura de computadores.9
La ley de Moore es la observacin emprica de que la densidad de transistores en un
microprocesador se duplica cada 18 a 24 meses.10 A pesar de los problemas de consumo
de energa, y las repetidas predicciones de su fin, la ley de Moore sigue vigente. Con el fin
del aumento de la frecuencia, estos transistores adicionales que ya no se utilizan para el
aumento de la frecuencia se pueden utilizar para aadir hardware adicional que permita
la computacin paralela.
Ley de Amdahl y ley de Gustafson[editar]
1: funcin Dep(a, b)
2: c: = a b
3: d: = 3 c
4: fin funcin
En este ejemplo, no existen dependencias entre las instrucciones, por lo que todos
ellos se pueden ejecutar en paralelo.
Las condiciones de Bernstein no permiten que la memoria se comparta entre los
diferentes procesos. Por esto son necesarios algunos medios que impongan un
ordenamiento entre los accesos tales como semforos, barreras o algn otro
mtodo de sincronizacin.
Condiciones de carrera, exclusin mutua, sincronizacin, y
desaceleracin paralela[editar]
Las subtareas en un programa paralelo a menudo son llamadas hilos. Algunas
arquitecturas de computacin paralela utilizan versiones ms pequeas y ligeras
de hilos conocidas como hebras, mientras que otros utilizan versiones ms
grandes conocidos como procesos. Sin embargo, hilos es generalmente
aceptado como un trmino genrico para las subtareas. Los hilos a menudo
tendrn que actualizar algunas variables que se comparten entre ellos. Las
instrucciones entre los dos programas pueden entrelazarse en cualquier orden.
Por ejemplo, considere el siguiente programa:
Hilo A Hilo B
Hilo A Hilo B
Un hilo bloquear con xito la variable V, mientras que el otro hilo no podr
continuar hasta que V se desbloquee. Esto garantiza la correcta ejecucin del
programa. Si bien los bloqueos son necesarios para asegurar la ejecucin correcta
del programa, pueden ralentizar en gran medida un programa.
Bloquear mltiples variables utilizando cerraduras no atmicas introduce la
posibilidad de que el programa alcance un bloqueo mutuo (deadlock). Un bloqueo
atmico bloquea mltiples variables a la vez, si no puede bloquearlas todas, no se
bloquea ninguna de ellas. Si hay dos hilos y cada uno necesita bloquear las
mismas dos variables utilizando cerraduras no atmicas, es posible que un hilo
bloquee uno de ellas y el otro bloquee la segunda variable. En tal caso se produce
un bloqueo mutuo donde ningn hilo puede completar la ejecucin.
Muchos programas paralelos requieren que sus subtareas acten en sincrona.
Esto requiere el uso de una barrera. Las barreras se implementan normalmente
mediante un bloqueo. Una clase de algoritmos, conocida como algoritmos libres
de bloqueo y libres de espera, evitan el uso de bloqueos y barreras. Sin embargo,
este enfoque es generalmente difcil de implementar y requiere estructuras de
datos correctamente diseadas.
No todas las paralelizaciones conllevan una aceleracin. Por lo general, mientras
una tarea se divida en cada vez ms hilos, estos hilos pasan una porcin cada vez
mayor de su tiempo comunicndose entre s. Eventualmente, la sobrecarga de
comunicacin domina el tiempo empleado para resolver el problema, y la
paralelizacin adicional dividir la carga de trabajo entre incluso ms hilos
aumenta la cantidad de tiempo requerido para terminar. Esto se conoce
como desaceleracin paralela.
Paralelismo de grano fino, grano grueso y paralelismo
vergonzoso[editar]
Las aplicaciones a menudo se clasifican segn la frecuencia con que sus
subtareas se sincronizan o comunican entre s. Una aplicacin muestra un
paralelismo de grano fino si sus subtareas deben comunicase muchas veces por
segundo, se considera paralelismo de grano grueso si no se comunican muchas
veces por segundo, y es vergonzosamente paralelo si nunca o casi nunca se
tienen que comunicar. Aplicaciones vergonzosamente paralelas son consideradas
las ms fciles de paralelizar.
Modelos de consistencia[editar]
Artculo principal: Consistencia de datos
Leslie Lamport defini por primera vez el concepto de consistencia secuencial.
Tambin es conocido por su trabajo en el desarrollo del software LaTeX.
Tipos de paralelismo[editar]
Paralelismo a nivel de bit[editar]
Desde el advenimiento de la integracin a gran escala (VLSI) como tecnologa de
fabricacin de chips de computadora en la dcada de 1970 hasta alrededor de
1986, la aceleracin en la arquitectura de computadores se lograba en gran
medida duplicando el tamao de la palabra en la computadora, la cantidad de
informacin que el procesador puede manejar por ciclo.18 El aumento del tamao
de la palabra reduce el nmero de instrucciones que el procesador debe ejecutar
para realizar una operacin en variables cuyos tamaos son mayores que la
longitud de la palabra. Por ejemplo, cuando un procesador de 8 bits debe sumar
dos enteros de 16 bits, el procesador primero debe adicionar los 8 bits de orden
inferior de cada nmero entero con la instruccin de adicin, a continuacin,
aadir los 8 bits de orden superior utilizando la instruccin de adicin con acarreo
que tiene en cuenta el bit de acarreo de la adicin de orden inferior, en este caso
un procesador de 8 bits requiere dos instrucciones para completar una sola
operacin, en donde un procesador de 16 bits necesita una sola instruccin para
poder completarla.
Histricamente, los microprocesadores de 4 bits fueron sustituidos por unos de 8
bits, luego de 16 bits y 32 bits, esta tendencia general lleg a su fin con la
introduccin de procesadores de 64 bits, lo que ha sido un estndar en la
computacin de propsito general durante la ltima dcada.
Paralelismo a nivel de instruccin[editar]
1: PREV1 := 0
2: PREV2 := 1
3: do:
4: CUR := PREV1 + PREV2
5: PREV1 := PREV2
6: PREV2 := CUR
7: while (CUR < 10)
Hardware[editar]
Memoria y comunicacin[editar]
La memoria principal en un ordenador en paralelo puede ser compartida
compartida entre todos los elementos de procesamiento en un nico espacio de
direcciones, o distribuida cada elemento de procesamiento tiene su propio
espacio local de direcciones.23 El trmino memoria distribuida se refiere al hecho
de que la memoria se distribuye lgicamente, pero a menudo implica que tambin
se distribuyen fsicamente. La memoria distribuida-compartida y la virtualizacin de
memoria combinan los dos enfoques, donde el procesador tiene su propia
memoria local y permite acceso a la memoria de los procesadores que no son
locales. Los accesos a la memoria local suelen ser ms rpidos que los accesos a
memoria no local.
Una vista lgica de una arquitectura con acceso a memoria no uniforme (NUMA). Los
procesadores en un directorio pueden acceder a la memoria de su directorio con una
menor latencia de la que pueden acceder a la memoria del directorio de otro.
Un clster Beowulf.
Computacin distribuida[editar]
Artculo principal: Computacin distribuida
Software[editar]
Lenguajes de programacin en paralelo[editar]
Los lenguajes de programacin concurrentes, bibliotecas, APIs y modelos de
programacin paralela han sido creados para la programacin de computadores
paralelos. Estos generalmente se pueden dividir en clases basadas en las
suposiciones que se hacen sobre la arquitectura de memoria subyacente:
compartida, distribuida, o compartida-distribuida. Los lenguajes de programacin
de memoria compartida se comunican mediante la manipulacin de variables en la
memoria compartida. En la arquitectura con memoria distribuida se utiliza el paso
de mensajes. POSIX Threads y OpenMP son dos de las API ms utilizadas con la
memoria compartida, mientras que Message Passing Interface (MPI) Interfaz de
Paso de Mensajes es el API ms utilizado en los sistemas de paso de
mensajes.n. 6 39 El concepto valor futuro es muy utilizado en la programacin de
programas paralelos, donde una parte de un programa promete proporcionar un
dato requerido a otra parte del programa en un tiempo futuro.
Las empresas CAPS entreprise y Pathscale estn intentando convertir las
directivas de HMPP (Hybrid Multicore Parallel Programming) en un estndar
abierto denominado OpenHMPP. El modelo de programacin OpenHMPP basado
en directivas ofrece una sintaxis para descargar de manera eficiente los clculos
sobre aceleradores de hardware y optimizar el movimiento de datos hacia y desde
la memoria del hardware. Las directivas OpenHMPP describen llamadas a
procedimientos remotos (RPC) en un dispositivo acelerador por ejemplo el
GPU o de forma ms general un conjunto de ncleos. Las directivas permiten
anotar cdigo C o Fortran para describir dos grupos de funcionalidades: la
descarga de los procedimientos en un dispositivo remoto y la optimizacin de las
transferencias de datos entre la memoria principal de la CPU y la memoria del
acelerador.
Paralelizacin automtica[editar]
Artculo principal: Paralelizacin automtica
Mtodos algortmicos[editar]
Mientras que las computadoras paralelas se hacen ms grandes y ms rpidas, se
hace factible resolver problemas que antes tardaban demasiado tiempo en
ejecutarse. La computacin en paralelo se utiliza en una amplia gama de campos,
desde la bioinformtica (plegamiento de protenas y anlisis de secuencia) hasta
la economa (matemtica financiera). Los tipos de problemas encontrados
comnmente en las aplicaciones de computacin en paralelo son:42
Historia[editar]
Artculo principal: Historia de la computacin
ILLIAC IV, quizs el ms infame de los superordenadores43
1 Sistemas distribuidos
3 Objetivo
Un sistema distribuido se dene como una coleccin de
computadoras separadas fsicamente y conectadas entre La computacin distribuida ha sido diseada para re-
s por una red de comunicaciones; cada mquina posee solver problemas demasiado grandes para cualquier
sus componentes de hardware y software que el progra- supercomputadora y mainframe, mientras se mantiene la
mador percibe como un solo sistema (no necesita saber exibilidad de trabajar en mltiples problemas ms pe-
qu cosas estn en qu mquinas). El programador acce- queos. Por lo tanto, la computacin en malla (grid) es
de a los componentes de software (objetos) remotos, de la naturalmente un entorno multiusuario; por ello, las tc-
misma manera en que accedera a componentes locales, nicas de autorizacin segura son esenciales antes de per-
en un grupo de computadoras que usan un middleware mitir que los recursos informticos sean controlados por
entre los que destacan (RPC) y SOAP para conseguir un usuarios remotos.
objetivo.
Los sistemas distribuidos deben ser muy conables, ya
que si un componente del sistema se descompone otro
componente debe ser capaz de reemplazarlo. Esto se de- 4 Clasicacin
nomina tolerancia a fallos.
El tamao de un sistema distribuido puede ser muy varia-
En trminos de funcionalidad, las mallas se clasican
do, ya sean decenas de hosts (red de rea local), centenas
en computacionales (incluyendo mallas de barrido de la
de hosts (red de rea metropolitana), o miles, o millones
CPU) y en mallas de datos. Y en los estados son:
de hosts (Internet); esto se denomina escalabilidad. [1]
1
2 9 REFERENCIAS
10 Vase tambin
BOINC / Data Distribution Service
Anexo:Proyectos que usan BOINC
Supercomputadora
Programacin distribuida
DCE
Andrew S. Tanenbaum
Computacin grid
Sun Grid Engine
11.2 Imgenes
Un sistema de tiempo real es un sistema informtico La cantidad de tiempo que se lleva el iniciar la eje-
que interacciona con su entorno fsico y responde a los cucin de una interrupcin
estmulos del entorno dentro de un plazo de tiempo de-
terminado. No basta con que las acciones del sistema sean La cantidad de tiempo que se necesita para realizar
correctas, sino que, adems, tienen que ejecutarse dentro la tarea que pidi la interrupcin.
de un intervalo de tiempo determinado.[1] Los efectos de interrupciones anidadas.
Existen sistemas de tiempo real crtico (tiempo real duro),
en los que los plazos de respuesta deben respetarse siem- Una vez que el resultado del clculo de determinismo y
pre estrictamente y una sola respuesta tarda a un suce- responsividad es obtenido, se convierte en una caracters-
so externo puede tener consecuencias fatales; y sistemas tica del sistema y un requerimiento para las aplicaciones
de tiempo real acrtico (tiempo real suave), en los que se que corrern en l,(por ejemplo, si diseamos una aplica-
pueden tolerar retrasos ocasionales en la respuesta a un cin en un sistema en el cual el 95 % de las tareas deben
suceso.[1] terminar en cierto perodo entonces es recomendable ase-
gurarse que las tareas ejecutadas de nuestra aplicacin no
Un ejemplo que ilustra los puntos anteriores es el de un
caigan en el 5 % de bajo desempeo).
robot que necesita tomar una pieza de una banda sinfn.
Si el robot llega tarde, la pieza ya no estar donde deba
recogerla, por tanto, el trabajo se llev a cabo incorrec- 1.1.2 Usuarios controladores
tamente, aunque el robot haya llegado al lugar adecuado.
Si el robot llega antes de que la pieza llegue, la pieza an En estos sistemas, el usuario (por ejemplo, los procesos
no estar ah y el robot puede bloquear su paso. que corren en el sistema) tienen un control mucho ms
amplio del sistema.
1
2 7 ENLACES EXTERNOS
El sistema debe de seguir en funcionamiento a pesar de mente cuando hay un acceso compartido y se necesitan
catstrofes, o fallas mecnicas. Usualmente una degrada- mantener actualizados un nmero de sistemas conecta-
cin en el servicio en un sistema de tiempo real lleva con- dos con una situacin cambiante. Un ejemplo seran los
secuencias catastrcas. programas que mantienen y actualizan los planes de vue-
lo de las compaas areas comerciales. Estos programas
pueden funcionar en cuestin de segundos.
1.1.4 Operacin a prueba de fallas duras (fail hard
No sera posible ofrecer vuelos comerciales modernos si
operation)
estas operaciones no se pudieran realizar de manera able
en tiempo real. Los sistemas de audio y video en directo
El sistema debe de fallar de manera que cuando ocurra
tambin son sistemas en tiempo real pasivos tpicos ya
una falla, el sistema preserve la mayor parte de los datos
que si se sobrepasan los lmites de tiempo lo nico que
y capacidades del sistema en la mayor medida posible.
puede pasar es que se empeore la calidad pero el sistema
Que el sistema sea estable, es decir, que si para el sistema continua trabajando.
es imposible cumplir con todas las tareas sin exceder sus
Las necesidades de los programas de tiempo real se pue-
restricciones de tiempo, entonces el sistema cumplir con
den solucionar con sistemas operativos en tiempo real,
las tareas ms crticas y de ms alta prioridad.
que ofrecen un marco sobre el que construir aplicaciones
de programas en tiempo real.
8.2 Imgenes
Archivo:Mergefrom.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/0/0f/Mergefrom.svg Licencia: Public domain Cola-
boradores: ? Artista original: ?
Archivo:Spanish_Language_Wiki.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/2/2a/Spanish_Language_Wiki.svg
Licencia: CC BY-SA 3.0 Colaboradores: Derived from Wiki puzzle.svg by user:Kimbar Artista original: James.mcd.nz
En informtica, un bfer (del ingls, buer) es un espa- da). Si tienes un trabajo inestable, mientras tengas ciertos
cio de memoria, en el que se almacenan datos de manera ahorros, puedes mantener tus gastos jos sin problemas,
temporal, normalmente para un nico uso (generalmente e ir ingresando dinero cuando puedas segn vas trabajan-
utilizan un sistema de cola FIFO); su principal uso es pa- do. Si los ahorros son pequeos, enseguida que no tengas
ra evitar que el programa o recurso que los requiere, ya trabajo, no vas a poder acometer los gastos jos. De la
sea hardware o software, se quede sin datos durante una misma forma si escuchas msica en Internet y tu progra-
transferencia (entrada/salida) de datos irregular o por la ma de audio usa un bfer pequeo, en cuanto haya alguna
velocidad del proceso. interrupcin en la descarga (porque las descargas nunca
Normalmente los datos se almacenan en un bfer mien- tienen una velocidad constante), notars cortes de sonido,
tras son transferidos desde un dispositivo de entrada (co- ya que faltar informacin.
mo un ratn o mouse) o justo antes de enviarlos a un
dispositivo de salida (por ejemplo: altavoces). Tambin
puede utilizarse para transferir datos entre procesos, de 1.1 Requerimientos mnimos
una forma parecida a los bferes utilizados en telecomu-
nicaciones. Un ejemplo de esto ltimo ocurre en una co- Para que un bfer, de tipo software o hardware, pueda
municacin telefnica, en la que al realizar una llamada funcionar correctamente es indispensable que este posea
esta se almacena, se disminuye su calidad y el nmero como mnimo las siguientes caractersticas:
de bytes a ser transferidos, y luego se envan estos datos
modicados al receptor.
Espacio: es la memoria en donde se guarda la infor-
macin almacenada en el bfer, sin ella no existe en
1 Implementacin donde guardar la informacin
Los bferes pueden ser implementados por software o Direccin: indica en donde est el espacio
hardware, esto depende del origen del bfer, aunque la
gran mayora son del tipo software debido a la exibili- Dimensin: indica el tamao del espacio
dad para su creacin.
Normalmente se usan cuando la frecuencia de transferen- ndice o particiones: indica cmo se utilizara la in-
cia de datos es distinta a la de procesado, dependiendo de formacin almacenada en el bfer
las limitaciones del sistema, o tambin cuando la frecuen-
cia es variable, como en la recepcin de vdeo en-lnea
(streaming). Estas diferencias temporales de transmisin
son normalmente ajustadas mediante la implementacin 2 Aplicaciones
de un algoritmo tipo cola (o estructura de tipo FIFO) en
memoria, para as escribir datos en la cola a una frecuen-
cia y leerlos a otra. Esto ocurre en el envo de datos de un Los bferes se utilizan, a menudo, conjuntamente con
procesador a una impresora para que los imprima. La ve- E/S de hardware, tal como unidades de disco, enviar o
locidad de impresin de la fotocopiadora en comparacin recibir datos a/o desde una red, o reproduccin de soni-
a la del procesador es muy lenta, debido a esto la impre- do en un altavoz. Una lnea a una montaa rusa en un
sora tendr que tener una cola FIFO (software), para ir parque de atracciones comparte muchas similitudes. Las
acumulando los trabajos que todava no se han podido personas que viajan en la montaa llegan a un ritmo des-
imprimir. conocido y variable, pero la montaa rusa ser capaz de
cargar personas de golpe (tal como llegan se van montan-
Los bferes se pueden usar en cualquier sistema digital, do). La zona de la cola acta como un bfer: un espacio
no solo en informticos, como en reproductores de msi- temporal donde los que deseen viajar deben esperar a que
ca y video. el viaje est disponible. Los bferes utilizan generalmen-
Se puede ejemplicar la funcin de un bfer utilizando te un mtodo FIFO (primero en entrar, primero en salir),
sta metfora: un bfer es como tener dinero en el ban- es decir, la salida de datos se produce en el orden en que
co (buer), un trabajo (entrada) y unos gastos jos (sali- llegaron.
1
2 6 BFER DE TELECOMUNICACIN
Recoger los bits de datos binarios en los grupos que 3. Almacenamiento temporal con bloques: aparte de la
pueden funcionar encendido como unidad. bandera, en este caso, el bfer tambin tiene una va-
riable contador, que le permite saber el ndice del
Retraso de la poca de trnsito de una seal para ltimo registro que pudo almacenar en su memoria.
permitir que otras operaciones ocurran. As, cuando se leen bloques grandes de informacin,
el bfer sabe exactamente cul es el siguiente regis-
tro a procesar.
7 Otros ejemplos 4. Doble almacenamiento temporal: este mtodo cons-
ta de dos bferes idnticos al del caso del almace-
El buer de teclado es una memoria intermedia en namiento temporal con bloques, y estos trabajan de
la que se van almacenando los caracteres que un forma coordinada almacenando informacin que el
usuario teclea, los cuales son tratados por el compu- otro no alcanz a almacenar antes de llenarse. La
tador apenas se libere un recurso. idea es que un bfer se llene mientras el otro se va-
ca, con el n de optimizar el proceso.
Las grabadoras de CD o DVD, tienen un bfer para
que no se pare la grabacin. Hoy en da hay sistemas 5. Triple almacenamiento temporal: en este caso, se
para retomar la grabacin pero antes supona que el cuenta con tres bferes coordinados. Al menos uno
disco ptico no quedaba bien grabado y muchas ve- siempre tiene que estar lleno, as el programa puede
ces era inservible. estar procesando informacin sin interrupciones.
8 Administracin
A continuacin se muestran algunas de las formas en que
se administran los diferentes tipos de bferes, cada m-
todo a utilizar depende de la informacin a tratar o de los
procesos que la van a utilizar.
10.2 Imgenes
1 Vase tambin
Common Unix Printing System
1
2 2 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
2.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
El planicador (en ingls scheduler) es un componen- A continuacin, el planicador decide cul ser el si-
te funcional muy importante de los sistemas operativos guiente proceso en ejecutarse. Naturalmente, solamen-
multitarea y multiproceso, y es esencial en los sistemas te se escogen procesos que estn listos para hacerlo. Si
operativos de tiempo real. Su funcin consiste en repartir un proceso sigue esperando por una operacin de entra-
el tiempo disponible de un microprocesador entre todos da/salida no ser candidato a ejecutarse hasta que nalice
los procesos que estn disponibles para su ejecucin. tal operacin.
La seleccin del proceso sigue alguna poltica de plani-
cacin (ver ms adelante) preestablecida. Una vez se-
1 Motivacin leccionado un proceso, se procede a ejecutarlo. Para ello,
el planicador restaura su estado de ejecucin (previa-
Todo sistema operativo gestiona los programas median- mente salvado) y abandona el uso del microprocesador
te el concepto de proceso. En un instante dado, en el cedindoselo a dicho proceso.
ordenador pueden existir diversos procesos listos para ser Nota: se dice que el planicador procede a ejecutarlo a
ejecutados. Sin embargo, solamente uno de ellos puede modo ilustrativo, entrando un poco ms en detalle el pla-
ser ejecutado (en cada microprocesador). De ah la ne- nicador enva su lista de procesos al 'dispatcher' (despa-
cesidad de que una parte del sistema operativo gestione, chador) para que este adecue al proceso y su PCB para
de una manera equitativa, qu proceso debe ejecutarse en la inmediata ejecucin Todo esto apenas dura unos pocos
cada momento para hacer un uso eciente del procesador. milisegundos.
1
2 6 TIPOS DE ALGORITMOS
5 Polticas de planicacin
A continuacin se enumeran diversas polticas de plani-
cacin. Lo habitual es utilizar polticas mixtas. General-
mente, el planicador a corto plazo utiliza round-robin,
mientras que el planicador a largo plazo utiliza varias
colas FIFO (First In First Out). Cada una de estas colas
corresponde a una prioridad diferente.
Planicacin Round-robin
LIFO.
6 Tipos de Algoritmos
Existen dos tipos de algoritmos de calendarizacin (pol-
ticas de planicacin), expropiativos y no expropiativos.
3
7.2 Imgenes
Archivo:Commons-emblem-issue.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/b/bc/Commons-emblem-issue.svg
Licencia: GPL Colaboradores: File:Gnome-emblem-important.svg Artista original: GNOME icon artists and User:ViperSnake151
Ejemplos:
Ejemplos:
interfaz grca
(graphical user interface)
KDE Plasma, Aqua,
GNOME Shell X11, Wayland, Quartz
1 Historia
servidor de pantalla
(display server)
gestor de ventanas
(window manager) Ejemplos:
1.1 Precursores
awesome, Compiz,
OpenBox
Ejemplos:
X.Org Server, Weston, KWin, Mutter,
Los investigadores del Stanford Research Institute lidera-
ncleo
(kernel)
Quarz Compositor, SurfaceFlinger dos por Douglas Engelbart, desarrollaron una interfaz de
Ejemplos:
Ncleo Linux, Ncleo FreeBSD, Ncleo XNU
hipervnculos en modo texto gobernada por un ratn, que
tambin inventaron. Este concepto fue ampliado y trasla-
equipamiento
(hardware) dado al entorno grco por los investigadores del Xerox
PARC en la ciudad estadounidense de Palo Alto. El en-
Las capas de una interfaz grca basada a sistema de ventanas. torno se denomin PARC User Interface y en l se de-
nieron los conceptos de ventanas, casilla de vericacin,
botones de radio, mens y puntero del ratn. La inter-
Human-Machine- Hardware Web server solution stacks (LAMP)
Interface
Supercomputer
Linux kernel Distributed Computing
Routing daemons
remote Computer Cluster Software Development
(SSH, HTTP, ...)
Mainframe computer
Distributed computing
High-performance computing
(HPC)
Package management systems
CAD, CAM & CAE Software
Xerox Star 8010.
proprietary software
Real-time computing
Oce
(RTC)
Image Processing
Keyboard & Mouse Desktop Publishing (DTP)
also Braille, Touch-Display, Speech recognition, Desktop Computer
Graphical User Interfaces
Home Computer
Touch-Display
Desktop replacement laptop Linux Process Scheduler Desktop UI
Thin client
remote
Embedded Computer
Customer-premises equipment
3D computer graphics
Computer animation
Motion graphics
fue una de las primeras computadoras personales, as co-
mo el primero que utiliz la metfora de escritorio y una
Measurement Equipment
(SSH, HTTP, Digital Audio Workstation
Laboratory Equipment
Serial, I2C, ...)
Layer3-Switches DJ Mixing Software
other embedded systems Video games
1
2 2 TIPOS DE INTERFACES GRFICAS DE USUARIO
Macintosh que ver la luz en 1984 con una versin me- 1.8 Apple y Microsoft
jorada del entorno grco del Lisa (pretendimos hacer
una computadora tan simple de manejar como una tos- En 1982, Apple haba comenzado como una microem-
tadora). Desde ese momento el Mac reinar como pa- presa formada por dos empleados, Steve Jobs y Steve
radigma de usabilidad de un entorno grco; pese a que Wozniak, y haba crecido hasta convertirse en una em-
por debajo el sistema operativo sufra cambios radicales, presa de 300 millones de dlares. En 1983, ya se haba
los usuarios no avanzados no son conscientes de ello y no convertido en una empresa de 1000 millones de dlares,
sufren los problemas de otras plataformas. el mismo valor que IBM.
En 1985, Microsoft saca al mercado Windows 1.0, en-
1.5 Workbench torno grco para computadoras PC IBM compatibles,
con muchos parecidos al Mac OS. La respuesta de Apple
Workbench es el nombre dado por Commodore a la a la introduccin del sistema operativo Windows fue la in-
interfaz grca del AmigaOS, el sistema operativo del terposicin de una demanda de varios miles de millones
Commodore Amiga lanzado en 1985. A diferencia de los de dlares contra Microsoft, por violacin de copyright.
sistemas ms populares (GEM, Mac OS, MS Windows...) En 1987 IBM se vio obligada a entrar en el mercado de las
es un verdadero entorno multitarea solo rivalizado por la computadoras personales con entorno grco con su mo-
interfaz X Window System de los diferentes sabores de delo IBM Personal System/2 (PS/2), alindose con Bill
Unix. La frase ms repetida por un amiguero es: para Gates (Microsoft), que haba desarrollado el OS/2. La in-
masacrar marcianos, formatear un disquete y enviar o re- terfaz grca de este sistema operativo era muy similar a
cibir un Fax todo a la vez y sin colgarse, necesitas un 386 la de Apple. El OS/2 no se convirti en el nuevo estn-
con disco duro, 16 MB de RAM y OS/2; un Amiga 500 dar del sector, debido fundamentalmente al conicto de
con disquete y solo su memoria base (512 KB de RAM intereses entre IBM y Microsoft.
y 512 KB de ROM) es capaz de todo eso. Aunque muy
popular por los espectaculares (para entonces) grcos de La aparicin de computadoras IBM clnicas hizo que el
la mquina y su gran plantel de videojuegos, ser la negli- sistema Windows se popularizara, lo que rest mercado a
gencia de sus sucesivos propietarios la principal causa de Apple. Esta se recuper a nales de 1990 lanzando nuevos
que acabe restringido a solamente la plataforma Amiga. productos.
Una seal inequvoca del xito de Apple fue la aparicin
de productos similares: una pequea compaa llamada
1.6 GEOS Nutek Computers Inc., anunci que estaba desarrollando
una computadora compatible con el Macintosh.
Para el Commodore 64 y su sucesor el Commodore 128
se desarroll el entorno grco GEOS en 1986. Este en- En 1991, John Sculley, director de Apple, revel que la
torno se port al IBM PC, fue utilizado en varias PDA y compaa estaba considerando competir contra Micro-
Nokia lo us como base de su actual sistema operativo. soft en el campo del software vendiendo su sistema ope-
rativo a terceros. Apple revel que estaba manteniendo
conversaciones con su antiguo rival, IBM, destinadas a
1.7 GEM compartir tecnologas. Decidieron crear una joint venture
para desarrollar un sistema operativo avanzado que am-
GEM (Graphical Environment Manager) es un GUI dise- bas utilizaran en sus nuevas mquinas y licenciaran a
ado por Digital Research en 1985 para ejecutarse sobre terceros. Este plan presentaba un desafo directo a Mi-
varios sistemas operativos de lnea de comandos del IBM crosoft.
PC y compatibles: funciona tanto sobre IBM DOS /MS-
Microsoft consigue convertir a Windows en el sistema
DOS como sobre CP/M 86. Su mxima popularidad en el
operativo ms utilizado en el mundo, dejando a Apple
PC llega de la mano del Amstrad PC1512 y del Amstrad
en un segundo lugar.
PC1640, los clnicos que rompieron en Europa la barrera
del precio popularizando el PC, hasta ese momento rele-
gado mayoritariamente a ocinas. Aunque se incorpora
en su primera generacin de porttiles y en el Sinclair 2 Tipos de interfaces grcas de
PC200, ser sustituido en la siguiente generacin de PCs
Amstrad por Microsoft Windows 2.xx. En el PC vivir usuario
una segunda juventud al venir de serie con DR-DOS co-
mo TaskMax. 2.1 Las GUI y ZUI
Pero ser en los Atari ST y sucesores donde se convertir
en el entorno grco ocial de la plataforma, alcanzando Los tipos de interfaces grcas de usuarios (GUI) que se
gran popularidad, tanto por ser en principio una alternati- encuentran en juegos de computadora, y las GUI avanza-
va barata al MAC en autoedicin, como por hacerse con dos basados en realidad virtual, se usan con frecuencia en
el nicho de mercado de la msica profesional. tareas de investigacin. Muchos grupos de investigacin
3
4 Vase tambin
AJAX
Arquitectura de la informacin
Metfora de escritorio
2.2 Interfaz de usuario de pantalla tctil
Rich Internet Applications, en espaol: Aplicaciones
Algunas GUI son diseadas para cumplir con los rigu- ricas de internet.
rosos requisitos de los mercados verticales. Estos se co-
nocen como las GUI de uso especco. Un ejemplo de un Usabilidad
GUI de uso especco es la ahora familiar pantalla tctil o
touchscreen (pantalla que al ser tocada efecta los coman-
dos del ratn en el software). Se encuentra actualmente 5 Referencias
implementado en muchos restaurantes y en muchas tien-
das de autoservicio de todo el mundo. Fue iniciado por [1] http://www.howtogeek.com/howto/17528/
Gene Mosher en la computadora del ST de Atari en 1986, change-the-user-interface-language-in-ubuntu/
el uso que l especc en las GUI de pantalla tctil ha en-
cabezado una revolucin mundial e inovadora en el uso de
las computadoras a travs de las industrias alimenticias y 6 Bibliografa
de bebidas, y en ventas al por menor.
Otros ejemplos de GUI de uso especco, relacionados Royo, Javier. Diseo Digital. Ediciones Paids Ib-
con la pantalla tctil son los cajeros automticos, los kios- rica, 2004.
cos de informacin y las pantallas de monitoreo y control
en los usos industriales, que emplean un sistema opera- Shneiderman, Ben. Designing The user interface,
tivo de tiempo real (RTOS). Los telfonos mviles y los Strategies for eective Human-computer interac-
sistemas o consolas de juego tambin emplean las pan- tion. Addison-wesley,1998
tallas tctiles. Adems la domtica no es posible sin una
buena interfaz de usuario, o GUI.
7 Enlaces externos
2.3 Interfaz Natural de Usuario (NUI) Wikimedia Commons alberga contenido
multimedia sobre Interfaz grca de usuario.
Las NUI naturales son aquellas en las que se interacta
Commons
con un sistema, aplicacin, etctera, sin utilizar dispositi-
vos de entrada como ratn, teclado, lpiz ptico, etc. En Apple v. Microsoft (en ingls)
lugar de estos se utilizan las manos o las yemas de los
dedos. Ars Technica: A History of the GUI por Jeremy Re-
imer (en ingls).
8.2 Imgenes
Archivo:CLI-GUI-NUI,_evolucin_de_interfaces_de_usuario.png Fuente: https://upload.wikimedia.org/wikipedia/commons/a/a5/
CLI-GUI-NUI%2C_evoluci%C3%B3n_de_interfaces_de_usuario.png Licencia: CC BY-SA 4.0 Colaboradores: Trabajo propio Artista
original: Marcecoro
Archivo:Commons-logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licencia: Public do-
main Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:Esquema_de_las_capas_de_la_interfaz_grfica_de_usuario.svg Fuente: https://upload.wikimedia.org/wikipedia/
commons/1/12/Esquema_de_las_capas_de_la_interfaz_gr%C3%A1fica_de_usuario.svg Licencia: CC BY-SA 3.0 Colaboradores:
Trabajo propio Artista original: ScotXW
Archivo:Linux_kernel_ubiquity.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/3/3a/Linux_kernel_ubiquity.svg Li-
cencia: CC BY-SA 3.0 Colaboradores: Esta imagen incluye elementos que han sido tomados o adaptados de esta: <a
href='//commons.wikimedia.org/wiki/File:Tux-shaded.svg' class='image'><img alt='Tux-shaded.svg' src='https://upload.wikimedia.org/
wikipedia/commons/thumb/0/0a/Tux-shaded.svg/17px-Tux-shaded.svg.png' width='17' height='20' srcset='https://upload.wikimedia.
org/wikipedia/commons/thumb/0/0a/Tux-shaded.svg/25px-Tux-shaded.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/
thumb/0/0a/Tux-shaded.svg/33px-Tux-shaded.svg.png 2x' data-le-width='249' data-le-height='297' /></a> Tux-shaded.svg. Artista ori-
ginal: ScotXW
La interfaz de programacin de aplicaciones, abrevia- (c) Haz que el sistema operativo dibuje el texto
da como API del ingls: Application Programming Inter- Hola Mundo usando la fuente cargada.
face,[1] es un conjunto de subrutinas, funciones y proce-
3. Usando una aplicacin (que a su vez usa el sistema
dimientos (o mtodos, en la programacin orientada a ob-
operativo) para realizar la mayor parte del trabajo:
jetos) que ofrece cierta biblioteca para ser utilizado por
otro software como una capa de abstraccin. (a) Escribe un documento HTML con las palabras
Son usadas generalmente en las bibliotecas de programa- Hola Mundo para que un navegador web co-
cin. mo Firefox, Chrome, Opera, Safari, Midori,
Iceweasel, Web o Internet Explorer pueda re-
presentarlo en el monitor.
1 Caractersticas Como se puede ver, la primera opcin requiere ms pa-
sos, cada uno de los cuales es mucho ms complicado que
Una API representa la capacidad de comunicacin entre los pasos de las opciones siguientes. Adems, no resulta
componentes de software. Se trata del conjunto de lla- nada prctico usar el primer planteamiento para represen-
madas a ciertas bibliotecas que ofrecen acceso a ciertos tar una gran cantidad de informacin, como un artculo
servicios desde los procesos y representa un mtodo para enciclopdico sobre la pantalla, mientras que el segundo
conseguir abstraccin en la programacin, generalmen- enfoque simplica la tarea eliminando un paso y hacien-
te (aunque no necesariamente) entre los niveles o capas do el resto ms sencillos y la tercera forma simplemente
inferiores y los superiores del software. Uno de los prin- requiere escribir Hola Mundo. Sin embargo, las API de
cipales propsitos de un API consiste en proporcionar un alto nivel generalmente pierden exibilidad; por ejemplo,
conjunto de funciones de uso general, por ejemplo, para resulta mucho ms difcil en un navegador web hacer gi-
dibujar ventanas o iconos en la pantalla. De esta forma, rar texto alrededor de un punto con un contorno parpa-
los programadores se benecian de las ventajas del API deante que programarlo a bajo nivel. Al elegir usar una
haciendo uso de su funcionalidad, evitndose el trabajo API se debe llegar a un cierto equilibrio entre su potencia,
de programar todo desde el principio. Las API asimismo simplicidad y prdida de exibilidad.
son abstractas: el software que proporciona una cierta API
generalmente es llamado la implementacin de esa API.
Por ejemplo, se puede ver la tarea de escribir "Hola Mun- 2 Ejemplos de interfaces de pro-
do" sobre la pantalla en diferentes niveles de abstraccin: gramacin
1. Haciendo todo el trabajo desde el principio: CORBA (Common Object Request Broker Architec-
(a) Traza, sobre papel milimetrado, la forma de ture)
las letras (y espacio) H, o, l, a, M, u, n, d, o. Drupal API
(b) Crea una matriz de cuadrados negros y blancos Glibc
que se asemeje a la sucesin de letras.
(c) Mediante instrucciones en ensamblador, escri- Microsoft Win32 API
be la informacin de la matriz en la memoria Microsoft WMI
intermedia (buer) de pantalla.
API for SCSI device interfacing
(d) Mediante la instruccin adecuada, haz que la
tarjeta grca realice el volcado de esa infor- The Carbon APIs for the Apple Macintosh Mac OS X
macin sobre la pantalla.
Symfony para PHP
2. Por medio de un sistema operativo para hacer parte
del trabajo:
3 Referencias
(a) Carga una fuente tipogrca proporcionada
por el sistema operativo. [1] https://twitter.com/RAEinforma/status/
(b) Haz que el sistema operativo borre la pantalla. 559716363376541696
1
2 5 ENLACES EXTERNOS
4 Vase tambin
Ambiente de desarrollo integrado
5 Enlaces externos
www.google.com/apis Google APIs (beta).
www.afterbanks.com/api/documentation/es API de
Afterbanks.
portal.solutecia.com/productos-servicios/
bitacora-solutecia/api/ API de Solutecia.
Vdeo que explica el concepto de administracin de
las API (API Management) (en ingls).
solidgeargroup.com/
automatizar-pruebas-api-usando-postman Au-
tomatizar pruebas de una API.
3
6.2 Imgenes
1 Historia
La primera iniciativa se produjo durante las primeras fa-
ses de desarrollo del Intel Itanium de HP a mediados de
los aos 90. Debido a que estos procesadores apuntaban
alto, las especicaciones del BIOS resultaban muy limi-
tadas, por ello Intel desarroll inicialmente lo que sera la
IBI, del acrnimo ingls Intel Boot Initiative, que poste-
riormente fue renombrado a EFI.
El 25 de julio de 2005 se cre la fundacin UEFI (Uni-
ed Extensible Firmware Interface) cuya labor consista
en desarrollar y promocionar la plataforma EFI. El siste-
ma ha sido administrado y desarrollado desde entonces
por un grupo de trabajo transversal en la industria inclu-
yendo a Intel, AMD, Apple, Dell, Lenovo y Microsoft.
A principios de 2007, la versin 2.1 de la especicacin
UEFI vio la luz y, meses despus, trajo consigo mejoras
como: cifrado, autenticacin de red y la destacable Inter-
Sistema operativo faz de usuario humana.
2 Ventajas
Extensible Firmware Interface
La interfaz UEFI incluye bases de datos con informacin
de la plataforma, inicio y tiempo de ejecucin de los ser-
vicios disponibles listos para cargar el sistema operativo.
Firmware UEFI destaca principalmente por:
1
2 5 ADOPCIN
El servicio de arranque incluye texto e interfaz gr- El Framework de Intel recibe el nombre de Tiano. Tiano
ca orientado a una consola que se encarga de so- se ejecuta en procesadores XScale, Itanium e IA32 ba-
portar y gestionar dispositivos, buses, bloques y ser- jo licencia propietaria, aunque parte del cdigo ha sido
vicios de archivo. liberado bajo licencia BSD recibiendo el nombre de Pro-
yecto TianoCore. Phoenix Tecnologies comercializa ac-
Los servicios de ejecucin son los que controlan la tualmente BIOS Phoenix SecureCore Tiano y Phoenix
fecha, la hora o el NVRAM. MicroCore compatibles con la interfaz UEFI
3
5.2 Plataformas que utilizan UEFI Introducido soporte EFI en los sistemas operativos
x64 de Microsoft Windows, como Windows Server
El primer procesador Itanium dirigido a estaciones de tra- 2008, Windows 7 y Windows Vista Service Pack 1.
bajo y lanzado en el ao 2000 ya soportaba la especica- Microsoft no ofrece soporte UEFI a los sistemas de
cin EFI 1.02. 32 bits, como, por ejemplo, Windows XP.
En el 2002, el Itanium 2 ya soportaba EFI 1.10, capaz Windows 8 sustituy completamente el BIOS por
de arrancar Microsoft Windows, GNU/Linux, FreeBSD, EFI, permitiendo diversas mejoras.
HP-UX y OpenVMS.
Desde el 2005, se ha tratado de implementar EFI en ar-
quitecturas extrapolables a las de PC, como las basadas 6 Vase tambin
en Intel XScale o sistemas embebidos.
En 2006 Apple mont sus ordenadores basados en la ar- BIOS
quitectura x86 de Intel, y, por ello, comenzaron a utilizar
Computadora personal
sistemas EFI en lugar de Open Firmware como se haca
en los anteriores sistemas basados en PowerPC; poste- Coreboot
riormente Apple lanz Bootcamp, que permite un parti-
cionado no destructivo y soporte de drivers para la insta- Firmware
lacin de sistemas operativos Microsoft sin necesidad de
IBM
reinstalar Mac OS X. Se aadi compatibilidad de BIOS
a la EFI. IBM PC ROM BIOS
En el 2008, bastantes sistemas basados en 64 bits han LinuxBIOS
adoptado la EFI, si bien muchos de estos sistemas slo
soportan el arranque mediante BIOS, gracias al Mdu- Open Firmware
lo de soporte de compatibilidad; muchos otros, en cam-
bio, comienzan a arrancar en sistemas UEFI, por ejem- OpenBIOS
plo, servidores IBM, ciertas placas base MSI de soporte OpenBook Project
ClickBIOS, porttiles HP Elitebook y algunas Tabletas
PC HP.
En 2009, sistemas x de IBM (x3550 M2, x3650 M2, iDa- 7 Enlace externo
taPlex dx360 M2) y Bladecenter HS22. Dell PowerEdge
T610; servidores R610, R710, M610, M710. www.uefi.org Sitio ocial de UEFI.
9.2 Imgenes
Archivo:Efi-simple_es.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/4/4e/Efi-simple_es.svg Licencia: Public domain
Colaboradores: Trabajo propio Artista original: Msikma
Archivo:Uefi_logo.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/d/df/Uefi_logo.svg Licencia: Public domain Colabora-
dores: UEFI Artista original: Mouagip
1
2 3 VASE TAMBIN
cargando extensiones desde disquete. mas de pitidos (beeps) para avisar al usuario que tipo de
La evolucin causada por el compatible IBM PC hizo que problema hay.
precisamente el primer componente en que se sustituye El SETUP es una porcin de software que a diferencia
la ROM/EPROM por una memoria ash sea el chip de de sus compaeros, podemos entrar en su conguracin
BIOS para permitir las actualizaciones de su Firmware. Y y realizar cambios en sus parmetros con la intencin de
lo segundo fuer la pequea memoria esttica o baterizada optimizar el funcionamiento del hardware. El men prin-
donde se almacenaban los parmetros de arranque (como cipal del SETUP est dividido en secciones, en las que
las preferencias establecidas en la BIOS). se agrupan las opciones de acuerdo con los componentes
Actualmente los sistemas operativos en general ya no van que se pueden modicar.
en ROM. Las actuales PDAs, tabletas y telfonos inteli-
gentes se reeren a lo que es su sistema operativo como
ROM, pero en realidad (excepto en los primeros equi- 2 Velocidad
pos) es parte de la memoria ash que se deja reservada
por dicho sistema para que el usuario no pueda acceder a 2.1 Velocidad de lectura
ella excepto en procesos especiales de actualizacin (que
si fallan pueden acabar con un pisapapeles caro). Aunque la relacin relativa entre las velocidades de las
La otra gran aplicacin de la ROM/EPROM para al- memorias RAM y ROM ha ido variando con el tiempo,
macenar videojuegos tuvo su ltimo episodio con dos desde el ao 2007 la RAM es ms rpida para la lectura
videoconsolas de Nintendo: la Nintendo 64 y la Game que la mayora de las ROM, razn por la cual el conte-
Boy Advance fueron las ltimas en montar el videojuego nido ROM se suele traspasar normalmente a la memoria
en todo o parte en un chip ROM dentro de un cartucho. RAM, desde donde es leda cuando se utiliza.
Los usuario de la Nintendo DS siguen rerindose a sus
juegos como cartuchos ROM pero son en realidad un tipo
especial de tarjetas de memoria ash. Todas las consolas 2.2 Velocidad de escritura
de sobremesa usan soportes pticos o incluso descargas
de Internet a sus discos duros. Para los tipos de ROM que puedan ser modicados elc-
tricamente, la velocidad de escritura siempre es mucho
ms lenta que la velocidad de lectura, pudiendo requerir
1.2 Uso para almacenamiento de datos voltaje excepcionalmente alto, movimiento de jumpers
para habilitar el modo de escritura, y comandos especia-
Como la ROM no puede ser modicada (al menos en la les de desbloqueo. Las memorias Flash NAND logran la
antigua versin de mscara), solo resulta apropiada para ms alta velocidad de escritura entre todos los tipos de
almacenar datos que no necesiten ser modicados duran- memoria ROM reprogramable, escribiendo grandes blo-
te la vida de este dispositivo. Con este n, la ROM se ha ques de celdas de memoria simultneamente, y llegando
utilizado en muchos ordenadores para guardar tablas de a 15 MB/s. La RAM tiene una capacidad mxima de 128
consulta, utilizadas para la evaluacin de funciones mate- MB UCV.
mticas y lgicas. Esto era especialmente eciente cuan-
do la CPU era lenta y la ROM era barata en comparacin
con la RAM. 3 Vase tambin
Memoria de acceso aleatorio (RAM)
1.3 Contenido en un ROM
EPROM
Dentro de la memoria ROM se encuentran tres pequeos
Memoria EPROM
programas: el BIOS, el SETUP y el POST. El BIOS es
un programa de slo lectura cuya funcin principal es ac- Memoria EEPROM
tuar como intermediario entre los recursos del Hardware
y Software. Memoria ash
La funcin del POST es realizar una prueba inicial del Emulador
Hardware crtico del sistema. Cuando se presiona el bo-
tn de encendido de un PC, el primer proceso que se lleva Extensible Firmware Interface (EFI)
a cabo es el POST. Si todo funciona correctamente, el sis-
tema sigue su proceso habitual que culmina con la carga
del sistema operativo. Si por el contrario, algunos de los
dispositivos crticos no pasa la prueba POST, el sistema
se detiene en esa instancia e informa a travs de un unos
mensajes sonoros cul es el error, el BIOS tiene un siste-
3
4.2 Imgenes
Archivo:Commons-emblem-question_book_orange.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/1f/
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//commons.wikimedia.org/wiki/File:
Commons-emblem-issue.svg' class='image'><img alt='Commons-emblem-issue.svg' src='https://upload.wikimedia.org/wikipedia/
commons/thumb/b/bc/Commons-emblem-issue.svg/25px-Commons-emblem-issue.svg.png' width='25' height='25' srcset='https:
//upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/38px-Commons-emblem-issue.svg.png 1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Commons-emblem-issue.svg/50px-Commons-emblem-issue.svg.png 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//commons.wikimedia.org/wiki/File:Question_book.svg' class='image'><img
alt='Question book.svg' src='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/25px-Question_
book.svg.png' width='25' height='20' srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/
38px-Question_book.svg.png 1.5x, https://upload.wikimedia.org/wikipedia/commons/thumb/9/97/Question_book.svg/50px-Question_
book.svg.png 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
Archivo:D23128C_PROM.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/b/b9/D23128C_PROM.jpg Licencia: CC-
BY-SA-3.0 Colaboradores: Bill Bertram Artista original: Bill Bertram
Archivo:Eprom.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/3/39/EPROM_Intel_C1702A.jpg Licencia: CC-BY-SA-
3.0 Colaboradores: Author personnal collection. Artista original:
Author : Poil 01:10, 17 Apr 2005 (UTC)