Anda di halaman 1dari 58

Instituto Universitario del Prado

Asignatura:
Introduccin a la Informtica
Tema 1:
Introduccin a los sistemas de computacin

1.1. Evolucin y actualidad en los sistemas computacionales

. Origen

La primera referencia en describir ampliamente el procedimiento de la ingeniera d


e sistemas fue
publicada en 1950 por Melvin J. Kelly, entonces director de los laboratorios de
Bell Telephone,
subsidiaria de investigacin y desarrollo de AT&T. Esta compaa jug un papel important
e en el
nacimiento de la ingeniera de sistemas por tres razones: la acuciante complejidad
que planteaba el
desarrollo de redes telefnicas, su tradicin de investigacin relativamente liberal y
su salud financiera.
As, en 1943 se fusionaron los departamentos de ingeniera de conmutacin e ingeniera d
e transmisin

bajo la denominacin de ingeniera de sistemas. A juicio de Arthur D. Hall, "la func


in de ingeniera de
sistemas se haba practicado durante muchos aos, pero su reconocimiento como entida
d organizativa
gener mayor inters y recursos en la organizacin". En 1950 se cre un primer curso de
posgrado sobre
el tema en el M.I.T. y sera el propio Hall el primer autor en escribir un tratado
completo sobre el tema
[Hall, 1962].

. Historia

Para Hall, la ingeniera de sistemas es una tecnologa por medio de la cual el conoc
imiento de
investigacin se traslada a aplicaciones que satisfacen necesidades humanas median
te una secuencia de
planes, proyectos y programas de proyectos.

Hall definira asimismo un marco para las tareas de esta nueva tecnologa, una matri
z tridimensional de
actividades en la que los ejes representaban respectivamente:

La dimensin temporal.- Son las fases caractersticas del trabajo de sistemas, desde
la idea
inicial hasta la retirada del sistema.
o La dimensin lgica.- Son los pasos que se llevan a cabo en cada una de las fases
anteriores,
desde la definicin del problema hasta la planificacin de acciones.
o La dimensin del conocimiento.- Se refiere al conocimiento especializado de las
diversas
profesiones y disciplinas.

Con la invencin de la computacin surgi una gran gama de aplicaciones y tecnologas as


ociadas que
permitieron, y permiten, el uso de nuevas herramientas de trabajo y conocimiento
: se desarrollaron y
mejoraron tecnologas como la telefnica, lo que permiti la masificacin de su uso. Ade
ms surgi lo
que se conoce como internet, que le provee a la humanidad el acceso, de manera rp
ida y
mayoritariamente gratuita, al conocimiento, mejorando la calidad de la educacin;
Tambin permite el
acceso a nuevas formas de entretenimiento.

. Evolucin

La expresin "ingeniera de sistemas" se remonta 1940, de manos de Bell Telephone La


boratories. La
puesta en prctica de esta disciplina surgi de la necesidad, por parte del Departam
ento de Defensa, la

NASA, y otras industrias, de identificar y manipular las propiedades de un siste


ma en conjunto, dado que
en proyectos complejos de ingeniera, la suma de las propiedades de las partes poda
llegar a diferir en
gran medida.

El empleo del trmino ingeniero de sistemas data de finales de los aos 60 cuando empr
esas como
IBM lo introdujeron como un cargo laboral que designara a personal competente, c
on una formacin
profesional diversa, y capacitado en el conocimiento de equipo y tecnologa de la
empresa. Esto era con
el fin de que asesoraran la manera en que los productos satisfaran las necesidade
s de procesamiento de
informacin de los clientes potenciales de la empresa. A mediados de los aos 70 apa
rece en la UNI una
carrera universitaria denominada Ingeniera de Sistemas . La ingeniera en sistemas com
putacionales
representa uno de los campos de la ingeniera que ms ha evolucionado en los ltimos ao
s. Son
innumerables las innovaciones en la creacin de nuevos sistemas que permitan, tant
o a las personas
como a las instituciones, realizar satisfactoriamente sus actividades.

El desarrollo de dispositivos de clculo no se limita al siglo XX. Mucho antes de


la aparicin de los
primeros computadores electrnicos hubo calculadores electromecnicos y an antes que s
tos
existieron dispositivos mecnicos.

Uno de los primeros dispositivos mecnicos para contar fue el baco, cuya historia s
e remonta a las
antiguas civilizaciones griega y romana. Este dispositivo consta de cuentas ensa
rtadas en varillas, que a
su vez estn montadas en un marco rectangular. Al desplazar las cuentas sobre las
varillas sus posiciones
representan valores almacenados, y es mediante dichas posiciones que se represen
tan y almacenan
datos. A este dispositivo no se le puede llamar computadora al carecer del eleme
nto fundamental
llamado programa.

La primera computadora fue la mquina analtica creada por Charles Babbage, profesor
matemtico de
la Universidad de Cambridge, en el siglo XIX. La idea de Babbage sobre un comput
ador naci a causa de
lo tedioso y propenso a errores que era el proceso de elaboracin de tablas matemti
cas. En 1823, el
gobierno Britnico lo apoy para crear el proyecto de una mquina de diferencias, un d
ispositivo

mecnico para efectuar sumas repetidas.

A finales del siglo XIX, las mquinas mecnicas de clculo se utilizaban en los negoci
os y la gestin de
empresas, como la Mquina Tabuladora de H. Holletrith (1886). Con ella se realiz el
11 censo
norteamericano. Posteriormente se fund la Tabulating Machine Corporation que desp
us se
transformara en IBM.

En 1944 se construy, en la Universidad de Harvard, la Mark I, diseada por un equip


o encabezado por
Howard H. Aiken. Esta mquina no es considerada como computadora electrnica, pues n
o era de
propsito general y su funcionamiento estaba basado en dispositivos electromecnicos
llamados
relevadores.

En 1947 se construy, en la Universidad de Pensilvania, la ENIAC (Electronic Numer


ical Integrator And
Calculator), la primera computadora electrnica. El equipo de diseo lo encabezaron
los ingenieros John
Mauchly y John Eckert. Esta mquina ocupaba todo un stano de la Universidad, tena ms
de 18,000
tubos de vaco, consuma 200 KW de energa elctrica y requera todo un sistema de aire ac
ondicionado;
no obstante, tena la capacidad de realizar cinco mil operaciones aritmticas en un
segundo.

La EDVAC (Electronic Discrete Variable Automatic Computer) fue diseada por este n
uevo equipo. Tena
aproximadamente cuatro mil bulbos y usaba un tipo de memoria basado en tubos lle
nos de mercurio por
donde circulaban seales elctricas sujetas a retardos.

En 1946 se dise otra mquina de programa almacenado, muy similar al diseo de EDVAC, p
ero su
memoria se construy con bulbos y tubos de rayos catdicos. Esta mquina se conoce com
o IAS , y se
considera el prototipo de todas las mquinas subsecuentes de todo proceso general.

De 1940 a 1950 se construy una gran cantidad de computadoras bajo los diseos de ED
VAC e IAS. Se
incluyen otros diseos, como la ATLAS, del Tecnolgico de Massachusetts, que se cons
idera la primera
en utilizar memoria de ncleos de ferrita.

Cuando ya no fue posible confiar en la evolucin de diseo para mejorar el sistema,


y los instrumentos

existentes no eran suficientes para satisfacer la demanda creciente, los nuevos


mtodos comenzaron a
ser desarrollados y dirigidos directamente a lo complejo. La evolucin de la ingen
iera de sistemas, que
contina hoy en da, comprendi el desarrollo y la identificacin de nuevos mtodos y tcnic
as de
modelado. Estos mtodos ayudaron a comprender mejor los sistemas de ingeniera confo
rme estos
crecan y se hacan ms complejos.

. Estado actual

El ingeniero en sistemas computacionales es lder, analtico, crtico y creativo, con


visin estratgica y
amplio sentido tico, capaz de disear, implementar y administrar infraestructuras c
omputacionales
para aportar soluciones innovadoras en beneficio de la sociedad, en un contexto
global,
multidisciplinario y sustentable.

La tecnologa moderna y las computadoras han cambiado la forma de resolver las dif
icultades del mundo
actual. La ingeniera en sistemas computacionales representa uno de los campos de
la ingeniera que
ms ha evolucionado en los ltimos aos. Son innumerables las innovaciones que ha habi
do para crear
nuevos sistemas que permitan, tanto a las personas como a las instituciones, rea
lizar satisfactoriamente
sus actividades.

La Ingeniera de sistemas es un modo de enfoque interdisciplinario que permite est


udiar y comprender la
realidad, con el propsito de implementar optimizaciones a sistemas complejos. Pue
de verse como la
aplicacin tecnolgica de la teora de sistemas a los esfuerzos de la ingeniera, adopta
ndo el paradigma
sistmico. La ingeniera de sistemas integra otras disciplinas y grupos de especiali
dad en un esfuerzo de
equipo, formando un proceso de desarrollo estructurado.

Una de las principales diferencias de la ingeniera de sistemas respecto a otras d

isciplinas de ingeniera
tradicionales es que esta no construye productos tangibles. Mientras que los ing
enieros civiles podran
disear edificios o puentes, los ingenieros electrnicos podran disear circuitos. Los
ingenieros de
sistemas tratan con sistemas abstractos con ayuda de las metodologas de la cienci
a de sistemas, y
confan adems en otras disciplinas para disear y entregar los productos tangibles qu
e son la realizacin
de esos sistemas. Otra caracterstica de la ingeniera de sistemas es su capacidad d
e interrelacin con
otras disciplinas cuando el trabajo as lo requiera.

1.2. Fundamentos de hardware

Definicin

Hardware es un trmino de origen anglosajn que hace referencia a cualquier componen


te fsico
tangible que trabaja e interacta de algn modo en los equipos de cmputo; incluye tan
to los elementos
internos del disco duro, la unidad de CD-ROM y unidades USB, as como el cableado,
los circuitos, el
gabinete, etc. Tambin hace referencia a elementos externos como la impresora, el
ratn (o mouse), el
teclado, el monitor y dems perifricos.

En las computadoras de escritorio, laptops o similares, como algunos telfonos cel


ulares o reproductores
porttiles, se distinguen diferentes componentes:

Una unidad central de procesamiento (CPU, por sus siglas en ingls) que constituy
e el cerebro de
la mquina.
Perifricos de entrada, como un ratn, teclado, escner, entrada de micrfono y cmara web
.
Perifricos de salida, como altavoces, impresora, monitor (con excepcin de las pant
allas
tctiles).
Memoria RAM (memoria de acceso aleatorio) para almacenamiento temporal de datos
, y el
lugar donde se ejecutan programas en conjunto con la CPU y otros componentes.
Mixtos: discos rgidos, mdems, memorias USB y pantallas tctiles.
Hardware grfico: tarjetas de video (estas poseen su propia unidad de procesamien

to central).

Una computadora con tan slo una CPU y memoria interna no tiene mucho valor. Los p
erifricos
permiten que dicha computadora se comunique con el mundo exterior y almacene inf
ormacin para su
uso posterior. Estos perifricos se clasifican exclusivamente en dispositivos de e
ntrada o de salida. A un
tercer grupo pertenecen los dispositivos de almacenamiento externos que aceptan
informacin desde y
hacia la CPU.

. Dispositivos de entrada

Los usuarios de hoy en da disponen de cientos de dispositivos de entrada, los cua


les facilitan
enormemente la introduccin de datos en sus computadoras. De todos ellos, el ms fam
iliar es el
teclado.

. Teclado

El teclado QWERTY, nombrado as por las teclas de la primera fila, se convirti en e


l estndar, primero de
las mquinas de escribir, y despus de los PC. Sin embargo, los teclados modernos se
han ido alejando
del diseo original de las mquinas de escribir.

Ya sea estndar o ergonmico, un teclado enva seales a la computadora a travs de un cab


le, aunque
los ms modernos al ser inalmbricos no estn sujetos a ste sistema. El diseo de los tec
lados es muy
variado: hay teclados plegados, impresos en membranas, manejables con una sola m
ano y miniatura. A
la fecha siguen habiendo diversas innovaciones.

. Dispositivos de sealizacin

Para introducir texto y datos numricos se utiliza el teclado. Para otras tareas,
como enviar comandos o
posicionar un cursor, se utiliza el ratn, o mouse. El ratn est diseado para mover un
puntero sobre la
pantalla y sealar a caracteres u objetos especficos. Los primeros diseos disponan de
una bola en su
interior que rodaba al desplazar el mouse. Por el contrario, los ms modernos util
izan la luz reflejada por
un led para detectar el movimiento. Algunos tambin incluyen una rueda de desplaza
miento entre los
dos botones estndar, llamada scroll.

La mayora de equipos de cmputo se venden en compaa de un ratn, sin embargo, las portti
les son
una excepcin a la regla. Como stas no siempre estn sobre superficies por las que el
ratn pueda
desplazarse, los fabricantes han proporcionado alternativas a este dispositivo d
e sealacin, entre los
que se encuentran:

El touchpad (o trackpad): es un pequeo panel sensible a las


suario mueve el
puntero arrastrando un dedo sobre esta superficie.
El pointing stick (o TrackPoint): es un pequeo palo situado
ado y que responde a la presin de un dedo para desplazar el
El trackball: permanece quieto mientras el usuario mueve una
ue permite
controlar la posicin del puntero en la pantalla.

presiones leves. El u
en el centro del tecl
puntero.
prominente esfera q

Hay otros tipos de dispositivos de sealizacin especiales para determinados tipos d


e trabajo o para
fines de entretenimiento. Por ejemplo, el joystick, que es similar a la palanca
de cambios de un coche y
se utiliza principalmente para los juegos, y el lpiz electrnico, con el cual se ap
untan y seleccionan
elementos sobre una pantalla.

. Herramientas de lectura

Existen alternativas para escribir nmeros completos o palabras. Los siguientes so


n algunos dispositivos
que permiten leer marcas y cdigos de representacin:

Lectores pticos de marcas: usan la luz reflejada para determinar la posicin de las
marcas de un
lpiz en hojas de respuesta tipo test y formularios similares.
Lector de caracteres de tinta magntica: lee caracteres impresos con una tinta mag
ntica
especial.

Los lectores de cdigos de barras: utilizan luz para leer cdigos UPC (Cdigos de prod
ucto
universal, Universal Product Codes), cdigos de inventario o cualquier otro tipo d
e codificacin
creado a partir de patrones de barras de anchura variable.
El OCR (Reconocimiento ptico de caracteres, Optical Character Recognition) se emp
lea para
determinar un carcter individual en una pgina impresa de forma que se pueda almace
nar y
editar como si fuera texto.

. Digitalizando el mundo real

Antes de que la computadora pueda reconocer la escritura manual o un texto impre


so, se debe
digitalizar la informacin mediante un escner u otro dispositivo de entrada similar
. Debido a la variedad
de medios en cmo se almacena la informacin en el mundo real, existen una gran cant
idad de
dispositivos preparados para capturar y digitalizar dicha informacin.

Escner: es un dispositivo capaz de crear una representacin digital de una imagen i


mpresa.
Cmara digital: puede capturar instantneas del mundo real y almacenarlas como imgene
s
digitales.
Digitalizador de vdeo: es un conjunto de circuitos que pueden capturar la entrada
procedente
de una cmara de vdeo.

Digitalizador de audio: contiene los elementos necesarios para digitalizar sonid


os procedentes
de un micrfono o cualquier otro dispositivo de audio.

Nuevos dispositivos de entrada aparecen a medida que la tecnologa evoluciona y la


s necesidades
humanas cambian. Gracias a estos dispositivos, nuestra concepcin del uso de una c
omputadora se
expande hasta lmites insospechados.

. Salida de la informacin

Los dispositivos de salida convierten los patrones de bits internos en un format


o que los humanos
puedan comprender. La mayora de computadoras de hoy da generan operaciones de sali
da mediante
dos tipos de dispositivos principales: pantallas e impresoras.

Pantallas

La pantalla, ya sea de tipo CRT (tubo de rayos catdicos, Cathode-Ray Tube) o LCD
(pantalla de cristal
lquido, Liquid Crystal Display), sirve como una ventana de una sola direccin entre
la computadora y el
usuario que muestra la informacin que continuamente genera la mquina.

El tamao de visualizacin se mide por la diagonal que cruza la pantalla de una esqu
ina a otra, en unidad
de pulgadas. Las imgenes en un monitor estn compuestas por pequeos puntos, llamados
pxeles.
Mientras ms juntos estn los puntos, mejor es la calidad de la imagen y, por ende,
mayor ser la
resolucin. La resolucin no es el nico factor que determina la calidad de una imagen
. Un monitor
tambin est condicionado por la profundidad de color, que se define como el nmero de
colores
diferentes que el monitor puede visualizar al mismo tiempo. Ese factor recibe a
veces el nombre de
profundidad de bit: entre mayor es el rango de colores por pixel, se requieren ms
bits de espacio en la
memoria de video.

. Videbeam o videoproyector

Un proyector de vdeo, o vdeo proyector, es un aparato que recibe una seal de vdeo y
proyecta la
imagen correspondiente en una pantalla de proyeccin usando un sistema de lentes,
permitiendo as
visualizar imgenes fijas o en movimiento.

Salida en papel

Una impresora puede producir una copia permanente en papel de cualquier cosa que
se muestre en la
pantalla. Existen diversos modelos, pero todas se clasifican en dos grupos bsicos
: impresoras de
impacto e impresoras sin impacto.

I. Impresoras de impacto: forman las imgenes haciendo que un martillo golpee sobr
e una cinta
entinada que, a su vez, se encuentra sobre una hoja de papel.

. Impresoras de lnea: son capaces de realizar las impresiones lnea por lnea.
. Impresoras matriciales: imprimen carcter por carcter.

II. Impresoras sin impacto: imprimen mediante el uso de tinta ya sea slida o lquid
a, como

tambin mediante rayos lser y haces de luz. En consecuencia, son menos ruidosas y ms
rpidas.

. Impresoras lser: pueden imprimir rpidamente una gran cantidad de pginas por minut
o con
una gran calidad de texto y grficos.
. Impresoras de inyeccin de tinta: pulverizan tinta directamente sobre el papel p
ara generar la
copia impresa. Son ms lentas que las que utilizan lser, pero son ms pequeas y ligera
s.

Gracias a su capacidad para imprimir texto e imgenes en alta resolucin, las impres
oras sin impacto
dominan actualmente el mercado. Adems de stas impresoras tenemos:

. Las MFP (Impresoras multifuncin, Multifunction Printers): combinan varias herra


mientas como
un escner, una impresora lser o de inyeccin de tinta y un fax-mdem.
. Plotter: es un perifrico destinado a trabajos de impresin especficos (planos, esq
uemas
complejos, dibujo de piezas, grandes formatos, etc.). Se utilizan en diversos ca
mpos como
ciencias, ingeniera, diseo, arquitectura, etc.

Salida de audio

Un PC puede reproducir cualquier tipo de grabacin digital, desde una grabacin case
ra hasta una
cancin descargada de internet. Para generar cualquier tipo de sonido, es preciso
que la computadora
disponga de altavoces o auriculares.

. Altavoces: estos dispositivos de salida son mediante los cuales la computadora


emite sonidos
que proceden de la tarjeta de sonido.
. Auriculares: se colocan en los odos para poder escuchar los sonidos que enva la
tarjeta de

sonido. La gran ventaja de estos dispositivos de salida es que los sonidos que e
miten no pueden
ser escuchados por otra persona y slo los puede or la persona que utiliza los auri
culares.

Almacenamiento de la informacin

Los dispositivos de almacenamiento permiten a la computadora registrar informacin


de forma
semipermanente, de modo que pueda utilizarse ms adelante por esa misma computador
a o por otra.

. Cinta magntica

Es un dispositivo de almacenamiento habitual en la mayora de mainframes y en algu


nos PC ya que ste
puede escribir datos y leerlos. Adems, es capaz de almacenar grandes cantidades d
e informacin en un
espacio pequeo y a un costo relativamente bajo.

. Discos magnticos

Un disco magntico tiene una superficie recubierta magnticamente que puede almacena
r informacin
codificada. Una unidad de disco escribe y lee datos en la superficie de ese disc
o, pero a diferencia de las
cintas, puede recuperar rpidamente la informacin desde cualquier parte del disco s
in tener en cuenta
el orden en que fueron grabados.

. Discos pticos

Estas unidades usan un rayo lser en lugar de un imn para leer y escribir bits de d
atos en la capa
reflectante del disco. Una superficie plstica protege esta capa reflectante de lo
s daos fsicos,
permitiendo que la luz pase a travs de ella. Las unidades pticas ms comunes son: CD
-ROM, CD-RW,
DVD-ROM y DVD-RW.

. Tipos de discos pticos

. CD-ROM: son discos compactos de 650 o 700 MB de capacidad que pueden ser ledos
la cantidad
de veces el usuario lo desee, pero su contenido no puede ser modificado una vez
que haya sido
grabado.
. CD-RW: a diferencia del CD-ROM, estos dispositivos de almacenamiento son regra
bables. Las
unidades CD-RW tienen la capacidad de grabar informacin sobre discos CD-ROM y CDRW,

adems de poder leer discos CD-ROM y CD de audio. Las interfaces soportadas por es
tos
dispositivos de almacenamiento son EIDE, SCSI y USB.
. DVD-ROM: consiste en un disco compacto que tiene la capacidad de almacenar 4.7
GB de datos
en una cara del disco. Los futuros medios de DVD-ROM sern capaces de almacenar da
tos en
ambas caras del disco y usar medios de doble capa con el objetivo de permitirle
a las unidades
leer hasta cuatro niveles de datos almacenados ellas. De esta forma se obtiene u
na capacidad de
almacenamiento de 17 GB.
. DVD-RAM: tienen una capacidad de 2.6 GB en un disco de cara simple y 5.2 GB en
un disco de
doble cara. Los DVD-RAM son capaces de leer cualquier disco CD-R o CD-RW, pero n
o son
capaces de escribir sobre dichos formatos. Adems, los DVD-RAM son regrabables, pe
ro dichos
discos no pueden ser ledos por unidades DVD-ROM.

. Dispositivos de almacenamiento en estado slido

Teniendo como ejemplo las memorias flash, resultan ms prcticos para la movilidad y
sin ruidosos,
como los anteriores.

. Memoria ROM: Esta memoria es slo de lectura y sirve para almacenar el programa
bsico
de iniciacin, instalado desde fbrica. Este programa entra en funcin en cuanto es
encendida la computadora y su primer funcin es la de reconocer los dispositivos
(incluyendo memoria de trabajo).

. Memoria RAM: Esta es la denominada memoria de acceso aleatorio, es decir, pued


e tanto
leerse como escribirse. Tiene la caracterstica de ser voltil: slo opera mientras pe
rmanezca
encendida la computadora. En ella son almacenadas tanto las instrucciones que ne
cesita
ejecutar el microprocesador, como los datos que introducimos y deseamos procesar
, as
como los resultados obtenidos de esto.

imagen

. Disquete o disco flexible: El disco flexible (floppy disk en ingls) es uno de l


os tipos de
dispositivos de almacenamiento de datos ms antiguos de la historia de los sistema
s
informticos. Est formado por una pieza circular de material magntico que permite la
grabacin y lectura de datos. Dicha pieza circular se encuentra encerrada en una c
arcasa fina
y cuadrada de material plstico. Los discos suelen ser de 3 o 5 pulgadas.
. PC Cards: Las PC Cards pueden ser dispositivos de almacenamiento o tarjetas de
I/O. Dichas
tarjetas son compactas, ligeras y fiables, convirtindolas en dispositivos ideales
para
notebooks, handheld, PDAs y palmtop. Gracias a su pequeo tamao, estos dispositivos
son
utilizados para el almacenamiento de datos, aplicaciones, etc. Las PC Cards pose
en el
tamao de una tarjeta de crdito. Existen tres espesores diferentes para las PC Card

s:

. Tipo I: 3.3 milmetros (mm) de espesor


. Tipo II: 5.0 milmetros (mm) de espesor
. Tipo III: 10.5 milmetros (mm) de espesor

. Flash cards: Estos dispositivos de almacenamiento son tarjetas de memoria no v


oltil, es decir,
conservan los datos guardados en ellas aun cuando estas no se encuentran aliment
adas por una
fuente elctrica. Las flash cards presentan una gran ventaja: sus datos pueden ser
ledos,
modificados y borrados. Gracias a las caractersticas positivas que presentan esto
s dispositivos,
las flash cards han sido adoptadas como medio de almacenamiento de cmaras digital
es,
telfonos mviles, dispositivos digitales de msica, etc. Con esto se obtiene un menor
costo en la
produccin de dichos aparatos electrnicos, al igual que una gran capacidad de almac
enamiento.

. Tipos de flash cards

. Pendrive/Memory Flash: Es un pequeo dispositivo de almacenamiento que utiliza m


emoria
flash para guardar informacin sin necesidad de pilas o bateras. Los pendrive fuero
n creados
con la resistencia que los antiguos medios de almacenamiento portables carecan, p
or lo que
son resistentes a los rasguos y al polvo. Marcaron una gran diferencia con respec
to los CD y
los discos flexibles. Los sistemas operativos ms modernos son capaces de leer y e
scribir en

Dispositivos de almacenamiento
dichos dispositivos sin necesidad de controladores especiales.

. Unidades de Zip: Los dispositivos de almacenamiento Iomega Zip fueron lanzados


al mercado
en 1994 por la empresa Iomega. Contaban con una capacidad de 100 MB en su primer
a
versin. Si bien el objetivo de la empresa Iomega era que las unidades Zip fueran
las
sucesoras de los discos flexibles de 3.5 pulgadas, estas nunca lo lograron compl
etamente.
Los primeros discos Zip del mercado compitieron con el Superdisk, un dispositivo
que
almacenaba un 20% ms de datos que las unidades Zip, pero presentaba una gran
desventaja: tena menor velocidad de transferencia de datos. Aos despus, la baja de
precios de las grabadoras CD-R y CD-RW, as como la introduccin de los pendrives y
tarjetas
flash al mercado, termin por desplazar a las unidades Zip del mercado. La unidad
Zip posea
tres versiones:

Interfaz SCSI
Interfaz IDE
Unidad Iomega Zip que se conecta a un puerto paralelo

1.3. Fundamentos de software

Definicin

Algunos autores prefieren ampliar la definicin del software al incluir tambin todo
lo que es producido
en el desarrollo del mismo. La tecnologa ha transformado la educacin al proveernos
de diversas
herramientas necesarias en el procesamiento y transmisin de la informacin. Son imp
ortantes para la
tecnologa de la organizacin escolar las bases de datos, editores de texto, hojas d
e clculo, programas
grficos, paquetes estadsticos, paquetes de programacin, entre otros.

En computacin, el software, en sentido estricto, es todo programa o aplicacin disea


do para realizar

tareas especficas. Es el soporte lgico del material que permite que la computadora
pueda desempear
tareas inteligentes, conduciendo a los componentes fsicos y hardware con instrucc
iones y datos a travs
de diferentes tipos de programacin.

El software es el conjunto de instrucciones que las computadoras utilizan para m


anipular datos. Sin l, la
computadora sera un conjunto de mecanismos inutilizables. Al cargar los programas
en una
computadora, la maquina actuar como si recibiera una educacin instantnea; de pronto
sabe como
pensar y como operar.

El software es una coleccin de programas, documentos, procedimientos y rutinas as


ociadas como la
operacin de un sistema de cmputo. Se distingue de los componentes fsicos llamados h
ardware, pues
a los programas de computacin se les llama software. Mediante estos programas el
sistema cumple por
completo con los objetivos, opera con eficiencia, est documentada de manera adecu
ada y es sencillo de
operar.

. El lenguaje de las computadoras

Cada computadora procesa instrucciones en un "lenguaje mquina": este lenguaje emp


lea cdigos
numricos en base al 1 y 0 para ejecutar las operaciones ms bsicas en una computador
a. Los
programadores de antao estaban obligados a escribir cada programa en lenguaje mqui
na, por lo que
trasladar cada instruccin a cdigo binario representaba una tarea tediosa.

En la actualidad, la mayora de los programadores utiliza lenguajes de programacin


como Java o Visual
Basic.NET, lo cuales se encuentran a medio camino entre lo que entienden un huma
no y lo que se debe
suministrar a la mquina.

Para poder comunicarnos instrucciones en niveles ms altos de lenguaje se necesita

la ayuda de un
"traductor". Mientras ms sofisticado es el traductor, ms sencillo resulta el traba
jo del programador. El
programa traductor ms comn es el compilador. Su misin es la de convertir un program
a completo
escrito en un lenguaje de alto nivel como (como C) antes de que se ejecute por p
rimera vez.

. Aplicaciones: herramientas para los usuarios

Las aplicaciones de software permiten a los usuarios controlar sus computadoras


sin pensar del mismo
modo que los programadores.

. Aplicaciones para el usuario

Las tiendas de computadoras y software, las de los productos elctricos y las de v


enta por correo venden
cientos de programas: software de auto detencin, de contabilidad, de grficos, gest
ores de informacin
personal, etc. El proceso de compra de cualquier software es similar al de cualq
uier CD de msica. Pero
existen algunas sutiles diferencias que veremos a continuacin.

. Documentacin

Todo paquete de software debe incluir documentacin impresa con las instrucciones
a seguir para su
instalacin en el disco duro de la computadora. Algunos tambin disponen de tutorial
es y manuales de
referencia que explican cmo usarlo.

. Actualizacin

La mayora de las empresas de software trabajan en la mejora de sus productos, eli


minando fallos y
aadiendo nuevas caractersticas. Como resultado de ello, es frecuente que aparezcan
nuevas versiones
de los programa ms populares cada uno o dos aos.

. Compatibilidad

Los paquetes de software contienen etiquetas con mensajes como Precisa Windows 9x
, Me o XP con
128 MB de RAM. Estas especificaciones no deben tomarse a la ligera; sin el hardwa
re y software
compatible, muchos programas son inservibles.

. Renuncias

Segn la letra pequea de las garantas incluidas en muchos paquetes de software, algu
nas aplicaciones
podran ser tcnicamente inservibles aun disponiendo de hardware y software compatib
le. EULA
(Contrato de licencia de usuario final, End User License Agreement): Este program
a se distribuye tal
como es, sin garanta de ningn tipo

. Licencia

Cuando se adquiere cualquier paquete de software, realmente no se est comprobando


ese software,
sino una licencia para usar el programa, generalmente en una sola mquina. Virtual
mente, todo
software tiene un copyright, lo que significa que no puede duplicarse legalmente
para su distribucin a
terceras personas. Algunos programas grabados en CD o DVD (lo ms recientes) estn fs
icamente
protegidas contra copia de modo que no pueden duplicarse de ninguna manera.

. Por qu usamos aplicaciones?

Podra sonar raro que alguien pagase una cantidad de dinero por un producto que no
tiene garanta y
que contiene docenas de restricciones legales relacionadas con su uso. Sin embar
go, estn construidas
alrededor de metforas visuales de herramientas del mundo real, por lo que expande
n de alguna forma,

las capacidades humanas.

. Qu hace un sistema operativo?

Toda computadora actual, ya sea una supercomputadora de tiempo compartido o un p


orttil, depende
de un SO (sistema operativo) que mantenga el hardware funcionando de forma efici
ente y facilite el
proceso de comunicacin con l. Algunas computadoras, incluyendo las de bolsillo, de
juegos y de
propsito especfico, tienen sus sistemas operativos almacenados permanentemente en
ROM (memoria
de slo lectura) de modo que estn operativas desde el momento en que se encienden.
De esta manera,
la computadora proporciona una capa de aislamiento entre usted y los bits y byte
s que componen el
mundo del software.

. Comunicacin con los perifricos

El sistema operativo incluye programas que se comunican de forma transparente co


n los perifricos
(monitores, impresoras, unidades de disco).

. Administracin de la memoria

Cuando varios trabajos se procesan de manera concurrente, el sistema operativo d


ebe controlar el modo
en el que se est usando la memoria de la computadora y asegurarse de que ningn tra
bajo invada el
espacio de otro.

. Programas y administracin de datos

Adems de actuar como guardia de trfico, guardia de seguridad y contable, el sistem


a operativo
tambin es un directorio que se encarga de localizar y acceder a los ficheros y pr

ogramas solicitados por


el usuario o por cualquier otro programa.

. Coordinacin de las comunicaciones de red

Hasta hace poco, las comunicaciones de red no eran administradas por los sistema
s operativos
empleados por cualquier usuario. No obstante, los ms modernos se encuentran disead
os para fungir
como puente entre las redes, desde la oficina a Internet.

. Programas de utilidad y controladores de dispositivo

Los programas de utilidad sirven como herramientas de mantenimiento del sistema


y reparan todo
aquello que el propio sistema operativo no es capaz de hacer por s mismo.

. La interfaz de usuario: la conexin hombre-mquina

Sistemas operativos
Los usuarios de las primeras computadoras tenan que gastar tiempo escribiendo en
lenguaje mquina.
En la actualidad, los usuarios emplean la mayora de su tiempo en el trabajo con a
plicaciones ya
programadas, como los procesadores de texto, que simulan y aumentan las posibili
dades de
herramientas reales.

. Plataformas de hardware y software

Entre los sistemas operativos ms conocidos se puede citar:

. Microsoft Windows XP. ste es el producto estrella de Microsoft y fue presentado


en 2001.
. Windows Server 2003. En secuencia, es el equivalente para servidores de Window
s XP y el
sucesor de la familia de productos Windows 2000.
. Microsoft Windows CE.NET. Esta versin reducida, diseada principalmente para disp
ositivos
conectados e incrustados y para computadoras de bolsillo y telfonos mviles.
. Palm OS. Este sistema operativo, desarrollado originalmente para la Palm Pilot
, se incluye en la
actualidad en muchos dispositivos de bolsillo fabricados por una gran variedad d
e fabricantes
como Palm, Handspring y Sony. Su interfaz de usuario basada en un lpiz es fcil de
usar.
. Mac OS X (10). Presentado en 2001, es la ltima versin del sistema operativo Mac.
. Mac OS 9. ste es el ltimo de una larga lista de sistemas operativos Macintosh qu
e inici con el
sistema Mac Original de 1984. OS 9 y sus predecesores solo funcionan en Mac.
. Linux, Sun Solaris y otras versiones UNIX. Siempre es posible encontrar una ve
rsin de UNIX o
Linux en PC, Mac, estaciones de trabajo, supercomputadoras, mainframes y otros d
ispositivos.
Linux es especialmente popular debido a que no tiene costo y est soportado gratui
tamente por
sus partidarios.

. Software del sistema y programacin. Son aquellos que permiten la administracin d


e la parte
fsica o los recursos de la computadora. Interactan entre el usuario y los componen
tes del
hardware del equipo informtico. Dentro de este tipo estn los sistemas operativos y
los

lenguajes de programacin.
. Software de aplicacin, son los programas dedicados a tareas especficas como edic
in de textos,
imgenes, clculos, etc. Tambin son conocidos como aplicaciones. El software de aplic
acin
permite a los usuarios llevar a cabo tareas especficas, en cualquier actividad su
sceptible de ser
automatizada o asistida, tambin podemos decir que el software de aplicacin son los
programas
que nos ayudan en la elaboracin de una determinada tarea, pues est diseado para fac
ilitar al
usuario en la realizacin de un determinado tipo de trabajo.

. Metodologas de programacin

Hace unos cuantos aos se produjeron cambios de gran alcance en la forma en que se
desarrollaba el
software para los equipos informticos. Las causas fueron las siguientes:

. El costo creciente de los desarrollos


. La insatisfaccin de los usuarios con la adecuacin y calidad
. La complejidad y tamao creciente de los programas
. La creciente dependencia de muchas organizaciones de sus sistemas informticos,
sin posibilidad
de abandonarlos
. El intento de lograr computadoras de quinta generacin con caractersticas softwar
e muy
diferentes

Estas y otras presiones dieron lugar a la reorganizacin de los mtodos empleados en


el desarrollo de los
programas para las computadoras. Lo que se necesitaba eran tcnicas para la elabor
acin de productos
de software muy largos y complejos, que satisficieran estndares muy estrictos de
calidad y
prestaciones, de acuerdo con una planificacin, control y presupuestos adecuados.

Los mtodos de trabajo que se desarrollaron para responder a estas necesidades con
stituyen lo que se
llama "ingeniera del software". La ingeniera del software es una tarea de equipo:
al comenzar un
proyecto de desarrollo, se constituyen una serie de equipos con una estructura p
aralela a la del
programa en s. Se establece un calendario para el proyecto y se asignan los costo
s a cada una de las
partes y etapas del proyecto. Cada equipo tiene un responsable, cuya tarea es la
de comprobar que la
programacin desarrollada por el equipo sea correcta, est estructurada con propieda
d y dispone de las
interfaces para conectar. Sin embargo no ha mostrado gran eficacia en el tiempo
que lleva aplicndose,
incluso hay quienes no son partidarios de la ingeniera del software, como por eje
mplo Ricardo Galli,
creador de la famosa pgina dedicada a agregar contenidos, Meneame.

En resumen, la ingeniera del software se ocupa del ciclo de vida completo de un p


roducto de software,

su diseo, desarrollo, uso y mantenimiento. El trabajo se hace buscando el mayor g

rado posible de
estandarizacin y los menores costos durante la totalidad del ciclo de vida de los
programas.

La ingeniera del software implica que un programa bien estructurado satisfaga las
siguientes
condiciones:

El programa ha de tener una estructura general en forma de mdulos, que a su vez e


starn
formados por procedimientos o segmentos.
Debe existir una interfaz claramente definida entre los diversos mdulos.
Cada mdulo debe de ser una combinacin sencilla de construcciones elementales de un
lenguaje de programacin.
Debe existir una fuerte correspondencia entre la estructura de los mdulos y la de
los datos
sobre los que operan.
Cada mdulo debe dejar las estructuras de datos sobre las que opera en un estado c
onsistente
con su definicin.
Un mdulo no debe tener efectos secundarios.

Por lo que respecta a las tcnicas de diseo de programas, el mtodo ms simple, y uno d
e los ms
populares, es el conocido como "refinamiento progresivo". Se fundamenta en el us
o de algoritmos que
se escriben en un lenguaje intermedio; entre el castellano y un lenguaje de prog
ramacin como Pascal.
Este lenguaje se denomina pseudocdigo. El proceso se puede describir en trminos de
un lenguaje de
esta naturaleza:

. Establecer todos los pasos del programa en un algoritmo breve de alto nivel.
. Expandir cada sentencia del algoritmo en detalle, especificando los pasos nece
sarios.
. Repetir hasta que las tareas hayan sido especificadas con el detalle suficient
e como para que
pueda generarse el cdigo del programa.

Existen otras metodologas ms depuradas, como la conocida como "Descomposicin Funcio


nal". A
diferencia de la anterior, en cada etapa se especifican las propiedades esencial
es de las estructuras de
datos, y cada algoritmo se expresa como una funcin matemtica que transforma esta e
structura de
datos.

Una vez desarrollado un programa, se ha de comprobar su buen funcionamiento. Act


ualmente, en la
mayora de los casos, se prueban con cualquier tipo de datos que hipotticamente pue
dan presentarse
en la realidad. Sin embargo, este proceso nunca establece si un programa es o no
correcto, sin importar
cuntos conjuntos de datos se usen. Si un programa es de importancia crtica, como o
curre con muchas

aplicaciones en los mbitos de la salud, comerciales, industriales o militares, es


necesario tomar todas las
precauciones posibles para asegurar que estn libres de errores.

Otra metodologa moderna es la de los "Mtodos formales". La especificacin formal es


un rea de
investigacin cuyo propsito es el desarrollo de tcnicas, lenguajes y herramientas (b
asadas en lgicas
clsicas y no clsicas, lgebras o clculos) para alcanzar una de las principales metas
de la ingeniera de
software: permitir la construccin de sistemas que operen de forma confiable a pes
ar de su complejidad.
Aun cuando la aplicacin de mtodos formales no garantiza la el correcto funcionamie
nto a priori de un
sistema, facilita considerablemente el anlisis de las propiedades del sistema, mo
strando posibles
inconsistencias o ambigedades que de otra forma pasaran desapercibidas.

1.4. Sistema operativo y administracin de archivos

. Sistema operativo

Un sistema operativo es el controlador maestro de todas las actividades que tien


e lugar dentro de la
computadora. Los sistemas operativos se clasifican como software del sistema, no
como hardware de
aplicacin, porque su principal propsito es ayudar al sistema de la computadora a v
igilar su propia
operacin para que funcione de manera eficiente.

A diferencia del software de aplicacin, un sistema operativo no ayuda directament


e a la gente a realizar
tareas especficas en una aplicacin, como el procesamiento de texto. Sin embargo, l
as personas si

interactan con el sistema operativo para ciertas tareas operativas y de almacenam


iento, como iniciar
programas o localizar archivos de datos.

. Qu hace un sistema operativo?

El software de una computadora es similar a la cadena de mando de un ejrcito. Se


emite un comando al
software de aplicacin que indica al sistema operativo lo que debe hacer. El siste
ma operativo le da
indicaciones a los controladores del dispositivo y estos se comunican con el har
dware que realmente
hace el trabajo. El sistema operativo interacta con el software de aplicacin, los
controladores de
dispositivo y el hardware para administrar los recursos de una computadora.

. Cules son los sistemas operativos ms populares?

Entre los sistemas operativos ms populares para computadoras se incluyen Microsof


t Windows y Mac
OS. Microsoft Windows CE y Palm OS son utilizados en la mayor parte de las compu
tadoras, mientras
que Linux y Unix son sistemas operativos recurrentes para servidores.

Es probable que Microsoft Windows (usualmente denominado Windows) sea el sistema


operativo que
ms se emplea para computadoras personales. El sistema operativo de Windows despli
ega mens y
controles simulados en pantalla, diseados para ser manipulados con un ratn.

Con la llegada al mercado de equipos porttiles de tamao reducido, conocidos como n


etbooks,
tabletas, y telfonos mviles inteligentes (smartphones), han surgido otros sistemas o
perativos para
ambos tipos de equipos. Incluso hay un sistema operativo desarrollado por Google
, basado en Linux,
denominado Chrome (no confundir con el navegador de internet), que ha dado lugar a
un nuevo tipo
de computadoras: las conocidas como Chromebooks.

Google ha desarrollado una variante de Linux, comercializada bajo el nombre Andr


oid, con gran xito en
telfonos mviles y tabletas. Nokia e Intel fusionaron sus desarrollos basados en Li
nux en un nuevo
sistema operativo denominado MeeGo, que no lleg a comercializarse. Por lo que res
pecta a los
telfonos Nokia, hasta el ao 2013 utilizaron el sistema operativo libre Symbian; ac
tualmente sus
telfonos operan con Windows Phone y una versin personalizada de Android, que solo
se instala en
equipos de bajo precio para el mercado asitico.

Otros sistemas operativos para telfonos mviles son: Firefox OS, Apple iOS (exclusi
vo de los telfonos
iPhone de Apple), China Operating System (COS, desarrollado por la Academia Chin
a de Ciencias),

Blackberry OS (exclusivo de los telfonos Blackberry), Tizen (desarrollado por Sam


sung en base a MeeGo
y Linux) y Ubuntu Touch (basado en el sistema operativo Ubuntu).

. Principales funciones y uso

Los sistemas operativos, en su condicin de capa de software que posibilita y simp


lifica el manejo de la
computadora, desempean una serie de funciones bsicas esenciales para la gestin del
equipo, entre
las ms destacables, podemos resear las siguientes:

Proporcionar ms comodidad en el uso de una computadora.


Gestionar de manera eficiente los recursos del equipo, ejecutando servicios para
los procesos
(programas).
Brindar una interfaz al usuario, ejecutando instrucciones (comandos).
Permitir que los cambios al desarrollo del propio S.O. se puedan realizar sin in
terferir con los
servicios que ya se prestaban.

Un sistema operativo desempea funciones bsicas en la operacin de un sistema informti

co:
suministro de interfaz al usuario, administracin de recursos, administracin de arc
hivos, administracin
de tareas y servicio de soporte y utilidades.

. Principales funciones de los sistemas operativos

. Administracin del procesador: Administra la distribucin del procesador entre los


distintos
programas por medio de un algoritmo de programacin. El tipo de programador depend
e
completamente del sistema operativo, segn el objetivo deseado.

. Gestin de la memoria de acceso aleatorio: Se encarga de gestionar el espacio de


memoria
asignado para cada aplicacin y para cada usuario, si resulta pertinente. Cuando l
a memoria
fsica es insuficiente, el sistema operativo puede crear una zona de memoria en el
disco duro,
denominada "memoria virtual". La memoria virtual permite ejecutar aplicaciones q
ue requieren
una memoria superior a la memoria RAM disponible en el sistema.
. Gestin de entradas/salidas: Permite unificar y controlar el acceso de los progr
amas a los
recursos fsico a travs de los drivers (tambin conocidos como administradores perifri
cos o de
entrada/salida).
. Gestin de ejecucin de aplicaciones: Se encarga de que las aplicaciones se ejecut
en sin
problemas asignndoles los recursos que stas necesitan para funcionar.
. Administracin de autorizaciones: Se encarga de la seguridad en relacin con la ej
ecucin de
programas, garantizando que los recursos sean utilizados slo por programas y usua
rios que
posean las autorizaciones correspondientes.
. Gestin de archivos: Gestiona la lectura y escritura en el sistema de archivos,
y las autorizaciones
de acceso a archivos de aplicaciones y usuarios.
. Gestin de la informacin: Proporciona cierta cantidad de indicadores que pueden u
tilizarse para
diagnosticar el funcionamiento correcto del equipo.
. Interfaces del usuario: Permite comunicarse con l, de tal manera que se puedan
cargar
programas, acceder archivos y realizar otras tareas. Existen tres tipos bsicos de
interfaces: las
que se basan en comandos, las que utilizan mens y las interfaces grficas de usuari
o.
. Administracin de recursos: Sirven para administrar los recursos de hardware y d
e redes de un
sistema informtico, como el CPU, memoria, dispositivos de almacenamiento secundar
io y
perifricos de entrada y de salida.

. Administracin de archivos: Controlan la creacin, borrado y acceso de archivos de


datos y de
programas. Tambin implica mantener el registro de la ubicacin fsica de los archivos
en los
discos magnticos y en otros dispositivos de almacenamiento secundarios.
. Administracin de tareas: Controla que reas tiene acceso al CPU y por cunto tiempo
. Las
funciones de administracin de tareas pueden distribuir una parte especfica del tie
mpo del CPU
para una tarea en particular, e interrumpir al CPU en cualquier momento para sus
tituirla con una
tarea de mayor prioridad.
. Servicio de soporte: Dependern de la implementacin particular con la que estemos
trabajando. Entre las ms conocidas se pueden destacar las implementaciones de Uni
x,
desarrolladas por diferentes empresas de software, los sistemas operativos de Ap
ple Inc., como
Mac OS X para las computadoras de Apple Inc., los sistemas operativos de Microso
ft, y las
implementaciones de software libre, como Linux o BSD producidas por empresas, un
iversidades,
administraciones pblicas, organizaciones sin fines de lucro y/o comunidades de de
sarrollo.

No todas las utilidades de administracin o servicios forman parte del sistema ope
rativo. Adems de
ste, hay otros tipos importantes de software de administracin de sistemas, como lo
s sistemas de
administracin de base de datos o los programas de administracin de redes. El sopor
te de estos
productos deber proporcionarlo el fabricante correspondiente (que no tiene por qu
ser el mismo que
el del sistema operativo).

Existen varios tipos de sistemas operativos, definidos segn su capacidad para adm
inistrar los recursos
de cmputo y simultneamente la informacin. Los sistemas operativos ms utilizados en l
os PC son
DOS, OS/2, y Windows, pero hay otros que tambin se utilizan, como Linux.

. MS-DOS

El significado de estas letras es Microsoft Disk Operating System. Microsoft es


el nombre de la compaa
que diseo este sistema operativo, e IBM la compaa que lo hizo estndar al adoptarlo e
n sus
microcomputadoras. Los nombres de los archivos en MS-DOS, para los que se emplea
n tanto letras como
nmeros, se componen de dos partes: el nombre del archivo y la extensin, estando am
bos datos
separados por un punto. Las diferentes unidades de disco son identificadas por M
S-DOS a travs de una
letra seguida de dos puntos.

Los tipos de extensin ms habituales pueden cargarse directamente a la memoria sin


la ayuda del
sistema operativo. Los de extensin .EXE precisan que el cargador del DOS los colo
que en memoria, lo
que significa que el sistema operativo debe estar en memoria. Los del tipo .BAT
son los compuestos de
comandos que se ejecutan secuencial mente.

El sistema operativo tiene varios componentes que son:

. Rutinas de control, que funcionan con el programa IBM.DOS, y se encargan de la


s operaciones
de entrada / salida.
. Procesador de comandos, tambin llamado COMMAND.COM, que procesa los dos tipos d
e
comandos de que dispone el DOS: los residentes en memoria, o internos, y los no
residentes, o
externos, que residen en el disco del sistema operativo.
. Rutinas de servicios accesibles desde el programa control.

Tambin existe la posibilidad de subdividir el disco en subdirectorios que permite


n un empleo ms gil
de toda la informacin. MS-DOS est lejos de ser el sistema operativo ideal, pues se
trata de un sistema
monotarea. No obstante, aunque esto se resolviera, seguira presentando problemas
de diseo que
provocan que el comportamiento de la mquina sea poco fiable.

. OS/2

Desarrollado inicialmente por Microsoft Corporation e International Business Mac


hines (IBM) despus

de que Intel introdujera al mercado su procesador 80286. La asociacin no dur mucho


, pues IBM vea a
Windows como una amenaza para el OS/2.

IBM contino desarrollando este sistema operativo, y aunque al principio fue muy p
arecido a MS-DOS,
pues tambin tena una lnea de comando, la diferencia radica en el intrprete de comand
os, el cual es
un programa separado del kernel del sistema operativo y aparece nicamente cuando
se hace clic en uno
de los iconos "OS/2 prompt" dentro del Workplace Shell.

Otra diferencia es se trata de un sistema operativo multitarea. En el OS/2, much


os de los comandos son
idnticos a los de su contraparte, pero tiene ms comandos debido a que es ms grande,
completo y
moderno. El ambiente grfico es el Workplace Shell (WS), y es el equivalente a un
administrador del rea
de trabajo.

. Macintosh OS

El sistema operativo constituye la interfaz entre las aplicaciones y el hardware


de Macintosh. El
administrador de memoria obtiene y libera memoria en forma automtica para las apl
icaciones y el
sistema operativo. Esta memoria se encuentra normalmente en un rea llamada cmulo.
El cdigo de
procedimientos de una aplicacin tambin ocupa espacio en el cmulo. Principales compo
nentes del
sistema operativo:

. El cargador de segmentos carga los programas por ejecutar. Una aplicacin se pue
de cargar
completa, o bien, puede dividirse en segmentos individuales que se pueden cargar
de manera
dinmica conforme se necesiten.
. El administrador de eventos del sistema operativo informa de la ocurrencia de
diversos eventos
de bajo nivel, como la presin de un botn del mouse o el tecleo.
. El administrador de archivos se encarga de la entrada/salida de archivos; el a

dministrador de
dispositivos se encarga de la entrada/salida de dispositivos.
. Los manejadores de dispositivos son programas con los cuales los diversos tipo
s de dispositivos
pueden presentar interfaces uniformes de entrada/salida a las aplicaciones.
. Los programas de utilidad general del sistema operativo ofrecen diversas funci
ones tiles, como
la obtencin de la fecha y la hora, la comparacin de cadenas de caracteres y muchas
ms.

. UNIX

Es un sistema operativo multiusuario que incorpora multitarea. Fue desarrollado


originalmente por Ken

Thompson y Dennis Ritchie en los laboratorios de AT&T Bell en 1969 para su uso e
n mini computadoras.
El sistema operativo UNIX tiene diversas variantes y se considera potente, ms tra
nsportable e
independiente de equipos concretos que otros sistemas operativos porque est escri
to en lenguaje C.
UNIX y sus clones permiten mltiples tareas y mltiples usuarios. Su sistema de arch
ivos proporciona un
mtodo sencillo de organizar archivos y permite la proteccin de archivos. Este sist
ema ofrece una serie
de utilidades muy interesantes, como las siguientes:

.
.
.
.
.
.

Inclusin de compiladores e intrpretes de lenguaje


Existencia de programas de interface con el usuario, como ventanas, y mens
Muchas facilidades a la hora de organizacin de ficheros
Inclusin de lenguajes de interrogacin
Facilidades grficas
Programas de edicin de textos

. SCO

SCO es el proveedor mundial lder en sistemas operativos para servidores Unix, y u


no de los principales
proveedores de software de integracin de clientes que integra PCs Windows y otros
clientes con
servidores UNIX de los principales fabricantes. Los servidores de aplicaciones c
rticas de negocios de SCO
ejecutan las operaciones crticas diarias de una gran gama de organizaciones comer
ciales, financieras, de

telecomunicaciones, y gobierno, as como tambin departamentos corporativos, y pequea


s y medianas
empresas de todo tipo.

. Caractersticas

. Brinda acceso a impresoras y archivos compartidos desde PCs corriendo Windows


95,
Windows NT, Windows 3.1, Windows para trabajo en Grupos, OS/2, y MS-DOS.
. SCO TermLite, el emulador de terminal, incluye soporte para SCO ANSI y VT320 s
obre
TCP/IP o NetBEUI.
. Las herramientas del servidor NT permiten la administracin de los recursos comp
artidos
en un servidor utilizando sistema UNIX desde una PC corriendo Windows.
. Configuracin automtica de capas de conectividad, incluyendo NetBIOS sobre TCP/IP
, y
NetBEUI.
. Totalmente adherido al estndar emergente denominado CIFS.

. Solaris

. Caractersticas

Portabilidad: El software est conformado por una ABI, aplicacin de interfaces bina
ria
(Application Binary Interface), que se ejecuta con un Shrink-wrapped (Contraccin
envuelta). El software en todos los sistemas vendidos tiene la misma arquitectur
a del
microprocesador.
Escalabilidad: Las aplicaciones que se usan con ms frecuencia en el sobretiempo y
que
requieren sistemas ms poderosos para soportarlos. Para operar en un ambiente
creciente, el software debe ser capaz de ejecutarse en un rango amplio y debe se
r capaz
de tomar ventajas del poder adicional que se est procesando.
Interoperabilidad: La estandarizacin y una clara interface son criterios necesari
os para
un ambiente heterogneo, que permita a los usuarios desarrollar estrategias para
comunicarse por medio de su red. El sistema operativo de Solaris puede interoper
ar con
sistemas muy populares hoy en el mercado, y aplicaciones que se ejecutan en UNIX

se
pueden comunicar fcilmente.
Compatibilidad: La tecnologa de la computacin contina avanzando rpidamente, pero
es necesario permanecer en el mbito competitivo para minimizar sus costos y
maximizar sus ingresos.

. Microsoft Windows NT

Microsoft no solo se ha dedicado a escribir software para PCs de escritorio sino


tambin para estaciones
de trabajo poderosas, servidores de red y bases de datos. El sistema operativo W
indows NT de
Microsoft, lanzado al mercado el 24 de Mayo de 1993, es un SO para redes que bri
nda poder, velocidad y
nuevas caractersticas, adems de las caractersticas tradicionales. Es un SO de 32 bi
ts, y que puede
trabajar en procesadores 386, 486 y Pentium. Adems de ser multitarea, multilectur
a y multiprocesador,
ofrece una interfaz grfica. Trae todo el software necesario para trabajar en rede
s, permitiendo ser un
cliente de la red o un servidor.

. Clasificacin de los Sistemas Operativos de acuerdo a su forma de procesamiento:

. Sistemas operativos por lotes

Requieren que la informacin est reunida en bloque o "lote" (el programa, los datos
, y las
instrucciones). Los trabajos son procesados en el orden de admisin, segn el modelo
de "primero en

llegar, primero en ser atendido". En estos sistemas la memoria se divide en dos


zonas. Una de ellas es
ocupada por el sistema operativo, y la otra se usa para cargar programas transit
orios para su ejecucin.

. Sistemas operativos multiprogramacin

Son capaces de soportar dos o ms procesos concurrentes mltiples, permitiendo que r


esidan al mismo
tiempo en la memoria primaria las instrucciones y los datos procedentes de dos o
ms procesos. Estos
sistemas implican la operacin de multiproceso para el manejo de la informacin. Se
caracterizan por un
gran nmero de programas activos simultneamente que compiten por los recursos del s
istema.

. Sistemas operativos multiusuario

Los sistemas operativos multiusuario permiten acceder simultneamente a un sistema


de computadoras
a travs de dos o ms terminales. Este tipo de sistema operativo es fundamental en e
l manejo de redes
de computadoras actualmente.

. Sistemas operativos de tiempo compartido

Tratan de proporcionar un reparto equitativo de los recursos comunes para dar la


impresin a los
usuarios de que poseen una computadora independiente. En estos sistemas, el admi
nistrador de
memoria proporciona aislamiento y proteccin de los programas. El control de E/S s
e encarga de
proporcionar o retirar la asignacin a los dispositivos de forma que se preserve l
a integridad del sistema
y se proporcione servicio a todos los usuarios.

. Sistemas operativos de tiempo real

Tienen como objetivo proporcionar tiempos ms rpidos de respuesta, procesar la info


rmacin sin
tiempos muertos. En estos sistemas el administrador de memoria es relativamente
menos solicitado
debido a que muchos procesos residen permanentemente en memoria. El administrado
r de archivos se
encuentra normalmente en grandes sistemas de tiempo real y su objetivo principal
es manejar la
velocidad de acceso, ms que la utilizacin eficaz del almacenamiento secundario.

. Categora de los sistemas operativos

. Sistema operativo multitareas

Es el modo de funcionamiento disponible en algunos sistemas operativos mediante


el cual una
computadora procesa varias tareas al mismo tiempo. Existen varios tipos de multi
tareas. En los sistemas
multitarea de tiempo compartido, como OS/2, cada tarea recibe la atencin del micr
oprocesador
durante una fraccin de segundo. Para mantener el sistema en orden, cada tarea rec
ibe un nivel de
prioridad o se procesa en orden secuencial. Dado que el sentido temporal del usu
ario es mucho ms
lento que la velocidad de procesamiento de la computadora, las operaciones de mu
ltitarea en tiempo
compartido parecen ser simultneas.

. Sistema operativo monotareas

Los sistemas operativos monotareas son ms primitivos y solo pueden manejar un pro
ceso en cada
momento o solo puede ejecutar las tareas de una en una. Por ejemplo, cuando la c
omputadora est
imprimiendo un documento, no puede iniciar otro proceso ni responder a nuevas in
strucciones hasta
que se termine la impresin.

. Sistema operativo monousuario

Los sistemas monousuarios son aquellos solo pueden atender a un usuario a la vez
debido a las
limitaciones creadas por el hardware, los programas o el tipo de aplicacin que se
est ejecutando. Este
tipo de sistemas son muy simples pues todos los dispositivos de entrada, salida
y control dependen de la
tarea que se est utilizando. Estn orientados principalmente a los microcomputadore
s.

. Sistema operativo multiusuario

Es todo lo contrario a monousuario; en esta categora se encuentran todos los sist


emas que cumplen
simultneamente las necesidades de dos o ms usuarios, compartiendo los mismos recur
sos.

. Lenguajes de programacin

Un lenguaje de programacin es un lenguaje diseado para expresar procesos que puede


n ser llevados a
cabo por mquinas, tales como las computadoras.

Diagrama algoritmos
Los lenguajes de programacin constan de:

A. Un conjunto finito de smbolos, a partir del cual se define el lxico o vocabular


io del lenguaje.
B. Un conjunto finito de reglas, la gramtica del lenguaje, para la construccin de
las sentencias
correctas del lenguaje. (Sintaxis).
C. Semntica, que asocia un significado (la accin que debe llevarse a cabo) a cada
posible
construccin del lenguaje.

Al proceso por el cual se escribe, prueba, depura, compila (de ser necesario) y
se mantiene el cdigo
fuente de un programa informtico se le llama programacin. Por algoritmo se entiend
e el conjunto de
operaciones y procedimientos que deben seguirse para resolver un problema en un
nmero finito de
pasos . La palabra "algoritmo" deriva del nombre del matemtico rabe Mohamed Ibn Mous
sa Al Kow
Rizmi, quien escribi, entre los aos 800 y 825, su obra Quitab Al Jabr Al Mugabala,
donde se recoga el
sistema de numeracin hind y el concepto del cero. Fue Fibonacci quien tradujo su o
bra al latn y la
inici con las palabras Algoritmi dicit . El siguiente esquema indica el algoritmo pa
ra indicar que un
nmero es mayor que otro.

La diferencia entre el lenguaje algortmico y el informtico es que el algortmico es


el medio por el cual
se realiza un anlisis previo del problema a resolver y se encuentra un mtodo que p
ermita resolverlo. El
conjunto de operaciones a realizar, as como el orden en el que deben efectuarse,
se denomina
algoritmo. El lenguaje informtico es aquel por medio del cual dicho algoritmo se
codifica a un sistema
comprensible por la computadora.

Diagrama programacin

Una clasificacin habitual de los lenguajes es considerar dos grupos segn la forma
de ejecucin en una
computadora: intrpretes y compiladores. Esto se describe a continuacin.

. Intrpretes

Un intrprete hace que un programa fuente escrito en un lenguaje vaya, sentencia a


sentencia,
traducindose a cdigo objeto y sea ejecutado directamente por la computadora. El in
trprete capta una
sentencia fuente y la traduce, expandindola en una o varias instrucciones mquina,
que ejecuta
inmediatamente, no crendose, por tanto, un fichero o programa objeto almacenable
en memoria
masiva para posteriores ejecuciones.

En la prctica, el usuario crea un fichero con el programa fuente. Esto suele real
izarse con un editor
especfico del propio intrprete del lenguaje. Segn se van almacenando las instruccio
nes simblicas,
estas se analizan y se producen los mensajes de error correspondientes: as el usu
ario puede proceder
inmediatamente a su correccin. Una vez creado el fichero fuente el usuario puede
dar la orden de
ejecucin ( RUN ) y el intrprete lo ejecuta lnea a lnea. Siempre la traduccin antecede
inmediatamente a la ejecucin, de forma que:

Intrpretes

Las optimizaciones slo se realizan dentro del contexto de cada sentencia, no cont
emplndose el
programa o sus estructuras en conjunto. Si por ejemplo, en pseudocdigo, la instru
ccin que debe
traducir es: A 2.0 * B + C, al traducirse, antes de ejecutarse, podramos obtener:

aux1 conv_a_real(2)
aux2 B * aux1
aux3 C + aux2
A aux3

Pero se podran realizar los mismos clculos usando slo dos instrucciones:

aux1 B * 2.0
A aux1 + C

Si una sentencia forma parte de un bucle, se traduce tantas veces como tenga que
ejecutarse el bucle, y
no una sola vez como ocurrira en un compilador.

. Ventajas de los intrpretes

Su principal ventaja es que permiten una depuracin fcil. Muestran una mayor
interactividad con el cdigo en tiempo de desarrollo.
En algunos lenguajes (Smalltalk, Prolog, LISP) est permitido, y es frecuente, aadi
r
cdigo segn se ejecuta otro cdigo. Esta caracterstica solamente es posible
implementarla en un intrprete.
Puede ser interrumpido con facilidad.
Puede ser rpidamente modificado y ejecutado nuevamente.
Un Intrprete necesita menos memoria que un compilador.
Facilita la bsqueda de errores.
En algunos lenguajes est permitido aadir cdigo segn se ejecuta otro cdigo.

Compiladores
Menor consumo de memoria.

. Desventajas de los intrpretes

Lentitud de ejecucin: al ejecutar a la


alto
grado de optimizacin. Cada instruccin
veces como sea ejecutada.
Durante la ejecucin el intrprete debe
objeto.
Tamao del programa que exige aadir el

vez que se traduce no se puede aplicar un


debe ser traducida a cdigo mquina tantas
residir en memoria ya que no genera cdigo
intrprete al programa propiamente dicho.

Por estas razones, los lenguajes intrpretes resultan ms pedaggicos para aprender a
programar, ya
que el alumno puede detectar y corregir ms fcilmente sus errores. Existen lenguaje
s cuyos traductores
se idearon como intrpretes (BASIC, LISP,...) y otros como compiladores (FORTRAN,
C, ADA...). No
obstante, en la actualidad, para un lenguaje dado pueden existir tanto compilado
res como intrpretes.

. Compilador

Por el contrario, se dice que un lenguaje est compilado cuando el programa fuente
se traduce de dicho
lenguaje al cdigo mquina correspondiente y el resultado se almacena de manera perm
anente en un
archivo. La compilacin es un proceso complejo que suele requerir una mayor cantid
ad de tiempo que la
propia ejecucin del programa. En cualquiera de las fases de anlisis el compilador
puede dar mensajes
sobre los errores que detecta en el programa fuente, cancelando en ocasiones la
compilacin para que el
usuario realice en el fichero las correcciones oportunas. Existen compiladores q
ue permiten al usuario
omitir o reducir las fases de optimizacin, disminuyndose as el tiempo global de la
compilacin.

Un ejemplo tpico de lenguaje de este tipo el C++, ampliamente usado en el desarr


ollo de programas. El
siguiente esquema muestra cmo trabaja un compilador:

La traduccin por un compilador (la compilacin) consta de dos etapas fundamentales,


que a veces no
estn claramente diferenciadas a lo largo del proceso: la etapa de anlisis del prog
rama fuente y la etapa
de sntesis del programa objeto; es decir, qu pretende realizar el programa fuente,
y cmo realizarlo en
el programa objeto. A su vez, cada una de estas etapas conlleva la realizacin de
varias fases, en cada
una de las cuales se recorre o analiza completamente el programa fuente.

Las fases del proceso de compilacin son las siguientes:

a) Anlisis lexicogrfico.- Consiste en descomponer el programa fuente en sus elemen


tos. El
analizador lxico (tambin denominado escner) asla los smbolos, identifica su tipo y al
macena
en las tablas de smbolos la informacin del smbolo que pueda ser necesaria durante e
l proceso
de traduccin. La representacin obtenida en esta fase contiene la misma informacin q
ue el
programa fuente, pero de forma ms compacta.
b) Anlisis sintctico.- La sintaxis de los lenguajes de programacin se especifica me
diante un
conjunto de reglas de lenguaje. Esta fase deber comprobar si un programa es sintct
icamente
correcto, es decir, si sus estructuras (expresiones, sentencias o asignaciones)
estn construidas
de acuerdo con las reglas del lenguaje.
c) Anlisis semntico.- La semntica de un lenguaje de programacin define el significad
o dado a
las distintas construcciones sintcticas. En los lenguajes de programacin, el signi
ficado est
ligado a la estructura sintctica de las sentencias. En el proceso de traduccin, el
significado de
las sentencias se obtiene de la identificacin sintctica de las construcciones sintc
ticas y de la

informacin almacenada en la tabla de smbolos.


d) Generacin de cdigo intermedio.- Si no se han producido errores en algunas de la
s etapas
anteriores, este mdulo realiza la traduccin a un cdigo interno propio del compilado
r,
denominado cdigo intermedio , con el fin de permitir el transporte del lenguaje a ot
ras
computadoras.
e) Optimizaciones.- En la fase de optimizacin se mejora el cdigo intermedio genera
do
anteriormente, analizando el programa de forma global. Un ejemplo de optimizacin
sera
encontrar en el cdigo la inicializacin de una constante dentro de un bucle, con lo
que esta
inicializacin se producira tantas veces como se repitiese el bucle. El optimizador
sacara esta
inicializacin de la constante fuera del bucle para que slo se realizase una vez.
f) Generacin de cdigo objeto.- En esta etapa se genera el cdigo objeto final. En al
gunos casos,
este cdigo es directamente ejecutable, y en otros necesita algunos pasos previos
a la ejecucin
(ensamblado, encuadernacin y carga). Para un determinado lenguaje de alto nivel,
el proceso
de anlisis y construccin de cdigo intermedio se generaliza y es durante la generacin
del
cdigo objeto que se particulariza para cada tipo de microprocesador.

. Tipos de compiladores

Una sola pasada: examina el cdigo fuente una vez, generando el cdigo o programa
objeto.
Pasadas mltiples: requieren pasos intermedios para producir un cdigo en otro
lenguaje, y una pasada final para producir y optimizar el cdigo producido durante
los
pasos anteriores.
Optimacin: lee un cdigo fuente, lo analiza y descubre errores potenciales sin ejec
utar
el programa.
Compiladores incrementales: generan un cdigo objeto instruccin por instruccin (en
vez de hacerlo para todo el programa) cuando el usuario teclea cada orden indivi
dual. El
otro tipo de compiladores requiere que todos los enunciados o instrucciones se
compilen conjuntamente.
Ensamblador: el lenguaje fuente es el lenguaje ensamblador y posee una estructur
a
sencilla.
Compilador cruzado: se genera cdigo en lenguaje objeto para una mquina diferente d
e
la que se est utilizando para compilar. Es perfectamente normal construir un
compilador de Pascal que genere cdigo para MS-DOS y que el compilador funcione en
Linux y se haya escrito en C++.

Compilador con montador: compila distintos mdulos de forma independiente y es


capaz de enlazarlos posteriormente.
Autocompilador: compilador que est escrito en el mismo lenguaje que va a compilar
.
Evidentemente, no se puede ejecutar la primera vez. Sirve para hacer ampliacione
s al

lenguaje, mejorar el cdigo generado, etc.


Metacompilador: es sinnimo de compilador de compiladores y se refiere a un progra
ma
que recibe como entrada las especificaciones del lenguaje para el que se desea o
btener
un compilador y genera como salida el compilador para ese lenguaje. El desarroll
o de los
metacompiladores se encuentra con la dificultad de unir la generacin de cdigo con
la
parte de anlisis.
Descompilador: es un programa que acepta como entrada cdigo mquina y lo traduce a
un lenguaje de alto nivel, realizando el proceso inverso a la compilacin.

Otra modalidad de clasificacin de los lenguajes de programacin es segn su nivel de


abstraccin; esto
produce dos grandes grupos, lenguajes de alto nivel y lenguajes de bajo nivel. E
l grupo de bajo nivel,
como su nombre indica, incluye los relacionados ntimamente con la arquitectura de
la mquina, por lo
que generalmente son especficos de un microprocesador (CPU) y no son vlidos para o
tra diferente.
Dentro de estos grupos est el lenguaje mquina, que se utiliza al programar en el mb
ito de la CPU,
usando ceros y unos, lenguaje muy difcil y propenso a errores. El otro ms conocido
dentro de esta
categora es el Ensamblador, que utiliza nemnicos, por ejemplo ADD (sumar), SUB (re
star), MUL
(multiplicar), CALL (ejecutar subrutina); esto evita las secuencias de ceros y u
nos. Aun as, es bastante
complicado y no es recomendable para usuarios sin amplios conocimientos.

Un ejemplo de un programa en lenguaje ensamblador para CPU Intel, que muestra en


pantalla el texto
"Universidad de Murcia", es el siguiente:

.model tiny .data message db 'Universidad de Murcia'


.code org 100h
start: mov ah,9 mov dx,offset message int 21h
ret end start

Mientras que en un lenguaje de alto nivel, como Pascal, se escribira de forma muy
sencilla:

program UniMurcia;
begin writeln('Universidad de Murcia'); end.

Entonces, un lenguaje de bajo nivel est orientado hacia una determinada mquina o c
lases de
computadoras, es decir es especfico de un tipo concreto de CPU. Por su parte, un
lenguaje de alto nivel
es independiente del microprocesador de la computadora que lo soporta, por lo qu
e un programa
escrito en lenguaje C++, por ejemplo, se puede compilar sin modificar para cualq
uier mquina y en
principio funcionar sin ningn problema. Esto implica dos ventajas principales: una
, la persona que

desarrolla los programas no requiere tener conocimientos especficos acerca de la


computadora en que
se ejecutar el programa, y segunda, los programas son portables, es decir, el mis
mo programa, en
teora, ha de funcionar en distintos tipos de computadoras.

El desarrollo de los lenguajes de alto nivel comenz a mediados de los aos cincuent
a con la creacin de
lenguajes como el COBOL, Fortran y ALGOL60. Posteriormente surgieron otros, aunq
ue sobreviven muy
pocos. Algunos lenguajes de alto nivel, son:

JAVA
BASIC
FORTRAN
MODULA 2
Pascal
ADA
C
C ++
LOGO
LISP
PROLOG
Ruby
Dart

Una tercera forma de clasificar los lenguajes de programacin es segn el paradigma

de programacin:
declarativo, imperativo, orientado a objetos y funcional. Los imperativos establ
ecen cmo debe
ejecutarse una tarea, fraccionndola en procedimientos que especifican cada una de
las tareas. Por
ejemplo C, Fortran y Pascal.

Por el contrario los declarativos establecen estructuras de datos y las relacion


es entre ellos que son
significativas para ejecutar una tarea determinada, al tiempo que indican cual e
s el objetivo de dicha
tarea. Un lenguaje tpico de este grupo es Prolog.

El orientado a objetos usa objetos y sus interacciones para disear aplicaciones y


programas de
computadora. Est basado en varias tcnicas, incluyendo herencia, modularidad, polim
orfismo y
encapsulacin; Smalltalk es el lenguaje ms representativo de este tipo.

Funcional es un paradigma de programacin declarativo basado en la utilizacin de fu


nciones
matemticas; el lenguaje ms representativo es LISP (procesado de listas). Aunque pu
ede seleccionarse

la forma pura de estos paradigmas a la hora de programar, en la prctica es habitu


al que se mezclen,
dando lugar a la programacin multiparadigma.

. Administracin de archivos

Un archivo es una coleccin de registros que se encuentran relacionados entre s, di


seados para
manejar grandes cantidades de datos.

Todos los programas computacionales usan estructuras de datos de alguna clase, y


muchos otros usan
archivos. Aquellos que disean y desarrollan software para aplicaciones comerciale
s y tecnolgicas, as
como quienes disean y desarrollan sistemas computacionales, es decir, sistemas op
erativos,
compiladores, sistemas de administracin de bases de datos y sistemas de comunicac
in entre
procesadores, requieren de conocimientos de archivos y estructuras de datos. Las
estructuras de datos y
la organizacin de archivos son los elementos principales que determinan el rendim

iento de los
programas.

Cualquier aplicacin encargada de la manipulacin de ficheros en dispositivos de alm


acenamiento se
denomina administrador de archivos . Estos programas hacen ms fcil el manejo de los a
rchivos en
discos duros, discos flexibles, discos pticos, etc.

Las funciones bsicas que permite un administrador de archivos son: copiar, pegar,
mover, crear
directorios, borrar, renombrar y buscar. En Windows, la aplicacin administradora
de archivos es
llamada explorador de Windows .

. Jerarqua de datos

Una base de datos jerrquica almacena la informacin en una estructura jerrquica que
enlaza los
registros en forma de estructura de rbol (similar a un rbol visto al revs) en donde
un nodo-padre de
informacin puede tener varios nodos-hijo. Esta relacin jerrquica no es estrictament
e obligatoria, de
manera que pueden establecerse relaciones entre nodos-hermanos. En este caso, la
estructura en forma
de rbol se convierte en una estructura en forma de grafo dirigido. Esta variante
se denomina base de
datos de red .

. Tipos de archivos

Existen bsicamente dos tipos de archivos: los archivos ASCII y los archivos binar
ios. El vocablo ASCII es
un acrnimo para American Standard Code for Information Interchange. Es un estndar
que asigna un
valor numrico a cada carcter, con lo que se pueden representar los documentos llam
ados de texto
plano , es decir, los que son legibles por seres humanos. Los archivos binarios so
n todos los dems.
Como ejemplos tenemos:

. Archivos binarios

De imagen: .jpg, .gif, .tiff, .bmp (Portable bitmap), .wmf (Windows Meta File),
.png (Portable
Network Graphics), .pcx (Paintbrush), entre muchos otros
De video: .mpg, .mov, .avi, .gif
Comprimidos o empaquetados: .zip, .Z, .gz, .tar, .lhz
Ejecutables o compilados: .exe, .com, .cgi, .o, .a
Procesadores de palabras: .doc

. Archivos ASCII

Archivos fuente: .f, .c, .p


Formatos de texto: .tex, .txt, .html
Formatos de intercambio: .rtf, .ps, .uu

Dentro de los archivos ASCII de uso comn por los programas de bioinformtica estn lo
s siguientes:

De secuencias: .seq
De secuencias mltiples: .aln, .msf (Multiple Sequence Format, secuencias alineada
s), .rsf (Rich
Sequence Format, estos archivos pueden incluir una o ms secuencias relacionadas o
no).

Todos estos archivos se caracterizan por tener ciertos formatos distintivos que
hacen posible su
reconocimiento por parte de los programas de manipulacin y anlisis de secuencias c
omo el PHYLIP, el
GCG, entre muchos otros.

. Interfaz de usuario

Es el medio con que el usuario se comunica con una mquina, un equipo o una comput
adora.
Comprende todos los puntos de contacto entre el usuario y el equipo, y suelen se
r fciles de entender y de accionar.

Las interfaces bsicas de usuario son aquellas que incluyen elementos como mens, ve
ntanas, teclado,
ratn, beeps y algunos otros sonidos que la computadora hace. En general, son todo
s los canales
mediante los que se permiten la comunicacin entre el ser humano y la computadora.
La mejor
interaccin humano-mquina se realiza a travs de una interfaz que brinde comodidad y
eficiencia.

. Tipos de interfaces de usuario

Dentro de las interfaces de usuario se puede distinguir los siguientes grupos:

A) Una interfaz de hardware: a nivel de los dispositivos utilizados para ingresa


r, procesar y entregar
los datos: teclado, ratn y pantalla.
B) Una interfaz de software: destinada a entregar informacin acerca de los proces
os y
herramientas de control, a travs de lo que el usuario observa habitualmente en la
pantalla.
C) Una interfaz de Software-Hardware: proporciona un puente entre la mquina y las
personas,
permitiendo a la maquina entender la instruccin y al hombre, entender el cdigo bin
ario
traducido a informacin legible.

. El Sistema de archivos visto por el usuario

Los sistemas de archivos estructuran la informacin guardada en una unidad de alma


cenamiento que
luego ser representada, ya sea textual o grficamente, utilizando un gestor de arch
ivos. La mayora de
los sistemas operativos poseen su propio sistema de archivos.

Lo habitual es utilizar dispositivos de almacenamiento de datos que permiten el


acceso a los datos como
una cadena de bloques de un mismo tamao, a veces llamados sectores, usualmente de
512 bytes de
longitud. El software del sistema de archivos es responsable de la organizacin de
estos sectores en
archivos y directorios, y mantiene un registro de qu sectores pertenecen a qu arch
ivos y cules no han
sido utilizados. En la prctica, un sistema de archivos tambin puede ser utilizado
para acceder a datos

generados dinmicamente, como los recibidos a travs de una conexin de red (sin la in
tervencin de un
dispositivo de almacenamiento). Los sistemas de archivos tradicionales proveen mt
odos para crear,
mover, renombrar y eliminar tanto archivos como directorios, pero carecen de mtod
os para crear, por
ejemplo, enlaces adicionales a un directorio o archivo (enlace duro en Unix) o r
enombrar enlaces padres
(".." en Unix)

. Diseo del sistema de archivos

El

sistema de archivos

es un componente importante de un SO y suele contener:

. Mtodos de acceso relacionados con la manera de acceder a los datos almacenados


en archivos.
. Administracin de archivos, referida a la provisin de mecanismos para que los arc
hivos sean
almacenados, referenciados, compartidos y asegurados.
. Administracin del almacenamiento auxiliar para la asignacin de espacio a los arc
hivos en los
dispositivos de almacenamiento secundario.
. Integridad del archivo, para garantizar la integridad de la informacin del arch
ivo.

El sistema de archivos est relacionado especialmente con la administracin del espa


cio de
almacenamiento secundario, fundamentalmente con el almacenamiento de disco. Una
forma de
organizacin de un sistema de archivos puede ser la siguiente:

. Se utiliza una raz para indicar en qu parte del disco comienza el directorio raz .
. El directorio raz apunta a los directorios de usuarios .
. Un directorio de usuario contiene una entrada para cada uno de los archivos del
usuario.

Cada entrada de archivo apunta al lugar del disco donde est almacenado el archivo
referenciado. Los
nombres de archivos solo necesitan ser nicos dentro de un directorio de usuario d
ado. El nombre del
sistema para un archivo dado debe ser nico para el sistema de archivos. En sistem
as de archivo
jerrquicos, el nombre del sistema para un archivo suele estar formado como el nomb

re de la
trayectoria

del directorio raz al archivo.

. Seguridad en archivos

Los sistemas de archivos generalmente contienen informacin muy valiosa para sus u
suarios, razn por
la que los sistemas de archivos deben protegerla.

. El ambiente de seguridad

Se entiende por seguridad a los problemas generales relativos a la garanta de que


los archivos no sean

ledos o modificados por personal no autorizado; esto incluye aspectos tcnicos, de


administracin,
legales y polticos. Se consideraran mecanismos de proteccin a los mecanismos especf
icos del sistema
operativo utilizados para resguardar la informacin de la computadora. Dos de las
facetas de seguridad
ms importantes son:

La prdida de datos
Los intrusos

Algunas de las causas ms comunes de la prdida de datos son:

I. Actos y hechos diversos, como incendios, inundaciones, terremotos, guerras, r


evoluciones,
roedores, etc.
II. Errores de hardware o de software, como fallas en la CPU, discos o cintas il
egibles, errores de
telecomunicacin, errores en los programas, etc.
III. Errores humanos, como entrada incorrecta de datos, mal montaje de cintas o
discos, ejecucin
incorrecta de programas, prdida de cintas o discos, etc.

La mayora de estas causas se pueden prevenir con la creacin de respaldos (backups)

adecuados, los
cuales debera almacenarse en un lugar distinto al de los datos originales. Respec
to del problema de los
intrusos, se los puede clasificar como:

a. Pasivos: solo desean leer archivos que no estn autorizados a leer


b. Activos: desean hacer cambios no autorizados a los datos

Para disear un sistema seguro contra intrusos hay que tener en cuenta el tipo de
intrusos contra los que
se desea tener proteccin. Hay que ser consciente de que la cantidad de esfuerzo q
ue se pone en la
seguridad y la proteccin depende claramente de quin se piensa sea el enemigo. Algu
nos tipos de
intrusos son los siguientes:

.
.
.
.

Curiosidad casual de usuarios no tcnicos


Conocidos (tcnicamente capacitados) husmeando
Intentos deliberados por hacer dinero
Espionaje comercial o militar

Otro aspecto del problema de la seguridad es la primaca:

. Proteccin de las personas respecto del mal uso de la informacin en contra de uno
mismo
. Implica aspectos legales y morales

Tambin debe sealarse la posibilidad del ataque del caballo de Troya:

. Modificar un programa normal para que haga cosas adversas adems de su funcin usu
al
. Mecanismos de proteccin de archivos

Muchos objetos del sistema necesitan proteccin, tales como la CPU, segmentos de m
emoria, unidades
de disco, terminales, impresoras, procesos, archivos, bases de datos, etc. Cada
objeto se referencia por
un nombre y tiene habilitadas un conjunto de operaciones sobre l.

Un dominio es un conjunto de parejas (objeto, derechos). Cada pareja determina:

. Un objeto
. Un subconjunto de las operaciones que se pueden llevar a cabo en l

Un derecho es el permiso para realizar alguna de las operaciones. Es posible que


un objeto se encuentre
en varios dominios con distintos derechos en cada dominio. Un proceso se ejecuta e
n alguno de los
dominios de proteccin:

Existe una coleccin de objetos a los que puede tener acceso


Cada objeto tiene cierto conjunto de derechos

Los procesos pueden alternar entre los dominios durante la ejecucin. Una llamada
al S.O. provoca una
alternancia de dominio. En algunos S.O., a los dominios se llaman anillos. Una f
orma en la que el S. O.
lleva un registro de los objetos que pertenecen a cada dominio es mediante una m
atriz:

. Los renglones son los dominios


. Las columnas son los objetos
. Cada elemento de la matriz contiene los derechos correspondientes al objeto en
ese dominio,
como leer, escribir o ejecutar

. Implementacin del sistema de archivos

El aspecto clave de la implantacin del almacenamiento de archivos es el registro


de los bloques
asociados a cada archivo. Algunos de los mtodos utilizados son los siguientes:

. Asignacin contigua o adyacente

Los archivos son asignados a reas contiguas de almacenamiento secundario. Las pri
ncipales ventajas
son:

Facilidad de implantacin, ya que solo se precisa el nmero del bloque de inicio par
a localizar un archivo
Rendimiento excelente respecto de la e/s

Los principales defectos son:

Se debe conocer el tamao mximo del archivo al crearlo


Produce una gran fragmentacin de los discos

. Asignacin no contigua

Son esquemas de almacenamiento ms dinmicos, destacndose los siguientes:

Asignacin encadenada orientada hacia el sector:

. El disco se considera compuesto de sectores individuales


. Los archivos constan de varios sectores que pueden estar dispersos por todo el
disco
. Los sectores que pertenecen a un archivo comn contienen apuntadores de uno a ot
ro
formando una lista encadenada
. Una lista de espacio libre contiene entradas para todos los sectores libres del
disco
. Las ampliaciones o reducciones en el tamao de los archivos se resuelven actuali
zando la lista
de espacio libre y no hay necesidad de condensacin

Las principales desventajas son:

. Debido a la posible dispersin en el disco, la recuperacin de registros lgicamente


contiguos puede significar largas bsquedas.
. El mantenimiento de la estructura de listas encadenadas significa una sobrecarga
en
tiempo de ejecucin.
. Los apuntadores de la estructura de lista consumen espacio en disco.

Asignacin por bloques

. Es ms eficiente y reduce la sobrecarga en ejecucin.


. Es una mezcla de los mtodos de asignacin contigua y no contigua.
. Se asignan bloques de sectores contiguos en vez de sectores individuales.
. El sistema trata de asignar nuevos bloques a un archivo eligiendo bloques libr
es lo ms prximos
posible a los bloques del archivo existentes.

Las formas ms comunes de implementar la asignacin por bloques son:

. Encadenamiento de bloques
. Encadenamiento de bloques de ndice
. Transformacin de archivos orientada hacia bloques

Encadenamiento de bloques o lista ligada

. Las entradas en el directorio de usuarios apuntan al primer bloque de cada arc


hivo.
. Cada uno de los bloques de longitud fija que forman un archivo contiene dos pa
rtes:
. Un bloque de datos.
. Un apuntador al bloque siguiente.
. Cada bloque contiene varios sectores.
. Frecuentemente el tamao de un bloque se corresponde con el de una pista complet
a del disco.

Localizar un registro determinado requiere:

. Buscar en la cadena de bloques hasta encontrar el bloque apropiado.

. Buscar en el bloque hasta encontrar el registro.


. El examen de la cadena desde el principio puede ser lento ya que debe realizar
se de
bloque en bloque, y pueden estar dispersos por todo el disco.
. La insercin y el retiro son inmediatos, dado que se deben modificar los apuntad
ores del
bloque precedente.

. Llamadas al sistema

Las llamadas al sistema proveen una interfaz entre los procesos y el sistema ope
rativo. Por lo general,
estas llamadas se encuentran disponibles como instrucciones en lenguaje ensambla
ble. En algunos
sistemas podemos realizar llamadas al sistema desde programas en lenguajes de al
to nivel, en cuyo caso
se asemejan a llamadas a funciones o procedimientos. Es el mecanismo usado por u
na aplicacin para
solicitar un servicio al sistema operativo.

Las llamadas al sistema comnmente usan una instruccin especial de la CPU que causa
que el
procesador transfiera el control a un cdigo privilegiado, previamente especificad
o por el mismo cdigo.
Esto permite al cdigo privilegiado especificar donde va a ser conectado, as como e
l estado del
procesador.

Cuando una llamada al sistema es invocada, la ejecucin del programa que invoca es
interrumpida y sus
datos son guardados, normalmente en su PCB, para poder continuar ejecutndose lueg
o. El procesador
entonces comienza a ejecutar las instrucciones de cdigo de alto nivel de privileg
io, para realizar la tarea
requerida. Cuando esta finaliza, se retorna al proceso original, y contina su eje
cucin. El retorno al
proceso demandante no obligatoriamente es inmediato, depende del tiempo de ejecu
cin de la llamada

al sistema y del algoritmo de planificacin de CPU.

. Funciones de la interfaz

Control de las funciones manipulables del equipo


Encendido y apagado
Herramientas de desarrollo de aplicaciones
Manipulacin de archivos y directorios
Comunicacin con otros sistemas
Informacin de estado
Configuracin de la propia interfaz y entorno
Intercambio de datos entre aplicaciones

Control de acceso

. Comandos de control

Secuencia de comandos de control

. Comprobar si alguien est utilizando activamente el producto y, si es as, impedir


la reinstalacin,
la actualizacin o la eliminacin.
. Asegurarse de que el sistema host local es compatible con el software (las sec
uencias de
comandos pueden realizar comprobaciones de compatibilidad ms a fondo que las apli
cadas por
los atributos name del producto).
. Eliminar archivos anticuados o versiones del producto instaladas con anteriori
dad.
. Crear enlaces con los archivos o copias adicionales de los mismos despus de ins
talarlos.

. Cules son las cinco actividades principales de un sistema operativo con respecto
a la
administracin de archivos?

Los sistemas operativos realizan la funcin crucial de ser el puente entre el hard
ware y el software de
una computadora. Estos proporcionan un ambiente en el que el software puede ser
escrito sin necesidad
de preocuparse por las particularidades del hardware subyacente, lo cual era nec
esario en los albores de
la computacin. Existen muchos sistemas operativos, ampliamente usados, que difier
en entre s en
muchos aspectos, sin embargo realizan varias funciones similares, incluyendo la
ejecucin de
instrucciones bsicas, compiladas o interpretadas, y la administracin de procesos,
memoria, entrada y
salida, almacenamiento, operaciones de red y operaciones de archivos y carpetas/
directorios.

Anda mungkin juga menyukai