FUNDAMENTOS
DE
INFORMÁTICA
CAPITULO I
Introducción a la
Informática
PROF. DANIEL SLAVUTSKY
PROF. EDGARDO BARCIA
PROF. JORGE ZÁRATE
AÑO 2014
www.utnfravirtual.org.ar
[email protected]
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
INDICE PÁGINAS
Ö INTRODUCCIÓN 4
Ö SISTEMA DE COMPUTACIÓN 5
Ö ANTECEDENTES HISTÓRICOS 7
Ö GENERACIONES DE COMPUTADORAS 12
Ö EVOLUCIÓN DE LOS SISTEMAS DE COMPUTACIÓN 16
HARDWARE
Ö UNIDADES DE INFORMACIÓN 20
Ö UNIDADES DE MEDIDA 20
Ö SISTEMAS DE NUMERACIÓN 21
Ö ELEMENTOS BÁSICOS DE UNA COMPUTADORA 22
Ö UNIDAD CENTRAL DE PROCESOS (UC+UAL) 22
Ö MEMORIA PRINCIPAL (RAM+ROM) 23
Ö MEMORIA INTERMEDIA (CACHE) 24
Ö DISPOSITIVOS DE E/S – CANALES 24
Ö DISPOSITIVOS PERIFÉRICOS 25
Ö BUSES DEL SISTEMA 26
Ö RANURAS DE EXPANSIÓN O SLOTS 27
Ö CHIPSET 28
Ö PUERTOS O CONECTORES 29
Ö PLACA PRINCIPAL 29
Ö REGISTROS DEL HARDWARE 30
SOFTWARE
Ö INTRODUCCIÓN 31
Ö CONCEPTOS FUNDAMENTALES SOBRE SOFTWARE
Ö DEFINICIÓN DE SOFTWARE 33
Ö DEFINICIÓN DE SOFTWARE LIBRE 33
Ö DEFINICIÓN DE SOFTWARE PROPIETARIO 34
Ö SOFTWARE LIBRE vs. SOFTWARE PROPIETARIO 35
Ö FILOSOFÍA CONTRADICTORIAS 36
Ö VENTAJAS Y DESVENTAJAS 36
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 2
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
INDICE PÁGINAS
Ö PRINCIPALES TIPOS DE SOFTWARE 37
Ö SOFTWARE DEL SISTEMA 37
Ö SOFTWARE DE BASE 38
Ö SISTEMAS OPERATIVOS 39
Ö UTILITARIOS 40
Ö UTILITARIOS DE SERVICIO 40
Ö UTILITARIOS QUE PREPARAN UN DISPOSITIVO DE
ALMACENAMIENTO NUEVO PARA SU USO. 41
Ö UTILITARIOS PARA EL MANTENIMIENTO DE UN
DISPOSITIVO DE ALMACENAMIENTO. 42
Ö PROGRAMAS DE INSTALACIÓN DE UN NUEVO
HARDWARE. 43
Ö UTILITARIOS DE APOYO A LOS SISTEMAS DE APLICACIÓN 43
Ö UTILITARIOS QUE ORGANIZAN LA INFORMACIÓN. 44
Ö UTILITARIOS QUE GENERAN INFORMACION. 45
Ö TIPOS DE REGISTROS. 45
Ö PROGRAMAS INTEGRADOS. 47
Ö SOFTWARE DE APLICACIÓN 49
Ö SUBTIPOS DE SOFTWARE 50
Ö SOFTWARE PARA LA PROTECCIÓN DE LA
INFORMACIÓN 51
Ö SOFTWARE DE CONTROL DE COMUNICACIONES 51
Ö SOFTWARE DE MULTIMEDIA 52
Ö SOFTWARE PARA EL DESARROLLO DE APLICACIONES 52
Ö TIPOS DE PROGRAMAS 53
Ö CUESTIONARIO GENERAL TEÓRICO 55
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 3
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
INTRODUCCIÓN A LA INFORMÁTICA
“Lo que sabemos es una gota de agua;
lo que ignoramos es el océano...”
Isaac Newton
INTRODUCCIÓN
Antes de comenzar a descifrar las características principales de un sistema de
computación debemos analizar dos conceptos fundamentales para el
aprendizaje, que es la informática y a que se denomina nueva tecnología.
De la Informática podemos decir que es una palabra que se creo en Francia
por el ingeniero Philippe Dreyfus en 1962, a partir de la siguiente combinación
de palabras: “INFORmación autoMÁTICA”.
Se la considera una disciplina científica dedicada a investigar el diseño y la
utilización de máquinas programables para el tratamiento de la información. Se
ocupa de la arquitectura de las computadoras, es decir, de como se han de
diseñar (ingeniería de sistemas) y de como se han de desarrollar las grandes
aplicaciones informáticas (ingeniería del software).
La informática va integrando cada vez más nuestro universo cotidiano, sin
embargo, aún suelen existir dudas respecto al significado que se debe asignar
a esta palabra, por lo que comenzaremos por adoptar una definición para la
misma.
Diremos que la informática es la técnica del tratamiento automático y racional
de la información.
Como vemos el concepto sobre informática plantea dos aspectos diferentes, el
que se relaciona con la investigación (ciencia) y el que se relaciona con el uso
(técnica).
A partir de esto podemos decir que la informática desde el punto de vista de la
ciencia aporta nuevas tecnologías que mejoren el procesamiento de la
información por parte de un sistema de computación y a partir de esto la
informática propone nuevas técnicas que permitan darle el uso adecuado a las
nuevas tecnologías.
En conclusión las nuevas tecnologías se investigan y se integran a las
características principales de un sistema de computación y a partir de esto se
utilizan distintas formas de trabajo para su uso.
Como ejemplos podemos mencionar a los distintos tipos de interfaces que se
generan a partir de los sistemas operativos que proponen distintos entornos de
trabajos en los sistemas de computación, que pueden variar desde el uso del
sistema desde la línea de comando (DOS, Linux, Novell, Unix, OS/400, etc. o
desde la interfaz gráfica de usuario (Windows, Macintosh, Linux, OS/2, etc.).
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 4
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SISTEMA DE COMPUTACIÓN1
Son una máquina de propósitos generales
programable, capaz de trabajar con gran
cantidad de información y alta velocidad. Su función
¿Que son?
esta asociada exclusivamente a las necesidades de
los distintos niveles de usuarios (finales, diseñadores
de aplicaciones o programadores de hardware).
Como Computadora porque se lo asocia al
procesamiento de la información y como Ordenador
¿Cómo se los denomina?
porque se lo asocia a la organización de la
información del usuario.
¿Cuáles son las partes que los componen?
Es la parte física y esta compuesto por el equipo y
El HARDWARE los dispositivos que conforman o están asociados a
él.
Es la parte lógica y es el conjunto de programas,
El SOFTWARE procedimientos ó datos, asociados con el
2
procesamiento de datos.
Las características físicas de un sistema de computación son similares a las
que propuso Charles Babbage (1833) cuando creo la máquina conocida como
analítica, esta disponía de elementos que cumplían a nivel conceptual, de las
mismas funciones que las computadoras actuales.
Todos los sistemas de cómputo contienen los mismos componentes físicos,
estos pueden variar en tamaño, velocidad, capacidad de almacenamiento o
cualquier otra característica, pero en definitiva todos estarán hechos para lo
mismo, o sea, procesar información.
Cuando Charles Babbage creo su máquina analítica, la cual nunca pudo hacer
funcionar, su modo de trabajo era mecánico, en esos tiempos no existía nada
que se pareciera al Software, y por consecuencia no había ningún programa
que pudiera hacer funcionar al Hardware.
La aparición del Software ocurrió después de la segunda guerra mundial y este
fue evolucionando, primero por una necesidad y después por los avances
tecnológicos que se iban incorporando a las distintas partes físicas de los
sistemas de computación, de esta forma se fueron desarrollando programas
que mejoraran su utilización.
1
ANEXO I: Clasificación de las Computadoras
2
Ver DEFINICIÓN DE SOFTWARE, página 29
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 5
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Cuando uno quiere analizar sus características generales, encuentra que al
Hardware se lo identifica como la parte física y al Software como la parte
lógica, pero porque se lo llama parte física al Hardware y porque parte lógica al
Software. Es simple decirlo, pero como lo podríamos justificar.
La justificación de porque el Hardware es la parte física, se puede considerar
que es bastante simple, todo lo relacionado con el Hardware es tangible, se
puede tocar, eso es cierto y por consiguiente verdadero. Pero como hacemos
para justificar al Software como la parte lógica, que vamos a decir, que es
intangible, y lo intangible es algo lógico, la respuesta es un rotundo “NO”.
Entonces, antes de plantear una justificación de porque el Software es la parte
lógica, debemos analizar lo que significa la palabra lógica para la informática.
Las visiones pueden ser diferentes, pero veamos. La computadora
internamente maneja información digital, este tipo de información la
conseguimos teniendo en cuenta que un sistema de cómputo, trabaja
internamente con componentes electrónicos, estos componentes utilizan como
información los valores de 0 y 1, que se vinculan al sistema binario de
numeración, estos valores representa constantemente dentro del sistema
valores en 0, si es falso, y en 1, en el caso de que sea verdadero. Teniendo en
cuenta esto, encontraremos una justificación de porque el Software es la parte
lógica, teniendo en cuenta el modo de trabajar del Hardware.
Si seguimos con el análisis, nos damos cuenta que al Hardware lo podemos
utilizar a partir de que existe el Software, y uno de sus componentes son los
programas, los programas están compuesto de un juego de instrucciones para
cumplir con un fin determinado, resolver una aplicación o un problema. Cuando
investigamos las características de los programas, notamos que las
instrucciones que contienen, deben estar ordenadas lógicamente, para que el
programa nos dé, el resultado deseado, si esto no es así, un programa no
podrá resolver el problema para lo que fue desarrollado. En este punto
determinante podemos encontrar otra justificación para el Software, teniendo
en cuenta el orden lógico que se debe utilizar para la creación de un programa
cualquiera.
Conclusiones, un sistema de computación está compuesto de Hardware y
Software, el Hardware esta compuesto de todos los componentes físicos y por
consecuencia tangibles, su justificación en este caso es simple, en cambio el
Software esta compuesto por programas y los datos que estos administran, las
instrucciones de un programa deben estar ordenadas para que el programa
nos de él resultado deseado, primera justificación: el orden lógico, la segunda
tiene que ver como el modo de trabajar del Hardware, que esta basado
exclusivamente en la electrónica, o sea, que trabaja lógicamente, esta sería
la segunda justificación que se podría encontrar para el Software, teniendo en
cuenta el modo de funcionamiento del Hardware.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 6
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
ANTECEDENTES HISTÓRICOS
Dedos, piedras y cuerdas: El fundamento del cálculo es el conteo. Primero
los dedos, luego cuerdas con nudos hechos a intervalos regulares. La
palabra cálculo deriva de calculus que significa piedras.
Papel y lápiz: Surge con el uso de un marcador y un objeto sobre el cual
marcar. Gran evolución de los garabatos en las cortezas de los árboles, al
uso de punzones en tablas de madera; lo que llevó a la creación del papel y
lápiz.
El ábaco: Consiste en una tabla con una serie de hendiduras, en la primera
se colocan tantas piedras como unidades hay que representar; en la segunda,
tantas como decenas y así sucesivamente (Siglo XI a.C.). Actualmente se
sigue usando en el extremo oriente.
Los números y sus símbolos: El primer método representaba cada unidad
por una marca o señal. Los romanos representaban los números con las letras
del alfabeto. Ante la dificultad de la inexistencia del cero, los hindúes
introducen el concepto del cero y la notación posicional.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 7
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Los logaritmos: Sirven para abreviar cálculos. Fueron inventadas, en 1614,
por John Napier (Neper), barón de Merchiston (Edimburgo, 1550 - 4 de abril
de 1617) fue un matemático escocés, reconocido por haber descubierto los
logaritmos, él llamaba a su descubrimiento números artificiales.
La regla del cálculo: Inventada por Patridge en 1650. Dispone de escalas
que en lugar de variar con los números varían con sus logaritmos. Consiste en
sumar y restar distancias geométricas (logarítmicas).
La sumadora de Pascal: En 1642 surge la primera calculadora mecánica.
Se cuentan los dientes del engranaje; arrastra en una unidad la posición de un
engranaje cuando el que le precede ha acumulado 10 de ellas. Para multiplicar,
recurre a sumas sucesivas.
La calculadora de Leibniz: En 1671 se crea la máquina de multiplicar con
sumas progresivas. Poseía 2 contadores: uno que ejecuta las sumas y otro
que indica cuando debe detenerse una suma. La división es la inversa de la
multiplicación y la resta se trabaja como suma de complementos (93-
12=93+88=181).
La máquina de Babbage: En 1807, Jaquard
perfeccionó una máquina que empleaba una
secuencia de tarjetas perforadas, cuyas
perforaciones controlaban la selección de los hilos
y la ejecución del diseño. Sobre la base del
funcionamiento de este telar, a comienzos del siglo
XIX, Babbage diseñó y desarrolló la primera
computadora de uso general. Nunca la llegó a
construir totalmente ya que las técnicas de
precisión de la época no estaban preparadas para
satisfacer las necesidades de su proyecto. En
1821, presentó la MÁQUINA DE LAS
DIFERENCIAS. En 1833, concibió una segunda máquina, que era ante
todo automática. Babbage había diseñado su máquina con capacidad de
acumular datos, operar y controlar la ejecución de operaciones.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 8
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Dicha máquina disponía de:
1) Dispositivos de entrada para introducir los datos, por medio de tarjetas
perforadas.
2) Memoria para almacenar los datos introducidos y los resultados de las
operaciones y también las instrucciones.
3) Unidad de control para controlar la ejecución de las instrucciones.
4) Unidad aritmética y lógica para efectuar las operaciones.
5) Dispositivos de salida para transmitir los resultados de las operaciones
al exterior.
Como vemos contaba con componentes similares, desde el punto de vista de la
función que cumplían, a los que se utilizan en un sistema de cómputo actual.
Teniendo en cuenta sus ideas, los sistemas de cómputo han ido variando sus
características, como su tamaño, velocidad, capacidad de almacenamiento y
diversidad en los dispositivos de E/S que utilizan.
La teoría de los circuitos lógicos: En 1854, con la importancia del álgebra de
George Boole (1815-1864) reside en que las computadoras están construidas
mediante redes de circuitos que llegan a ser muy complejas y esta proporciona
un método de representación de los mismos mucho más eficientes y
sistemáticos que las representaciones geométricas o electrónicas
convencionales.
Las tabuladoras mecánicas: Siglo XIX. Era un gran problema el volumen de
la información por manejar. En 1890, Herman Hollerith (1860-1929), que
trabajaba en la Oficina de Censos de EE.UU., desarrollo un sistema mecánico
para registrar, calcular y tabular los datos extraídos del censo.
El nuevo sistema se basaba en perforaciones efectuadas sobre tarjetas en
forma manual. Para ser leídas, las tarjetas se colocaban en cubetas de
mercurio unidas eléctricamente por conductores, los mismos estaban
ubicados en cada lugar donde podía haber una perforación, los puntos de la
prensa entraban en contacto con los conductores, y estos datos registrados en
los contadores. Esta idea de "estado" (hay perforación / no hay perforación)
dio origen al sistema binario de 2 posiciones (si o no), el cual permite la
representación interna de los datos en la computadora.
Constaba de los siguientes dispositivos:
1) Perforadora.
2) Verificadora.
3) Clasificadora.
4) Intercaladora.
5) Calculadora perforadora o reproductora.
6) Tabuladora.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 9
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Watson: Primer presidente de la empresa I.B.M. (International Business
Machines), creada en 1924.
El Mark I: En 1944 Howard Aiken después de 7 años de esfuerzo, logró
terminar con éxito el Mark I, el que fue usado en la preparación de tablas
matemáticas. Como decía Babbage, esta máquina contaba de unidades de
E/S, memoria, unidades de cálculo y unidad de control. Era costoso y delicado.
Este instrumento electromecánico estaba constituido por reveladores y se
controlaba por medio de una cinta de papel perforada.
El ENIAC (Electronic Numeric Integrator and Calculator): La primera
computadora completamente electrónica fue desarrollada por Mauchly y
Eckert, debido a que la cantidad de datos aumento hasta el punto donde ya
no podía ser manejada por métodos ordinarios mecánicos de cálculos, esto
hizo ver la clara necesidad de máquinas de mayor capacidad. Él ejercito de
los EE.UU. pidió su colaboración y en 1945 crearon la primera computadora
completamente electrónica.
La diferencia entre el MARK I y el ENIAC consistió en que, salvo para las
operaciones de E/S este último no disponía de ningún mecanismo móvil.
El programa almacenado: En su diseño original, el ENIAC era capaz de
almacenar distintos programas. Para pasar de uno a otro los ingenieros tenían
que modificar parte de los circuitos de la máquina con el fin de que este
efectuara las operaciones requeridas para la solución de cada problema
específico.
A medida que se fueron incorporando nuevas
tecnologías la arquitectura física de toda
computadora servían a la par de programa en el
plano más estricto, y por lo tanto los cometidos
de estas máquinas eran inamovibles y
sumamente costoso. Las ideas de Babbage
fueron extendidas un siglo más tarde por el
matemático británico Alan M. Turing3 (1912-
1954) y por John Von Neumann4 (1903-1957),
ambos fueron fundamentales en el desarrollo de
la moderna computadora electrónica digital.
3
Creo en 1936 una máquina que era un dispositivo que transformaba un INPUT en un
OUTPUT después de algunos pasos. Tanto el INPUT como el OUPUT constan de números en
código binario (ceros y unos). Teniendo en cuenta al modo de funcionamiento de la máquina de
Turing se lo considera como el inventor de las computadoras digitales y por consecuencia de la
electrónica..
4
http://members.fortunecity.com/jon_alava/biografias/neuman.htm
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 10
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
John Von Neumann en 1946 sugirió una alternativa hacia una arquitectura más
versátil adoptada por todos los sistemas de computación desde la Segunda
Guerra Mundial, dicha arquitectura consta de dos partes: la CPU: que opera
sobre los datos que hay que manipular y la Memoria: es aquí donde están
guardados los datos.
Fue pionero de la computadora digital moderna, trabajó con Eckert y Mauchly
en la Universidad de Pennsylvania, donde publicó un artículo acerca del
almacenamiento de programas. El concepto de programa almacenado
5
permitió la lectura de un programa dentro de la memoria de la computadora, y
después la ejecución de las instrucciones del mismo sin tener que volverlas a
escribir.
La primera computadora en usar el citado concepto fue la llamada EDVAC
(Electronic Discrete Variable Automatic Computer, es decir “computadora
automática electrónica de variable discreta”), desarrollada por Von Neumann,
Eckert y Mauchly. Los programas almacenados dieron a las computadoras
flexibilidad y confiabilidad, haciéndolas más rápidas y menos sujetas a errores
que los programas mecánicos.
Los sistemas de cómputos actuales respetan la arquitectura propuesta por
John Von Neumann desde el punto de vista de la forma de procesar los datos y
del almacenamiento de los mismos.
Entre 1945 y 1950, nace el EDVAC (Electronic Discrete Variable Automatic
Computer), que fue la primera computadora de programa almacenado con
instrucciones estructuradas y lenguaje binario.
Utilizando el mismo principio de almacenamiento se construyeron otras
computadoras, entre las que se destacaban la UNIVAC (Computadora
Automática Universal) y la EDSAC. Utilizaban rutinas estándar para efectuar
cálculos repetitivos y ayudas para facilitar la localización de errores de
programación; además se incorporaba por primera vez el concepto de Sistema
Operativo para controlar la ejecución del programa. La UNIVAC fue una de las
primeras en utilizar cinta magnética como unidad de entrada y salida. Disponía
de gran velocidad, confiabilidad, capacidad de memoria y la posibilidad de
manejar igualmente números y material descriptivo, por lo que se la puede
considerar como de uso general.
5
El Dr. Von Neumann se planteo en 1946, como se podía hacer para solucionar dicho
problema, promulgando los siguientes principios:
1) El programa debe ser almacenado en la misma forma que los datos.
2) Debe existir una instrucción de bifurcación condicional (capacidad lógica).
3) El programa debe ser una cadena de decisiones lógicas binarias.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 11
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
GENERACIONES DE COMPUTADORAS
Primera Generación (Válvulas)
(De 1951 a 1958) Las computadoras de la primera Generación emplearon
tubos al vacío para procesar información. Los operadores ingresaban los datos
y programas en código especial por medio de tarjetas perforadas. El
almacenamiento interno se lograba con un tambor que giraba rápidamente,
sobre el cual un dispositivo de lectura / escritura colocaba marcas magnéticas.
Esas computadoras de tubos al vacío eran mucho más grandes y generaban
más calor que los modelos contemporáneos. Eckert y Mauchly contribuyeron al
desarrollo de computadoras de la 1ª Generación formando una Cía. privada y
construyendo UNIVAC I, que el Comité del censo utilizó para evaluar el de
1950. La IBM tenía el monopolio de los equipos de procesamiento de datos a
base de tarjetas perforadas y estaba teniendo un gran auge en productos como
rebanadores de carne, básculas para comestibles, relojes y otros artículos; sin
embargo no había logrado el contrato para el Censo de 1950.
Comenzó entonces a construir
computadoras electrónicas y su
primera entrada fue con la IBM 701 en
1953. Después de un lento pero
excitante comienzo la IBM 701 se
convirtió en un producto
comercialmente viable. Sin embargo
en 1954 fue introducido el modelo IBM
650, el cual es la razón por la que IBM
disfruta hoy de una gran parte del
mercado de las computadoras. La
administración de la IBM asumió un
gran riesgo y estimó una venta de 50
computadoras. Este número era
mayor que la cantidad de
computadoras instaladas en esa
época en Estados Unidos. De hecho la IBM instaló 1000 computadoras. El
resto es historia. Aunque caras y de uso limitado las computadoras fueron
aceptadas rápidamente por las Compañías privadas y de Gobierno. A la mitad
de los años 50 IBM y Remington Rand se consolidaban como líderes en la
fabricación de computadoras.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 12
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Segunda Generación (Transistores)
(1959-1964) El invento del transistor hizo posible una nueva generación de
computadoras, más rápidas, más pequeñas y con menores necesidades de
ventilación. Sin embargo el costo seguía siendo una porción significativa del
presupuesto de una Compañía. Las computadoras de la segunda generación
también utilizaban redes de núcleos magnéticos en lugar de tambores
giratorios para el almacenamiento primario.
Estos núcleos contenían pequeños anillos de material
magnético, enlazados entre sí, en los cuales podrían
almacenarse datos e instrucciones. Los programas de
computadoras también mejoraron. El lenguaje COBOL
desarrollado durante la 1ª generación estaba ya
disponible comercialmente. Los programas escritos
para una computadora podían transferirse a otra con
un mínimo esfuerzo. El escribir un programa ya no
requería entender plenamente el hardware de la
computación. Las computadoras de la 2ª Generación
eran substancialmente más pequeñas y rápidas que las
de tubos al vacío, y se usaban para nuevas
aplicaciones, como en los sistemas para reservación en líneas aéreas, control
de tráfico aéreo y simulaciones para uso general. Las empresas comenzaron a
aplicar las computadoras a tareas de almacenamiento de registros, como
manejo de inventarios, nómina y contabilidad.
La marina de Estados Unidos, utilizó las computadoras de la Segunda
Generación para crear el primer simulador de vuelo (Whirlwind I). HoneyWell
se colocó como el primer competidor durante la segunda generación de
computadoras. Burroughs, Univac, NCR, CDC, HoneyWell, los más grandes
competidores de IBM durante los 60s se conocieron como el grupo BUNCH
(siglas).
Tercera Generación (Circuitos Integrados)
(1964-1971) circuitos integrados
Compatibilidad con equipo mayor
Multiprogramación Minicomputadora
Las computadoras de la tercera
generación emergieron con el
desarrollo de los circuitos integrados
(pastillas de silicio) en las cuales se
colocan miles de componentes
electrónicos, en una integración en
miniatura. Las computadoras nueva-
mente se hicieron más pequeñas,
más rápidas, desprendían menos
calor y eran energéticamente más
eficientes. Antes del advenimiento de
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 13
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
los circuitos integrados, las computadoras estaban diseñadas para aplicaciones
matemáticas o de negocios, pero no para las dos cosas. Los circuitos
integrados permitieron a los fabricantes de computadoras incrementar la
flexibilidad de los programas, y estandarizar sus modelos. La IBM 360 una de
las primeras computadoras comerciales que usó circuitos integrados, podía
realizar tanto análisis numéricos como administración ó procesamiento de
archivos. Los clientes podían escalar sus sistemas 360 a modelos IBM de
mayor tamaño y podían todavía correr sus programas actuales. Las
computadoras trabajaban a tal velocidad que proporcionaban la capacidad de
correr más de un programa de manera simultánea (multiprogramación).
Por ejemplo la computadora podía estar calculando la nomina y
aceptando pedidos al mismo tiempo. Minicomputadoras, Con la
introducción del modelo 360 IBM acaparó el 70% del mercado, para evitar
competir directamente con IBM la empresa Digital Equipment Corporation
DEC redirigió sus esfuerzos hacia computadoras pequeñas. Mucho
menos costosas de compra r y de operar que las computadoras grandes,
las Minicomputadoras se desarrollaron durante la segunda generación
pero alcanzaron su mayor auge entre 1960 y 70.
Cuarta Generación (Microcircuitos)
(1971 - 1990) Dos mejoras en la tecnología de las computadoras marcan el
inicio de la cuarta generación: el reemplazo de las memorias con núcleos
magnéticos, por las de Chips de silicio y la colocación de muchos más
componentes en un Chip: producto de la microminiaturización de los circuitos
electrónicos. El tamaño reducido del microprocesador de Chips hizo posible la
creación de las computadoras personales. (PC) Hoy en día las tecnologías LSI
(Integración a gran escala) y VLSI (integración a muy gran escala) permiten
que cientos de miles de componentes electrónicos se almacén en un chip.
Usando VLSI, un fabricante puede hacer que una computadora pequeña
rivalice con una computadora de la primera generación que ocupara un cuarto
completo.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 14
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Con la disminución del tamaño de los componentes y reduciendo la cantidad
de fallas. Aparece la posibilidad de teleprocesamiento (es decir, la de ingresar
datos y recibir información procesada en terminales alejadas). Se comenzó a
integrar redes de computadoras, llegando a interconectarse centenares de
ellas.
Quinta Generación (Inteligencia Artificial)
(A partir de 1990): Se prevé que tendrán: circuitos integrados muy complejos,
medios de almacenamiento magnéticos, ópticos y electrónicos y la utilización
de un lenguaje natural basado en la Inteligencia Artificial.
Inteligencia artificial, término que, en su sentido más amplio, indicaría la
capacidad de un artefacto de realizar los mismos tipos de funciones que
caracterizan al pensamiento humano. La posibilidad de desarrollar un artefacto
así ha despertado la curiosidad del ser humano desde la antigüedad. Con el
avance de la ciencia moderna la búsqueda de la IA (inteligencia artificial) ha
tomado dos caminos fundamentales: la investigación psicológica y fisiológica
de la naturaleza del pensamiento humano, y el desarrollo tecnológico de
sistemas informáticos cada vez más complejos.
En este sentido, el término IA se
ha aplicado a sistemas y
programas informáticos capaces
de realizar tareas complejas,
simulando el funcionamiento del
pensamiento humano, aunque
todavía muy lejos de éste. En
esta esfera los campos de
investigación más importantes
son el procesamiento de la
información, el reconocimiento de
modelos, los juegos y las áreas
aplicadas como el diagnóstico
médico. Algunas áreas de la
investigación actual del
procesamiento de la información están centradas en programas que permiten a
un ordenador o computadora comprender la información escrita o hablada, y
generar resúmenes, responder a preguntas específicas o redistribuir datos a
los usuarios interesados en determinados sectores de esta información. En
esos programas es esencial la capacidad del sistema de generar frases
gramaticalmente correctas y de establecer vínculos entre palabras e ideas. La
investigación ha demostrado que mientras que la lógica de la estructura del
lenguaje, su sintaxis, está relacionada con la programación, el problema del
significado, o semántica, es mucho más profundo, y va en la dirección de una
auténtica inteligencia artificial.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 15
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Actualmente existen dos tendencias en cuanto al desarrollo de sistemas de IA:
los sistemas expertos y las redes neuronales. Los sistemas expertos intentan
reproducir el razonamiento humano de forma simbólica. Las redes neuronales
lo hacen desde una perspectiva más biológica (recrean la estructura de un
cerebro humano mediante algoritmos genéticos). A pesar de la complejidad de
ambos sistemas los resultados distan mucho de un auténtico pensamiento
inteligente.
Muchos científicos se muestran escépticos acerca de la posibilidad de que
alguna vez pueda desarrollarse una verdadera IA. El funcionamiento de la
mente humana todavía no ha llegado a conocerse en profundidad, y en
consecuencia, el diseño informático seguirá siendo esencialmente incapaz de
reproducir esos procesos desconocidos y complejos.
EVOLUCIÓN DE LOS SISTEMAS DE COMPUTACIÓN
Para tratar de comprender los requisitos y el significado de las principales
características de los sistemas de computación contemporáneos, es útil
considerar como han ido evolucionando éstos con el tiempo.
Cuando se quiere analizar él porque de su crecimiento, debemos analizarlos
desde dos puntos de vista, el primero teniendo en cuenta los cambios que se
produjeron en el modo de trabajo de los sistemas de computación y el segundo
en el surgimiento constante de nuevas tecnologías que cambio notoriamente su
modo de uso.
• Evolución a partir del Modo de Trabajo:
Con las primeras computadoras, desde finales de los años 40 hasta la mitad de
los años 50, el programador interactuaba de manera directa con el hardware de
la computadora, no existía realmente un sistema operativo. Estas máquinas
eran utilizadas desde una consola que contenía luces, interruptores, algún
dispositivo de entrada (lectores de tarjetas) y una impresora. Los programas se
realizaban a través del lenguaje máquina (bits) o a través de interruptores. Si
un programa se detenía, las luces indicaban la condición de error y el
programador se encargaba de examinar los distintos registros (CPU y memoria
principal) para determinar la causa del error, si el programa terminaba
correctamente los resultados del proceso aparecían impresos.
Durante los años 50 y 60. (A principio de los 50, la compañía General Motors
implanto el primer sistema operativo para su IBM 701). Empiezan a surgir las
tarjetas perforadas las cuales permiten que los usuarios (que en ese tiempo
eran generalmente programadores), se encarguen de modificar sus programas.
Establecían o apartaban tiempo, metían o introducían sus programas,
corregían y depuraban sus programas en su tiempo. A esto se le llamaba
procesamiento en serie. Todo esto se traducía en pérdida de tiempo y
tiempos de programas excesivos.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 16
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
En los años 60 y 70 se genera el circuito integrado, se organizan los trabajos y
se generan los procesos Batch (por lotes), lo cual consiste en determinar los
trabajos comunes y realizarlos todos juntos de una sola vez. En esta época
surgen las unidades de cinta y el cargador de programas, el cual se considera
como el primer tipo de sistema operativo.
En los 80, inició el auge de la Internet en los Estados Unidos de América. A
finales de los años 80 comienza el gran auge y evolución de los sistemas
operativos. Se descubre el concepto de multiprogramación que consiste en
tener cargados en memoria a varios trabajos al mismo tiempo, características
principales de los sistemas operativos actuales.
Los 90 y el futuro, entramos a la era de la computación distribuida y del
multiprocesamiento a través de múltiples redes de computadoras,
aprovechando el ciclo del procesador.
Se tendrá una configuración dinámica con un reconocimiento inmediato de
dispositivos y software que se añada o elimine de las redes a través de
procesos de registro y localizadores.
La conectividad se facilita gracias a estándares y protocolos de sistemas
abiertos por organizaciones como ISO (Organización Internacional de
Estándares) y todo estará más controlado por los protocolos de comunicación
OSI (Interconexión de Sistemas Abiertos) y por la red de servicios digital RDSI
(Red Digital de Servicios Integrados).
• Evolución a partir del Modo de Uso:
El modo de uso esta relacionado con el surgimiento de los sistemas operativos
que han ido evolucionando conjuntamente con la aparición de las nuevas
tecnologías, porque decimos esto, porque el hardware es en sí un elemento
estático de un sistema de cómputo y actúa a partir de órdenes. Su evolución
estuvo y está relacionada directamente con la implementación de nuevas
tecnologías para su desarrollo.
Estos cambios fueron ocasionando variantes en la relación que existe entre el
usuario o programador de computadoras, aunque históricamente la forma
primaria de que se pudieran comunicar pasaba exclusivamente por el uso de
medios mecánicos y consecuentemente muy poco modificables.
Debido a la aparición constante de las nuevas tecnologías, obligó a los
programadores de computadoras a desarrollar constantemente nuevos
programas que faciliten su uso.
En este camino de evolución, aparecieron los sistemas operativos, estos
permitieron crear una interfaz mucho más amigable, para que los usuarios en
general pudieran acceder al uso de un sistema de cómputo, de manera mucho
más asidua.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 17
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Por ese motivo, como existen generaciones de computadoras, existen
generaciones de sistemas operativos, cada generación plantea cambios y
estos cambios a nivel del software, genera distintos tipos de interfaces.
En las primeras generaciones normalmente la interfaz que utilizaban los
usuarios, sé basada en líneas de comandos (órdenes), pero a partir de los
años 80, dichas interfaces se fueron modificando con la aparición de un nuevo
modo de trabajo vinculado con el desarrollo por parte de la empresa
Macintosh6 de una nueva tecnología conocida como GUI 6 (Interfaz Gráfica de
Usuarios), que transformó, lo incomodo que resultaba utilizar comandos, con el
uso por parte de los usuarios de un entorno gráfico compuesto por ventanas,
menús y demás elementos que facilitaron notoriamente el uso, cada vez más
vertiginoso de los distintos sistemas de cómputo.
Estas nuevas características fueron incorporadas a partir de un acuerdo con
Bill Gates 7 para la primera versión de Microsoft 8 Windows, pero aclaremos, el
acuerdo era únicamente para esa versión, pero bueno, la realidad demuestra
que la han seguido utilizando en todas las demás versiones que se fueron
incorporando.
No sólo Macintosh y Windows poseen una interfaz gráfica, Unix también la
tiene, la cual es muy poderosa y Linux 9 gracias a que un grupo de
programadores se lo propuso, tiene una interfaz gráfica para su entorno de
trabajo.
La actual es una etapa muy interesante en la evolución de los sistemas
operativos. La capacidad de los sistemas de cómputo continúa avanzando
vertiginosamente y las distintas empresas buscan constantemente actualizar
las distintas versiones de los sistemas operativos, independientemente de las
nuevas tecnologías que le han incorporado.
Como vemos, todos los usuarios de un sistema de cómputo desde el momento
de su aparición, nos tuvimos que ir adaptando a las nuevas tecnologías, en
cada etapa, fueron modificándose los distintos tipos de hardware y
paralelamente se fueron actualizando los distintos tipos de software que se
podían ir utilizando en esos nuevos sistemas de cómputo.
Los primeros sistemas de cómputo eran de un solo usuario y operados por el
programador de turno, a medida que se desarrollaron los sistemas operativos,
este control fue transferido a ellos. Esto se logro a partir de poder almacenar en
la memoria principal al componente o rutina principal de un sistema operativo
conocida con el nombre de monitor residente10, de esta manera el sistema
6
http://www.maccare.com.ar/historia.htm#Habla el inventor del interfase del Mac
7
http://www.maccare.com.ar/biografia_gates.htm
8
http://www.maccare.com.ar/historia.htm - La historia de Microsoft
9
http://www.maccare.com.ar/linux.htm
10
Stallings, W. (2001); SISTEMAS OPERATIVOS. Principios de diseño e interioridades.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 18
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
operativo empezó a realizar muchas de las funciones, especialmente la de E/S,
de las que anteriormente era responsabilidad de los programadores. Esto
mejorar la utilización del sistema, la existencia del componente principal del
sistema operativo cargado en forma permanente en memoria permitió la
compartición de los recursos del sistema, simultáneamente entre varios
programas. Esta compartición supuso tanto una mejora en la utilización de los
recursos, como un incremento en los problemas.
Evidentemente no es lo mismo que un sistema sea utilizado por un único
usuario al que pueda ser compartido por varios, por ese motivo el nivel de
protección de los recursos debió aumentar.
Cada sistema operativo se fue adaptando a estas necesidades y en este
camino de evolución, cada nueva versión de sistema operativo
(independientemente de la empresa por el cual haya sido elaborado), ha ido
buscando que el uso de los recursos a ser utilizado por uno o varios usuarios,
pueda aprovecharse de una manera óptima.
En resumen, los sistemas operativos a lo largo de los años fueron
evolucionando con dos propósitos principales. Primero, facilitar un entorno
adecuado para el desarrollo y ejecución de programas, Segundo, los sistemas
operativos tratan de planificar y ordenar las actividades de computación para
unas buenas prestaciones del sistema de cómputo.
Conclusión:
• La evolución desde el punto de vista del modo de trabajo esta vinculado
con la implementación de las distintas metodologías de procesamiento de
datos y desde el punto del modo de uso al surgimiento de los sistemas
operativos que permitieron que los sistemas de computación que estaban
diseñados para un uso específico pasara a ser de propósito general.
4ª Edición; Madrid; PEARSON EDUCACIÓN S.A.; página 59.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 19
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
HARDWARE
UNIDADES DE INFORMACIÓN
• BIT: Es el elemento de información más pequeño posible, se usa para
expresar la longitud de un código con sistema binario que sólo puede tener
un estado físico de 2 posibles. Como unidad de medida para el
almacenamiento de la información hace referencia a la menor porción de
información que puede estar almacenada en un dispositivo de
almacenamiento electrónico, magnético u óptico, en cambio para la
transferencia de la información hace referencia a la cantidad de bits por
segundo (bps) que pueden ser transferido por vez por un bus de
comunicaciones.
• NIBBLE: Se denomina nibble o cuarteto al conjunto de cuatro dígitos
binarios (bits) o medio octeto. Su interés se debe a que cada cifra en
hexadecimal (0, 1, 2,..., 9, A, B, C, D, E, F) se puede representar con un
cuarteto, puesto que 24=16.
• BYTE: Es un grupo de dígitos binarios (bit) sobre los que se operan
como una unidad, generalmente se considera a un byte igual a un carácter.
• CARÁCTER: Son los símbolos usados por el hombre en su escritura
(letras, números, espacio, signos de puntuación, etc.). La representación de
un carácter alfanumérico esta dado generalmente por 1 byte de 8 bit
(octeto = 8 Bits).
• HERTZ: Unidad de medida que se utiliza para calcular la cantidad de ciclos
de proceso por segundo que realiza un procesador, entendiendo ciclo como
la repetición de un evento. El hercio se aplica a la medición de la cantidad
de veces por segundo que se repite una onda (sonora o electromagnética)
magnitud denominada frecuencia, y que es en este sentido la inversa del
periodo.
• PALABRA: Es una secuencia de caracteres tratados como una unidad y
que puede ser almacenado en un sector de la memoria llamado celda.
UNIDADES DE MEDIDA
ALMACENAMIENTO
DENOMINACIÓN CANTIDAD DE BYTES POTENCIA
CARÁCTER 1 23
KILOBYTE (KB) 1024 210
MEGABYTE (MB) 1.048.576 220
GIGABYTE (GB) 1.073.741.824 230
TERABYTE (TB) 1.099.511.627.776 240
PETABYTE (PB) 1.125.899.906.842.620 250
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 20
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
TRANSFERENCIA
INTERNA EXTERNA
(Ancho del bus de datos) (Ancho de Banda – Banda Ancha)
DENOMINACIÓN CANTIDAD DE DENOMINACIÓN CANTIDAD DE
BITS BITS
BYTE 8 BYTE 8 bps
½ PALABRA 16 1 Kbps 1024 bps
PALABRA 32 1 Mbps 1024 Kbps
DOBLE PALABRA 64 1 Gbps 1024 Mbps
PROCESAMIENTO
DENOMINACIÓN CICLOS DE PROCESO POTENCIA
HERTZ Hz 1
1 KILOHERZ KHz 1 000 Hz 103 Hz
1 MEGAHERZ MHz 1 000 000 Hz 106 Hz
1 GIGAHERZ GHz 1 000 000 000 Hz 109 Hz
1 TERAHERZ THz 1 000 000 000 000 Hz 1012 Hz
1 PETAHERZ PHz 1 000 000 000 000 000 Hz 1015 Hz
1 EXAHERZ EHz 1 000 000 000 000 000 000 Hz 1018 Hz
SISTEMAS DE NUMERACIÓN
BINARIO 0 1
DECIMAL 0 1 2 3 4 5 6 7 8 9
OCTAL 0 1 2 3 4 5 6 7
HEXADECIMAL 0 1 2 3 4 5 6 7 8 9 A B C D E F
Equivalente Nº: 10 11 12 13 14 15
Usos de los sistemas de numeración:
• Decimal: Usuarios.
• Binario: Lenguaje de máquina.
• Hexadecimal: Direcciones de memoria. Sistema de Computación
• Octal: Procesamiento de la información.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 21
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
ELEMENTOS BÁSICOS DE UN
SISTEMA DE COMPUTACIÓN
• La Unidad Central de Proceso conocida como CPU cuya misión es la de leer
instrucciones, realizar operaciones aritméticas y lógicas y puede almacenar
temporalmente instrucciones o datos en sus registros.
• La Unidad de Memoria que almacena Programas y Datos.
• Los Circuitos o Unidades de Entrada / Salida que comunican la Unidad
Central con los periféricos externos tales como el teclado y el monitor de
vídeo.
Ahora bien, estos tres elementos se encuentran conectados entre sí por lo que
se conoce como buses del sistema.
Con el continuo avance de la tecnología de los semiconductores es posible
tener en un solo circuito integrado (Chip) la CPU (Inglés) o UCP (Español) de
la computadora y este circuito integrado es conocido como el
microprocesador o procesador.
UNIDAD CENTRAL DE PROCESO (UCP o CPU)11
Funciones:
1. Controlar y supervisar el funcionamiento del Sistema de Computación en
base a un programa almacenado en la Memoria Principal.
2. Desarrollar las operaciones matemáticas y lógicas que sean necesarias
para procesar los datos y controlar las secuencias de ejecución de las
instrucciones.
3. Controlar el envío y recepción de datos desde las unidades periféricas a la
memoria.
Para realizar sus funciones la CPU se sirve de los siguientes
componentes:
• UNIDAD DE CONTROL (UC): Consta de un conjunto de circuitos,
integrados dentro de la CPU, los cuales cumplen funciones específicas
que permiten, por ejemplo: detectar la disponibilidad o no de algún
periférico, la disponibilidad de posiciones en la memoria principal.
La unidad de control (como dispositivo físico) junto con el sistema
operativo (como dispositivo lógico), permiten el verdadero control y
dirección de todas las acciones que se producen dentro de la
computadora. Dispone de un reloj electrónico que genera impulsos a
intervalos regulares, marcando lo que se denomina ciclo de máquina.
11
En este libro utilizaremos la sigla CPU para hablar de Unidad Central de Procesos
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 22
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
La unidad de control gobierna el flujo de la información a fin de posibilitar
la ejecución ordenada de las instrucciones del programa, almacenadas
secuencialmente en la memoria, para lo cual se ocupa de:
a. Controlar la secuencia de las instrucciones.
b. Distinguir el tipo de instrucción.
c. Encargar la ejecución de la instrucción a la unidad aritmética.
d. Direccionar a los datos al componente correspondiente que este
asociado a cada secuencia de proceso.
• UNIDAD ARITMÉTICA Y LÓGICA (UAL): Ejecuta las instrucciones del
tipo Aritmética y las instrucciones del tipo Lógica. Las instrucciones
concretas a realizar la envía mediante señales la unidad de control,
aunque las ejecuta de manera autónoma. Recoge los datos a operar
(operandos) de los registros convenientes, proporcionando los resultados.
MEMORIA PRINCIPAL (RAM + ROM)
Todo sistema de computación posee una memoria principal, su función es la de
almacenar los datos de los usuarios a partir de la ejecución de los programas y
los datos propios del hardware
La Memoria Principal esta dividida en 2 partes:
• MEMORIA RAM (Memoria de acceso al azar o aleatorio): Es la parte la
memoria principal que almacena los programas a partir de su ejecución y
los datos a procesar. Es utilizada por los usuarios o por los programas de
usuario. Su almacenamiento es temporario, o sea, que es volátil. El
concepto de aleatorio esta relacionado con la forma que el sistema
operativo accede a los programas que estén cargados en ella o por la forma
en que son cargados los programas de usuario en memoria, dado que el
almacenamiento de los mismos es aleatorio, dependiendo esto de los
espacios libres que van generando durante la ejecución de los procesos.
• MEMORIA ROM (Memoria de sólo lectura): Es utilizada para almacenar
los programas provistos por el fabricante de las computadoras y que son
indispensables para su funcionamiento. La información que contiene
depende la tecnología con que fue fabricado el hardware, esta memoria no
es modificable por los usuarios y se activa en el momento del encendido de
la computadora. Los datos están almacenados permanentemente, o sea,
no es volátil. El concepto de sólo lectura, esta basado en que el sistema
operativo, durante el procesamiento de la información, leerá la información
que se encuentra almacenada en este espacio de almacenamiento para
poder cumplir con cada uno de los ciclos de proceso que requiera cada
programa durante su ejecución.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 23
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
MEMORIA INTERMEDIA (Cache)
La memoria Cache es una memoria tipo RAM de alta velocidad que esta
diseñada para acelerar los tiempos de proceso, dado que CPU puede obtener
las instrucciones y los datos ubicados en la memoria cache mucho más
rápidamente que las instrucciones y datos almacenados en la memoria
principal. Se la conoce como memoria intermedia, porque estratégicamente se
encuentra entre la CPU y la RAM.
Tipos:
• Cache interna o primaria: Porque las nuevas tecnologías en la fabricación
de hardware colocan a esta memoria internamente dentro de la CPU. Es
una innovación relativamente reciente; en realidad son dos, cada una con
una misión específica: Una para datos y otra para instrucciones. Están
incluidas en el procesador junto con su unidad de control, lo que significa
tres cosas: comparativamente es muy cara; extremadamente rápida, y
limitada en tamaño.
• Cache externa o secundaria: Es más antigua que la interna, es una
memoria de acceso rápido incluida en la placa principal, que dispone de su
propio bus y controlador independiente que intercepta las llamadas a
memoria antes que sean enviadas a la RAM. Si la tecnología con que fue
fabricado el hardware no permite un cache interno, esta sería la única que
tendría nuestro sistema de computación.
• Cache de disco: Además de las anteriores, que son de propósito general,
existe una cache de funcionalidad específica que se aloja en la base de la
memoria RAM (buffers). Es la caché de disco, destinada a contener los
datos de disco que probablemente sean necesitados en un futuro próximo y
los que deben ser escritos. Los datos o instrucciones que va almacenando
esta memoria se van generando a partir de los procesos de usuario.
CANALES DE E/S
Son dispositivos encargados de establecer enlaces de comunicación entre la
CPU y los periféricos, y para cada tipo de periférico existe un canal de E/S.
Funciones de los canales:
a) Determinar la disponibilidad de los periféricos.
b) Controlar los formatos de E/S de los datos.
c) Comprobar errores de lectura y/o grabación.
d) Recuperación de errores de transmisión.
Los canales suelen especializarse según el periférico que tienen a su cargo y
se clasifican por su forma de trabajar.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 24
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Todo canal de E/S está dividido por las placas de interfaz y/o tarjetas
expansión y los buses del sistema.
Las placas de interfaz cumplen la función de traducir y transmitir mediante los
buses externos la información para que pueda ser interpretada por los
periféricos como por la CPU.
Estas placas de interfaz constan de distintos componentes que se relacionan
directamente con los distintos tipos de dispositivos periféricos. Estos
componentes son un procesador dedicado para la traducción, buses internos
para la transmisión, una memoria ROM para almacenar el juego de
instrucciones correspondientes a la placa y el tipo de puerto (serie o paralelo)
que permita el envío o recepción de los datos que serán o han sido procesados
mediante la conexión de los buses externos al periférico con el cual esté
relacionado. La mayoría de las placas constan además de una memoria RAM
propia, como por ejemplo las de vídeo.
Algunas interfaces se insertan en las ranuras de expansión correspondientes
(slots) o como en las nuevas tecnologías de hardware donde se insertan
directamente en la placa principal y de esa forma (en cualquiera de los casos)
se comunican mediante los buses internos con el microprocesador.
DISPOSITIVOS PERIFÉRICOS
Se denomina periférico a todo dispositivo que permite la comunicación de la
computadora con el mundo exterior. Este mundo exterior puede ser:
• El usuario.
• Cualquier tipo de dispositivo que este controlado por la computadora, o que
provea a la misma de información.
Distinguimos tres categorías de periféricos:
• DE ENTRADA: Son aquellos con los cuales se ingresan datos a una
computadora para su tratamiento.
• DE SALIDA: Son aquellos a través de los cuales la computadora entrega
información al mundo exterior.
• DE E/S:
o ALMACENAMIENTO: Son aquellos en los que se apoya la
computadora en su trabajo, utilizándolo como archivo
electrónico de información, la computadora entrega información
a estas unidades, que se encargan de almacenarla hasta el
instante en que la misma lo requiera. Los medios de
almacenamiento existentes son los electrónicos, los magnéticos
y los ópticos.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 25
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
o COMUNICACIÓN: Son aquellos que permiten la entrada y salida
de la información desde el mundo exterior (usuarios) hacia el
mundo interior (CPU) y viceversa.
Los periféricos son pues los encargados de transformar los datos de entrada
en señales electrónicas inteligibles por la computadora o de traducir las
señales de salida de la computadora de forma que pueda entenderlas el
usuario o el dispositivo que constituye su mundo exterior.
BUSES DEL SISTEMA
Los buses del sistema son las distintas líneas de comunicación o conductores
que interconectan los diferentes elementos de un sistema. La CPU se
comunica con todas las posiciones de memoria y todos los periféricos del
sistema a través de los buses.
Existen distintos tipos de buses que se pueden clasificar por la ubicación que
tienen dentro de un sistema de computación o por la función que cumplan.
Por ubicación:
• Internos: Son aquellos que forman parte de los componentes internos del
hardware y se encuentran insertados dentro de la placa principal.
• Externos: Son aquellos que forman parte de las distintas líneas de
comunicación entre los componentes internos del hardware y con los
externos. Este tipo de buses son los que forman parte de los canales de
E/S.
Por tipo:
• Bus de Datos (Data Bus): Por él viajan los datos de una parte a otra de
la computadora. En este los datos puedes ser de E/S con respecto a la
CPU., memoria y canales de E/S.
El ancho del Bus de Datos determina cuanta información puede procesar
el micro por vez. Si lo comparamos con una autopista, el reloj del
microprocesador determinaría la velocidad de los autos y el bus de datos
sería el ancho de la autopista. Para determinar la cantidad de autos que
pasan, cuanta información se procesa, no solo importa la velocidad de los
mismos sino también cuantos autos pueden pasar al mismo tiempo. En
conclusión, cuando más ancho sea el bus de datos, mayor la capacidad
de transferencia de datos tendrá nuestro sistema
• Bus de Direcciones (Address Bus): Tiene la función de direccionar a las
distintas partes del sistema. La CPU puede seleccionar mediante este bus
una dirección de memoria para leer o escribir los datos que se generen
durante un proceso. Este bus con respecto a la CPU es siempre de salida.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 26
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Cada uno de los bloques que componen una computadora, a excepción
de la CPU., tienen una dirección asignada, esta dirección deberá ser
diferente para cada uno de los dispositivos.
• Bus de Control (Control Bus): Por este bus viajan las señales de control
de todo el sistema. Con respecto a la CPU, este bus puede ser de E/S, ya
que la CPU, además de controlar a las unidades periféricas a la misma,
puede recibir información del estado de una determinada unidad.
Por el modo de direccionamiento:
• Bidireccional: Los datos pueden ser transferidos la CPU hacia el
dispositivo asociado a un proceso y viceversa. Los tipos de buses que
tienen este modo de direccionamiento son el de datos y el de control.
• Unidireccional: Los datos son transferidos desde la CPU hacia el
dispositivo asociado a un proceso, el tipo de bus que corresponde a este
modo de direccionamiento es el bus de direcciones.
La función de los buses es la de transmitir los distintos tipos de información,
bien sean datos, direcciones o controles, que viajan por los hilos de los buses
en forma de ausencia o presencia de tensión sobre cada uno de ellos, porque
la ausencia de tensión será 0 y la presencia de tensión 1. Toda información que
viaja por un bus lo hace codificada en forma binaria.
RANURAS DE EXPANSIÓN O SLOTS
Las ranuras de expansión o slots, son conectores ubicados sobre la tarjeta
principal en los que se insertan otras tarjetas que sirven de interfase con los
dispositivos periféricos de entrada y salida tales como: monitor, a través de la
tarjeta de video, la línea telefónica, a través del módem, etc.
Como su nombre lo indica, sirven para la expansión del funcionamiento de la
computadora hacia los dispositivos periféricos.
Gracias a estas ranuras, computadoras del tipo PC se configuran como
sistemas abiertos que admiten el incremento de funciones y la posibilidad de
adoptar diferentes tipos de periféricos de cualquier fabricante, siempre que
sean compatibles.
Esta es la forma en que la información es trasmitida primero entre
el microprocesador y los circuitos de apoyo o Chipset y luego
hacia las diferentes ranuras de expansión
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 27
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
CHIPSET (Conjunto de Circuitos Integrados)
Es un grupo de circuitos integrados que se encargan de establecer la
comunicación entre el microprocesador y sus componentes periféricos como
las tarjetas de expansión, la memoria, etc.
Originalmente el Chipset contaba con más de 100 circuitos integrados,
distribuidos a lo largo de la tarjeta principal prestando servicios de transferencia
de datos. En las tarjetas principales modernas esta cantidad de circuitos
integrados se ha reducido en un gran porcentaje llegando hasta tener
solamente tres chips gracias a las altas escalas de integración que han surgido
con las nuevas tecnologías de fabricación de los circuitos integrados.
Junto a los microprocesadores y las memorias, éste ha sido uno de los
principales factores que han contribuido al rápido desarrollo de las
computadoras personales y a la notoria reducción de su costo.
Dado que el Chipset es la red de circuitos que controla las comunicaciones
entre el microprocesador y sus componentes anexos, de esta manera el
microprocesador trabaja menos aumentando la velocidad de procesamiento.
La configuración habitual es usar dos circuitos integrados auxiliares al
procesador principal, llamados puente norte (que se usa como puente de
enlace entre dicho procesador y la memoria) y puente sur (encargado de
comunicar el procesador con el resto de los periféricos).
Es por ellos que un circuito Chipset apropiado puede garantizar una total
compatibilidad o una falla en el desempeño del sistema. Sin embargo como
este circuito viene fijo en la tarjeta principal y no se puede cambiar, al
seleccionar una tarjeta principal se selecciona al circuito Chipset.
Funciones del Chipset:
• Regulación de las comunicaciones entre las tarjetas que estén insertadas
en las ranuras de expansión y el resto de los componentes de la tarjeta
principal.
• Controlar el intercambio de información entre la memoria RAM y los demás
componentes de la tarjeta principal.
• Control de las interrupciones (IRQ12) y los accesos directos a memoria
(DMA) de la computadora.
• Fijar las direcciones de IRQ y de DMA de los diferentes dispositivos que se
encuentren conectados a la unidad central.
• Control del reloj en tiempo real RTC (Real Time Clock).
• Control de la memoria caché.
• Control de la CMOS SRAM.
12
ANEXO II: IRQ
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 28
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
PUERTOS O CONECTORES
Los puertos o conectores son parte de un canal de E/S, pueden existir
físicamente debido a las tecnologías actuales tanto en una placa de interfaz
como en una placa principal, su función es la de permitir conectar al bus
externo correspondiente a un dispositivo periférico. Existen de distinto tipo de
acuerdo a su modalidad de transferencia de datos:
Conector Paralelo: Se llama paralelo porque los datos se transmiten y se
reciben en forma simultánea por varias líneas (grupo de bits), los dispositivos
más comunes que utilizan estos conectores son las impresoras y se los conoce
también como conector PRN (PRiNter en inglés) o LPT (LPT1:, LPT2:, etc.).
Conector Serie: Los datos que se transmiten a través del puerto serie, los bits
se procesan de uno en uno (esto es, en “serie”, uno después del otro). La
velocidad de transmisión es mucho más lenta que la del puerto paralelo, ya que
el puerto paralelo permite transferir varios bits a la vez. Los puertos serie se
denominan “COMn”, donde n es un número (por ejemplo, “COM2”).
Conector USB: El Universal Serial Bus (bus universal en serie) fue creado en
1996 por siete empresas: IBM, Intel, Northern Telecom, Compaq, Microsoft,
Digital Equipment Corporation y NEC.
Es una interfaz estándar que facilita la conexión de periféricos a un ordenador.
Los dispositivos conectados son reconocidos automáticamente gracias a
Plug&Play y permite la transmisión tanto serial como paralelo.
PLACA PRINCIPAL13
La placa o tarjeta principal, base o madre es el componente más importante de
todo sistema de computación a nivel de hardware, porque es el que soporta a
todos los componentes internos del hardware (Chipset, ranuras de expansión,
buses internos, etc), los tipos de placas pueden variar según el tipo de
tecnología utilizada para su fabricación.
La elección de la misma es dato no menor debido a su costo, que será
amortizado a partir de la utilidad que le daremos a nuestro sistema de
computación, cual es mejor, seguramente aquella que cuente con la mayor
cantidad de ranuras de expansión, dado que esto nos permitirá seleccionar en
forma personalizada a los componentes externos que podremos incorporarle.
Sus funciones principales son la de contener a los componentes internos (una
vez que estén conectados) y a partir de su contención, poder comunicarlos
entre sí por medio de los distintos buses internos del sistema.
13
http://active-hardware.com/spanish/hardinfo/upmobo.htm
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 29
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
REGISTROS DEL HARDWARE
Todos los registros del hardware existen previamente a un proceso, su
existencia es física y forman parte de cada uno de los elementos que lo
componen, todos cumplen la misma función, almacenar a los distintos registros
lógicos que se generen a partir de un proceso, el tipo de información está
relacionada exclusivamente con el tipo de dispositivo.
Los distintos tipos de memoria electrónicas poseen básicamente dos tipos de
registros, el de direcciones y el de datos.
El registro de direcciones cumple la misma función para cualquiera de los tipos
de MEMORIAS (intermedia y principal), guardan la dirección de la ubicación de
los datos en los distintos espacios de almacenamiento.
El registro de datos, almacenan básicamente a los datos, la RAM, los de los
programas de usuario, la ROM, al BIOS y la CACHE, las direcciones de los
datos que estén almacenados en la memoria RAM.
Un disco rígido, los registros que posee, se los conoce con el nombre cluster,
la cantidad que posea, depende exclusivamente el tamaño del disco y del tipo
de sistema de archivos que tenga instalado.
La CPU también posee registros propios en cada una de sus partes:
UAL:
• Registro Acumulador: Contiene uno de los operandos y guarda el
resultado de la operación.
• Registro Temporal: Contiene al otro operando.
UC:
• Registro Contador del Programa: Guarda la dirección de la próxima
instrucción que debe ejecutar.
• Registro de Direcciones: Directamente conectado al Bus de Direcciones,
contiene la dirección que debe transmitirse para leer o grabar en memoria.
• Registro de Datos: Directamente conectado con el Bus de Datos,
contiene el dato que la CPU lee o escribe en la memoria.
• Registro de Instrucciones: Desde el registro de datos recibe una
instrucción que debe ser decodificada para su ejecución.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 30
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SOFTWARE
INTRODUCCIÓN
Un computador electrónico trabaja de acuerdo a un programa, formado por una
serie de instrucciones ordenadas en una secuencia predeterminada.
Siendo una instrucción la orden en la que se descompone un trabajo, es decir,
que en programa se integra de un conjunto de operaciones que han de
ejecutarse. Cada operación es una orden que se le imparte al computador para
ser ejecutada, a través de las instrucciones que especifican lo que se va a
hacer y lo que se va a usar para llevar a cabo la operación.
El conjunto de programas más los datos que estos procesan son los
componentes que conforman la información que forma parte del software.
Cada programa esta compuesto por un juego de instrucciones que pertenecen
a los distintos lenguajes de programación.
Cada dato puede ser de distinto tipo, dependiendo esto de la visión que
tengamos como usuario de un dato, los internos, son aquellos que son
transparentes, que desconocemos. Los externos, en cambio son los que
tenemos conocimiento de su existencia, los ejemplos estarán relacionados con
la visión que tengamos de los mismos.
Pero cuales son las condiciones que se deben cumplir para que exista un tipo
de software, “Cuando creamos un nuevo programa o cuando agrupamos
un conjunto de programas para una función específica”. La conclusión es
simple, si cada vez que creamos un nuevo programa, creemos que hemos
creado un nuevo tipo de software, existiría tanta cantidad de programas como
tipos de software, esto obviamente no es verdad, porque generalmente los
distintos tipos de software se crean a partir de poder agrupar un conjunto de
programas, como ejemplo podemos mencionar al Office de Windows o Linux,
en donde podemos agrupar a varios programas para una función específica,
que es la de administrar la información de una oficina. Existen excepciones, la
respuesta es si, un ejemplo simple es el programa Setup que es el único que
podemos encontrar dentro del software que viene con una computadora (BIOS)
A medida que vamos aprendiendo más sobre el software podemos encontrar
distintos niveles de conocimientos que nos permitirán conocer aun más sus
características generales:
1º Nivel: Sólo encontramos a los componentes generales del software que son
los programas y los datos. Nos alcanza para un conocimiento general.
2º Nivel: En este nivel nos encontramos con que el software esta compuesto
de distintos grupos de programas, con funciones diferentes, permitiéndonos de
esa forma clasificarlo en distinto tipos, a partir del agrupamiento de los
programas lo componen por función.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 31
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
3º Nivel: En este nivel identificamos y analizamos a los programas que
componen a cada uno de los distintos tipos de software por la función cumplen.
4º Nivel: En este nivel encontramos a los distintos tipos de datos que se
encuentran contenidos en los distintos de registros lógicos que en su conjunto
que conforman la estructura de los distintos tipos de archivos, existiendo
registros lógicos de tamaño variable (el tamaño de los registros se va
definiendo a partir del ingreso de los datos) y de tamaño fijo (el tamaño de los
registro se define antes del ingreso de los datos).
En el siguiente gráfico se plantea la jerarquía de los elementos que
conforman el software, donde existen cuatro niveles:
1º
Software
2º Tipos de Software
3º Tipos de Programas
4º
Tipos de Datos
NIVELES DELDEL
CLASIFICACIÓN SOFTWARE
SOFTWARE
Una vez aclarado lo que es el software y de haber identificado a sus elementos,
nos encontramos existen tres tipos que son los principales, dado que los
programas que lo componen son exclusivos de cada uno de ellos, en cambio
existen otros tipos o variantes que son catalogados como subtipos, dado que
los programas que lo componen ya forman parte de alguno de los tres
principales. Como principales podemos mencionar al software del sistema, al
software de base y al software de aplicación, como variantes dentro de este
libro encontraremos al software para la protección de la información,
software de control de comunicaciones (redes), software de multimedia y
al software para el desarrollo de aplicaciones.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 32
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
CONCEPTOS FUNDAMENTALES SOBRE SOFTWARE
DEFINICIÓN DE SOFTWARE
Probablemente la definición más formal de software es la atribuida a la IEEE
(Instituto de Ingenieros Eléctricos y Electrónicos), en su estándar 729: la suma
total de los programas de cómputo, procedimientos, reglas, documentación y
datos asociados que forman parte de las operaciones de un sistema de
computación14. Bajo esta definición el concepto de software va mas allá de los
programas de computo en sus distintas formas: código fuente, binario o código
ejecutable, además de su documentación. Es decir, el software es todo lo
intangible15, pero esta visión apunta exclusivamente a marcar una diferencia
con el Hardware que es la parte tangible. Software es también conocido como
programática o equipamiento lógico, esto es el conjunto de programas que
puede ejecutar el hardware para la realización de las tareas de computación a
las que se destina, esta visión es la indicada cuando hablamos del software,
porque debemos vincular este concepto directamente con la importancia que
tiene para un sistema de computación.
DEFINICIÓN DE SOFTWARE LIBRE
El software libre es aquel que puede ser distribuido, modificado, copiado y
usado; por lo tanto, debe venir acompañado del código fuente para hacer
efectivas las libertades que lo caracterizan. Dentro de software libre hay, a su
vez, matices que es necesario tener en cuenta. Por ejemplo, el software de
dominio publico significa que no esta protegido por el copyright, por lo tanto,
podrían generarse versiones no libres del mismo, en cambio el software libre
protegido con copyleft16 impide a los redistribuidores incluir algún tipo de
restricción a las libertades propias del software así concebido, es decir,
garantiza que las modificaciones seguirán siendo software libre, también es
conveniente no confundir el software libre con el software gratuito, este no
cuesta nada, hecho que no lo convierte en software libre, porque no es una
cuestión de precio, sino de libertad.17 Para Richard Stallman el software libre es
una cuestión de libertad, no de precio. Para comprender este concepto,
debemos pensar en la acepción de libre como en “libertad de expresión”. En
términos del citado autor el software libre se refiere a la libertad de los usuarios
para ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software.
14
IEEE Std 729-1993, IEEE Software Engineering Standard 729-1993: Glossary of Software
Engineering Terminology. IEEE Computer Society Press, 1993.
15
Software. http://es.wikipedia.org/wiki/Software.
16
Copyleft es el término que se utiliza en el ámbito informático (y se aplica de manera análoga
a la creación literaria y artística) para designar el tipo de protección jurídica que confieren
determinadas licencias que garantizan el derecho de cualquier usuario a utilizar, modificar y
redistribuir un programa o sus derivados, siempre que se mantengan estas mismas condiciones
de utilización y difusión. http://fundacioncopyleft.org/es/9/que-es-copyleft
17
Stallman, Richard M. Software libre para una sociedad libre. Ed. Traficantes de Sueños.
España. 2004. p.99.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 33
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Y se refiere especialmente a cuatro clases de libertad para los usuarios de
software:
o Libertad 0: la libertad para ejecutar el programa sea cual sea nuestro
propósito.
o Libertad 1: la libertad para estudiar el funcionamiento del programa y
adaptarlo a tus necesidades “el acceso al código fuente es condición
indispensable para esto”.
o Libertad 2: la libertad para redistribuir copias y ayudar así a tu vecino.
o Libertad 3: la libertad para mejorar el programa y luego publicarlo para el
bien de toda la comunidad -el acceso al código fuente es condición
indispensable para esto.
Software libre es cualquier programa cuyos usuarios gocen de estas libertades.
De modo que deberías ser libre de redistribuir copias con o sin modificaciones,
de forma gratuita o cobrando por su distribución, a cualquiera y en cualquier
lugar. Gozar de esta libertad significa, entre otras cosas, no tener que pedir
permiso ni pagar para ello. Asimismo, deberías ser libre para introducir
modificaciones y utilizarlas de forma privada, ya sea en tu trabajo o en tu
tiempo libre, sin siquiera tener que mencionar su existencia. Si se decidiera
publicar estos cambios, no se debería estar obligado a notificárselo a ninguna
persona ni de ninguna forma en particular. La libertad para utilizar un programa
significa que cualquier individuo u organización podrían ejecutarlo desde
cualquier sistema informático, con cualquier fin y sin la obligación de
comunicárselo subsiguientemente ni al desarrollador ni a ninguna entidad en
concreto. La libertad para redistribuir copias supone incluir las formas binarias o
ejecutables del programa y el código fuente tanto de las versiones modificadas,
como de las originales, ya que debemos tener la libertad para redistribuir tales
formas si se encuentra el modo de hacerlo, pues las libertades para hacer
cambios y para publicar las versiones mejoradas requieren de la accesibilidad
de código fuente, por supuesto de manera libre, condición necesaria del
software libre. Cuando hablamos de software libre, debemos evitar utilizar
expresiones como “regalar” o “gratis”, ya que se puede caer en el error de
interpretarlo como una mera cuestión de precio y no de libertad.
DEFINICIÓN DE SOFTWARE PROPIETARIO
Se refiere a cualquier programa informático en el que los usuarios tienen
limitadas las posibilidades de usarlo, modificarlo o redistribuirlo (con o sin
modificaciones), o que su código fuente no está disponible o el acceso a este
se encuentra restringido. En el software no libre una persona física o jurídica
(por nombrar algunos: compañía, corporación, fundación) posee los derechos
de autor sobre un software negando o no otorgando, al mismo tiempo, los
derechos de usar el programa con cualquier propósito; de estudiar cómo
funciona el programa y adaptarlo a las propias necesidades (donde el acceso al
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 34
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
código fuente es una condición previa); de distribuir copias; o de mejorar el
programa y hacer publicas las mejoras (para esto el acceso al código fuente es
un requisito previo). De esta manera, un software sigue siendo no libre aún si el
código fuente es hecho publico, cuando se mantiene la reserva de derechos
sobre el uso, modificación o distribución (por ejemplo, el programa de licencias
shared source de Microsoft). No existe consenso sobre el término a utilizar para
referirse al opuesto del software libre, aunque el término propietario es el más
utilizado.
La expresión software propietario proviene del término en inglés “propietary
software”. En la lengua anglosajona, “propietary” significa ((poseído o
controlado privadamente)) (((privately owned and controlled))), que destaca la
mantención de la reserva de derechos sobre el uso, modificación o
redistribución del software.
SOFTWARE LIBRE vs. SOFTWARE PROPIETARIO
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 35
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
FILOSOFÍAS CONTRADICTORIAS
El software libre aboga por dar libertad al usuario para que pueda utilizar el
software como más le convenga: modificarlo y distribuirlo, o mejorarlo y
venderlo, solucionar errores... lo que necesite. Es software que apuesta por el
bien común: se pueden mejorar aplicaciones hechas por otros
desarrolladores; lo cual lleva a que invirtiendo el mismo tiempo se crean
aplicaciones mejores ya que no hay que comenzar a desarrollarlas desde cero.
El software propietario limita el uso que podemos hacer del software a
ciertas condiciones bajo la licencia que compramos. Habitualmente no permite
realizar copias ni usar una licencia en más de un ordenador al mismo tiempo.
Se debe a que han realizado una inversión en investigación, desarrollo,
pruebas... y deben proteger su trabajo para que nadie lo copie y puedan
desarrollar productos similares ahorrando ese trabajo previo.
VENTAJAS Y DESVENTAJAS18
SOFTWARE LIBRE
1) Ventajas
a) Existen aplicaciones para todas las plataformas.
b) El precio de las aplicaciones es mucho menor, la mayoría de las veces
son gratuitas.
c) Libertad de copia.
d) Libertad de modificación y mejora.
e) Libertad de uso con cualquier fin.
f) Libertad de redistribución.
g) Facilidad a la hora de traducir una aplicación en varios idiomas.
h) Mayor seguridad y fiabilidad.
i) El usuario no depende del autor del software.
2) Inconvenientes
a) Algunas aplicaciones (bajo Linux) pueden llegar a ser algo complicadas
de instalar.
b) Inexistencia de garantía por parte del autor.
c) Interfaces gráficas menos amigables.
d) Poca estabilidad y flexibilidad en el campo de multimedia y juegos.
e) Menor compatibilidad con el hardware.
18
http://www.gentegeek.com/sl-sp-ventajas-desventajas/
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 36
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SOFTWARE PROPIETARIO
3) Ventajas
a) Facilidad de adquisición (puede venir preinstalado con la compra de su
sistema de computación.
b) Existencia de programas diseñados específicamente para desarrollar
una tarea.
c) Las empresas que desarrollan este tipo de software son por lo general
grandes y pueden dedicar muchos recursos, sobretodo económicos, en
el desarrollo e investigación.
d) Interfaces gráficas mejor diseñadas.
e) Más compatibilidad en el terreno de multimedia y juegos.
f) Mayor compatibilidad con el hardware.
4) Inconvenientes
a) No existen aplicaciones para todas las plataformas.
b) Imposibilidad de copia.
c) Imposibilidad de modificación.
d) Restricciones en el uso (marcadas por la licencia).
e) Imposibilidad de redistribución.
f) Por lo general suelen ser menos seguras.
g) El costo de las aplicaciones es mayor.
h) El soporte de la aplicación es exclusivo del propietario.
i) El usuario que adquiere software propietario depende al 100% de la
empresa propietaria.
Se podría decir que donde una opción flojea la otra cobra más fuerza, por
ejemplo en el terreno multimedia y juegos. No obstante el software libre está en
constante crecimiento y evolución, logrando día a día mejorar y eliminar los
aspectos en que flojea. Por otra banda las empresas de software propietario
empiezan a invertir en el software libre, en vistas de que este modelo es mucho
más eficiente que el modelo tradicional.
PRINCIPALES TIPOS DE SOFTWARE
SOFTWARE DEL SISTEMA
Junto con el sistema de computación se vende o entrega el denominado
Software del Sistema (o parte del mismo) sin el cual su manejo sería bastante
complicado para la realización de las tareas requeridas, y su programación
estaría a cargo de especialista en el hardware. También por seguridad no
conviene que usuarios no especializados accedan a este tipo de información.
Este software se encuentra almacenado en la memoria ROM y se lo conoce
con el nombre de BIOS (sistema básico de E/S), la manera de acceder a este
software es por medio del programa Setup, en donde aparece un menú con
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 37
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
varias opciones que nos permiten, por ejemplo, reconocer un nuevo dispositivo
de almacenamiento. Esta parte del BIOS se encuentra almacenado en el
CMOS19 (Complementary Metal Oxide Semiconductor - Tipo de tecnología de
semiconductores ampliamente usado) conjuntamente con la fecha y hora del
sistema.
Este software se compone de programas que permiten llevar a cabo funciones
del sistema estrechamente relacionados con el hardware de un sistema de
computación (operaciones de E/S, supervisión de multitarea, traducción de
lenguajes, manejo de archivos, etc.).
La función principal del software del sistema es reconocer a los componentes
básicos del hardware, a partir de su reconocimiento, los configura, y le brinda a
los sistemas operativos un hardware ya reconocido. De esta forma el sistema
operativo lo puede administrar y generar la interfaz correspondiente, de modo
que a los usuarios les parezca estar frente a una potente máquina virtual, fácil
de operar y programar, con la que se puede dialogar, y no tener vérselas con la
real computadora totalmente electrónica.
Este tipo de software esta formado por un juego de instrucciones relacionado
con la tecnologías que se utilizaron para la fabricación de un tipo de hardware
en particular, si el tipo de hardware es una computadora del tipo PC, la
tecnología es generalmente es CISC (complejo juego de instrucciones de
computador), si el tipo hardware es para diseño gráfico o es un servidor de red,
la tecnología generalmente es RISC (reducido juego de instrucciones de
computador). Las principales diferencias tienen que ver con la cantidad de
instrucciones que maneja cada una, siendo la tecnología RISC más rápida
porque resuelve en menos pasos a cada proceso.
SOFTWARE DE BASE
El Software de Base esta compuesto de un grupo de programas que son la
base para el uso de un sistema de computación, una parte de estos programas,
una vez que encendimos el equipo y se ejecutaron los pasos para efectuar la
carga del mismo, residen permanentemente en la memoria RAM de la
computadora, mientras el equipo está encendido, el software de base siempre
es el mismo. El otro grupo de programas esta compuesto de distintas
herramientas informáticas que le permitirán a los usuarios realizar el
procesamiento de los datos con el programa adecuado para cada tipo de
información y colaborar con el sistema operativo en la administración de un
sistema de computación.
19
CMOS (del inglés complementary metal-oxide-semiconductor, "estructuras semiconductor-
óxido-metal complementarias") es un tipo de memoria que se caracteriza por consumir muy
poca energía eléctrica, lo que la hace idónea para almacenar datos de la BIOS.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 38
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Grupos de programas que lo componen:
1 - SISTEMAS OPERATIVOS.
2 - UTILITARIOS.
El software de base (sistema operativo + utilitarios) es el principal
encargado de transformar la máquina desnuda en otra virtual, con facilidades
y potencialidades propias.
Fue el primero que se desarrolló para ayudar al usuario en el desarrollo y
ejecución automática de los distintos tipos de programas, así como para
controlar dicha ejecución y salvar errores que puedan subsanarse durante la
misma, como por ejemplo, la lectura o escritura en las distintas unidades de
almacenamiento. La experiencia fue indicando que existe un conjunto de
procesos, como los de E/S, la traducción de un lenguaje de programación a
instrucciones de máquina, ciertos cálculos rutinarios, que independientemente
del procesamiento de datos que se este realizando en una computadora,
siempre aparecen en alguna etapa de los mismos.
Los fabricantes de computadoras desde un principio comenzaron a proveer los
programas y subrutinas estándares para poder realizarlos, a la vez que
tornaban más automático y fácil el manejo de las máquinas, merced a otros
programas que también vendían. Su desarrollo implica muchas horas hombre
de trabajo, que un usuario común no puede concretar. Aparecieron así los
primeros sistemas operativos (S.O.).
1. SISTEMAS OPERATIVOS.
Un sistema operativo puede definirse como un conjunto de programas que
controlan la operación automática de un sistema de computación, con dos
funciones fundamentales:
I. Para que sea una máquina virtual fácil de operar y programar, a
partir del tipo de interfaz.
II. Para administrar los recursos de dicho sistema a fin optimizar su
funcionamiento, detectar errores e intentar salvarlos.
Recursos que administran los Sistemas Operativos 20
La memoria
Las unidades de comando (Periféricos)
Los dispositivos de E/S (Interrupciones)
Los trabajos a ser ejecutados (Procesos)
Los datos
20
Stallings, W. (2001); Sistemas Operativos: 4ª Edición; Madrid; Pearson Educación S. A.;
página 10.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 39
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Según el sistema operativo que se trate, se da distinta importancia a esas
funciones. Con el fin de facilitar la operación de un computador, un sistema
operativo descodifica un conjunto de Comandos que el usuario ordena desde
la línea de comandos o desde la interfaz gráfica de usuario mediante los
mecanismos correspondientes, conformando de esta forma un lenguaje de
control de trabajos.
Programas que componen un sistema operativo:
• Programas para determinar cuál será el próximo programa que ejecutará la
CPU, y ordenar su ejecución sin intervención del operador.
• Programas para establecer los lugares disponibles de la memoria principal
donde se almacenarán programas a ejecutar y sus datos.
• Programas para procesos de E/S de datos entre la memoria principal y los
periféricos.
• Programas para manejar archivos en los distintos dispositivos de
almacenamiento.
2. UTILITARIOS.
Los utilitarios son aquellos programas de uso general en todo equipo, y
cumplen funciones de apoyo a los sistemas de aplicación o para facilitar el
adecuado manejo de ciertos recursos del computador por parte de los
operadores, programadores y analistas.
Los utilitarios pueden cumplir distintas funciones pero de ninguna manera
administran los recursos del computador, esto lo realiza el sistema operativo.
Los programas utilitarios se pueden clasificar de acuerdo a la función
que cumplen:
I. Utilitarios de Servicio
II. Utilitarios de Apoyo a los Sistemas de Aplicación
UTILITARIOS DE SERVICIO
Este grupo de programas ayudan al sistema operativo en la administración de
los recursos desde el punto de vista del funcionamiento o uso de los mismos,
recordemos que la función de administración corresponde exclusivamente a los
sistemas operativos.
Para el análisis de este grupo de utilitarios utilizaremos dos puntos de vistas
diferentes, la vista lógica, vinculada a la información que generan o controlan y
a la vista física, vinculada con las características de cada dispositivo.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 40
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Podemos encontrar dentro de este grupo de programas a los utilitarios que
preparan un dispositivo de almacenamiento para su uso, a los que realizan el
mantenimiento de los mismos y a los programas de instalación de un nuevo
hardware.
1. UTILITARIOS QUE PREPARAN UN DISPOSITIVO DE
ALMACENAMIENTO NUEVO PARA SU USO: Para comenzar a hablar
de este grupo de utilitarios debemos relacionarlos con lo debemos hacer
para preparar un dispositivo nuevo para su uso (no nos imaginemos ha
aquel que nos venden y que tiene ya instalado al correspondiente sistema
operativo). Los utilitarios necesarios son los siguientes:
NOMBRE VISTA FUNCION COMENTARIO
GENERADOR DE FISICA Genera las particiones Una partición es una
PARTICIONES: en una unidad de división que se le realiza a
(FDISK – DISK disco. un dispositivo. La cantidad
MANAGER) de particiones dependerá
exclusivamente del tamaño
del dispositivo y del tipo de
sistema operativo que
estemos utilizando.
LÓGICA Genera las unidades Las unidades de disco se
de disco. identifican con las letras C,
D, etc. La cantidad de
unidades es hasta la letra
Z.
NOMBRE VISTA FUNCION COMENTARIO
INICIALIZADOR DE FÍSICA Genera: Forma un mapa de
DISPOSITIVOS DE 1. Pistas carreteras en donde se
ALMACENAMIENTO: 2. Sectores. almacenará de forma
(FORMAT) 3. Clusters (Regis- secuencial a los archivos
tros Físicos) o subdirectorios. Cada
archivo o subdirectorio
creado ocupará un sólo
cluster.
LOGICA 1. Índice. Toda esta información se
2. Sector de almacena en un lugar
arranque (MBR21). exclusivo del disco rígido
3. Directorio raíz o conocido como “área del
principal. sistema”.
21
El master boot record (MBR) es el primer sector ("sector cero") de un dispositivo de
almacenamiento de datos, se lo conoce como sector de arranque, ocupa generalmente 512
bytes, de los cuales 446 bytes corresponden al gestor de arranque (en código de máquina), 64
bytes, para contener los registros (cuatro) de las particiones primarias y 2 bytes para identificar
a la unidad de arranque del sistema.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 41
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Un índice es un registro que le indica a un sistema operativo la
ubicación física de un archivo en un dispositivo, almacena el número
del cluster y el número de bloque relativo que identifica al archivo
almacenado que puede ocupar uno o más clusters, dependiendo esto
del tamaño del archivo.
2. UTILITARIOS PARA EL MANTENIMIENTO DE UN DISPOSITIVO DE
ALMACENAMIENTO: Los utilitarios indispensables para el buen uso de
los recursos son los antivirus, los que realizan el diagnóstico y los que lo
optimizan.
NOMBRE VISTA FUNCION COMENTARIO
ANTIVIRUS FISICA Ninguna. Recordemos que virus es
información y que la misma
no esta vinculada al
aspecto físico.
LOGICA 1. Busca y elimina La condición para que un
virus. antivirus sea confiable es
que este lo más
actualizado posible y que
detecte mayor cantidad de
virus.
NOMBRE VISTA FUNCION COMENTARIO
DIAGNÓSTICO: FISICA 1. Chequea los Este utilitario nos permite
(CHKDSK) clusters verificar y controlar en que
2. Trata de recuperar estado se encuentra
la información que nuestro equipo.
este en un cluster
dañado
3. Bloquea los
clusters irrecupera-
bles.
LOGICA 1. Chequea el índice Esta función es
2. Chequea las fundamental en el caso de
estructuras de los que los archivos que
archivos y estuvimos utilizando no se
directorios. hayan cerrado como
corresponde.
NOMBRE VISTA FUNCION COMENTARIO
REORGANIZADOR DE FISICA 1. Reordena los Todos los archivos y
ESPACIOS EN DISCO: archivos que directorios en un
(DEFRAGMENTADOR estén dispositivo se van
DE DISCO) almacenados en almacenando en los
un dispositivo. espacios libres que
encuentre que no
necesariamente son
secuenciales.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 42
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
LOGICA 1. Reordena el Al reordenarse la
índice. ubicación de los
archivos se reordena el
índice, dado que tiene
un registro de la
ubicación de los
archivos almacenados
El defragmentador de disco cumple la función de optimizar a los
dispositivos cumpliendo dos funciones, desde el punto de vista lógico,
menor tiempo de acceso a la información que se encuentre almacenada
en un dispositivo. Desde el punto de vista físico, menor desgaste del
dispositivo, dado que al estar la información almacenada de forma
continua el dispositivo deberá trabajar menos cada vez que el sistema
operativo quiera buscar algún dato en particular.
3. PROGRAMAS DE INSTALACIÓN DE UN NUEVO HARDWARE: A este
grupo de programas se los conocen como Drivers o programas de
instalación de un nuevo hardware, su función es la reconocer a un nuevo
hardware brindándole a un sistema operativo un nuevo juego de
instrucciones que le permitan poder administrarlo. Normalmente los
nuevos elementos a nivel de hardware que se puedan ir incorporar a un
sistema de computación vienen con este tipo de programas para que el
nuevo dispositivo pueda ser utilizado de la manera más óptima. A estos
programas se lo cataloga como complementarios del software del sistema
teniendo en cuenta que sus funciones son similares a las que cumple este
tipo de software.
UTILITARIOS DE APOYO A LOS SISTEMAS DE APLICACIÓN
Son aquellos que auxilian al usuario en el desarrollo o ejecución de sus
aplicaciones. Este grupo corresponde al conjunto de utilitarios que se utilizará
como parte del sistema de aplicación. Es decir, que su función formará parte de
la secuencia de procesamiento necesaria para operar el sistema de aplicación
y estarán relacionados con la administración de la información en general.
Como ejemplos se pueden mencionar el utilitario generador de copias de
seguridad, administración de estructuras arbolares, procesadores de textos,
planillas de cálculo, gestores de base de datos, etc.
En este grupo podemos encontrar a tres grupos: los que organizan la
información, los que generan información y los que crean aplicaciones para
administrar información.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 43
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
1. UTILITARIOS QUE ORGANIZAN LA INFORMACIÓN: Estos utilitarios
trabajan con los archivos como unidad y la organización que realicen
estará relacionada con la vista lógica que el usuario tiene de la
información, toda modificación estará vinculada directamente con el
sistema operativo, porque es él, el encargado de asignarle el lugar físico
correspondiente a un archivo o directorio.
Tengamos presente que para un sistema operativo un archivo como
un directorio ocupan un espacio físico. La única diferencia es que un
directorio siempre ocupará el mismo espacio en cambio un archivo
podrá ocupar más a medida que aumente su tamaño.
Î COPIAS DE SEGURIDAD: Este Utilitario permite copiar cualquier archivo
a otro soporte, como de disco a disco, disco a disquete, disco a cinta,
etc. Un caso especial de este tipo de utilitarios es el que permite copiar
un soporte entero (aun de distinto tipo) con lo se puede obtener backups
o copias de disquetes enteros, siendo además mucho mas rápido y
simple que copiar de a un archivo por vez.
Î COMPACTADOR DE ARCHIVOS O UNIDADES DE DISCOS: Este tipo
de utilitarios nos permiten ahorrar espacio de almacenamiento en los
diferentes dispositivos físicos. Su función es la de reducir el tamaño de los
archivos, esto lo realiza dejando marcas en el momento de la
compresión en el lugar donde se encuentre toda la información
redundante que exista dentro de un archivo. Estos archivos comprimidos
no pueden volver a utilizarse, para volver a usarlos hay que
descomprimirlos. Descomprimir un archivo significa que en el lugar en
donde se encuentren las marcas en el archivo comprimido, se va ha
insertar nuevamente la información que corresponda. Cada marca en un
archivo comprimido indicará internamente un dato en particular.
Î ADMINISTRACIÓN DE ESTRUCTURAS ARBOLARES: Todo dispositivo
de almacenamiento requiere de una buena organización de la información
para que cada software (programas en general) tenga un directorio para
almacenar a sus archivos. Por ese motivo se requiere de distintos
utilitarios que nos permitan crear, borrar, renombrar, ver o movernos
dentro de una estructura arbolar, por ese motivo todo sistema operativo
tiene los utilitarios necesarios para realizar estas operaciones.
Î LISTADOR DE DIRECTORIOS: El directorio es básicamente un archivo
más, que contiene la identificación del disco, la cantidad de espacio que
disponible, nombre de archivos, tipo de archivos, etc. Lo que muestre un
directorio dependerá primero del sistema operativo y segundo del sistema
de computación corresponde a un sistema monousuario o multiusuario.
Î RENOMBRADOR DE ARCHIVOS: La Función de renombrar un archivo
consiste simplemente en cambiar el nombre de un archivo o un grupo de
archivos por otro nuevo.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 44
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Î ELIMINADOR DE ARCHIVOS Y DIRECTORIOS: La función de eliminar
un archivo consiste en suprimir los datos de dicho archivo del directorio o
subdirectorio, reasignando el espacio ocupado, como espacio
disponible. De esta forma se quita la referencia del archivo en el índice, y
el sistema operativo lo cataloga como libre.
Î RECUPERADORES DE DATOS: Estos permiten recuperar archivos,
directorios y lo que habría en una unidad de disco que fueron formateados
o borrados por error.
2. UTILITARIOS QUE GENERAN INFORMACIÓN: Estos utilitarios trabajan
con el contenido de los archivos y su función es la de crear distintos tipos
de estructuras de datos dependiendo esto del tipo de programa que
estemos utilizando. Estas estructuras de datos vienen definidas por el tipo
de aplicación, y cada aplicación puede manejar distintos tipos de
registros. En el caso de que una aplicación no tenga asignarle un espacio
de almacenamiento determinado para los datos que deba almacenar, los
registros serán de tamaño variable, en caso contrario serán de tamaño
fijo.
TIPOS DE REGISTROS22
TIPO TAMAÑO PROGRAMAS ADMINISTRACION
FISICOS DEPENDE SISTEMA
DEL OPERATIVO
DISPOSITIVO
LOGICOS FIJO • BASE DE DATOS APLICACIÓN
• IMÁGENES BITMAPEADAS
VARIABLE • PROCESADORES DE APLICACIÓN
TEXTOS
• PLANILLAS DE CALCULOS
• IMÁGENES VECTORIALES
• EDITORES DE SONIDO
• EDITORES DE VÍDEO
Î GESTORES DE BASE DE DATOS: Los gestores de base de datos son
las herramientas indispensables para la administración y gestión de las
bases de datos. Una Base de Datos es una colección de datos
interrelacionados, almacenados en conjunto con una redundancia
controlada. Una de las principales características de estos tipos de
programas es la posibilidad de poder administrar gran cantidad de
información y poder a su vez trabajar con cada dato en forma
personalizada, esto que significa, que se pueden realizar operaciones
sobre todos los datos que formen parte de la base de datos o con cada
dato en particular, generando de esta forma una independencia entre los
datos.
22
Ver Capítulo IV-ARCHIVOS, pág. 106.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 45
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
La estructura de una base de datos esta formada por una o varias tablas,
cada tabla puede ser parte de una archivo que conforma la base de datos
o sólo ser un archivo independiente. Cada tabla esta compuesta por
registros que identifican a las entidades que forman parte de la base de
datos, existiendo una entidad por elemento que la componga (por
ejemplo, todos los datos de una empresa), y cada registro esta
compuesto por diferentes campos que identifican a los atributos de cada
entidad (por ejemplo, la razón social y la dirección, que son datos que
identifican a la empresa).
Î GRAFICADORES: Los programas gráficadores son aquellos que nos
permiten realizar o trabajar con distintos tipos de dibujos, planos e
imágenes. Entre ellos podremos encontrar los programas de diseño
asistido por computadoras como el AUTOCAD que trabaja con imágenes
vectoriales o el programa PAINT que se encuentra en todas las versiones
de Windows que trabaja exclusivamente con imágenes bitmapeadas.
Î PLANILLA DE CÁLCULO: Estas herramientas están dirigidas a
usuarios exigentes dentro del mundo empresarial, permiten llevar una
pequeña contabilidad casera, control de gastos, y demás actividades que
necesiten realizar cálculos en forma automática. Su evolución siempre
estuvo encaminada a proporcionar herramientas tanto para el análisis
numérico como para el manejo de Bases de Datos en forma estándar.
Precisamente en los sistemas de Planillas de Cálculos, la característica
principal esta dirigida al análisis de datos numéricos, ofreciendo gran
cantidad de funciones Matemáticas donde se incluyen funciones del tipo
Estadísticas, Financieras y de Ingeniería. Otra de las características de
estos programas, es la representación gráfica del Análisis Estadístico
realizado por los usuarios para un determinado procedimiento.
Î PROCESADOR DE TEXTOS: Un procesador de textos es un programa
habitualmente escrito en lenguaje de máquina para que de esta forma
incremente su velocidad, nos permite crear, modificar, formatear, guardar,
recuperar y producir copias de textos. Es de los utilitarios más usados, ya
que tanto en el mundo de las grandes computadoras como en el de las
computadoras personales, prácticamente es una herramienta de trabajo
imprescindible. Todo usuario de una computadora posee como parte del
software de base a un procesador de texto como herramienta de trabajo
indispensable para la confección de textos.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 46
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
PROGRAMAS INTEGRADOS
Una de las funciones principales del software es la poder integrar distintos tipos
de programas que se encargan del manejo de información como los
procesadores de texto, las hojas electrónicas, los gestores de base de datos y
las presentaciones gráficas que tienen como característica principal su
independencia y la posibilidad de integración para realizar distintas funciones:
• Intercambio de datos entre aplicaciones distintas.
• Interactuar el procesador de textos con una hoja electrónica, una base de
datos o con el programa que realiza presentaciones gráficas, o viceversa.
Como podemos observar los paquetes de programas integrados sirven en
forma completa para la administración óptima de una oficina utilizando un
sistema de cómputo, está característica es la que obliga a los distintos usuarios
al aprendizaje de estas herramientas para poder desempeñarse en cualquier
empresa.
Uno de los paquetes de programas integrados más difundido es el Office de
Microsoft o el Open Office de Linux que contienen a los distintos utilitarios de
apoyo a los sistemas de aplicación como los procesadores de textos, las
planillas de cálculos, los gestores de bases de datos y programas
multimediales que permiten integrar distintos tipos de datos en un solo archivo.
Estos programas han evolucionado en forma paralela con las distintas
versiones de sistemas operativos. El manejo de estas versiones es lineal
permitiendo que los distintos usuarios puedan ir actualizando sus versiones de
programas integrados sin necesidad de tener que volver a estudiar las
características básicas de cada uno.
3. UTILITARIOS PARA EL DESARROLLO DE APLICACIONES: Para
comenzar a hablar de este grupo de programas, lo primero que debemos
saber es que toda aplicación es creada a partir de un lenguaje de
programación23.
En todos los aspectos, el lenguaje es un sistema de signos ordenados,
los signos representan objetos y las cosas materiales, en síntesis, un
signo ó conjuntos de signos, es el símbolo de algo y sirve como medio
de comunicación. Y para que exista una comprensión éstos, se deben
ajustar a reglas de interpretación.
23
ANEXO V: Clasificación de los Lenguajes de Programación
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 47
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
Estos utilitarios están dirigidos al desarrollo aplicaciones, cubriendo cada uno
de ellos, las necesidades básicas que todo lenguaje de programación necesita
para su entorno de trabajo. Este grupo de programas son los editores de texto,
los compiladores o intérpretes y los linkeadores.
Î EDITOR DE TEXTOS: Sirve para escribir el código fuente de los
distintos lenguajes, existen distintos tipos de programas que cumplen esa
función, esto quiere decir que ya están incorporados dentro de los
utilitarios que forman parte de los distintos lenguajes. Cuando utilizamos
los utilitarios propios del lenguaje estos tendrán la extensión
correspondiente, por ejemplo si utilizamos el Borland C, los archivos
tendrán como extensión CPP, si usaríamos el Turbo Pascal, la extensión
sería PAS, si en cambio el lenguaje elegido fuera algunos de los
relacionados con Basic (GwBasic, Qbasic o Visual Basic), todos tendrán
como extensión BAS. Estas extensiones identifican al tipo de lenguaje
elegido para escribir el código fuente de la futura aplicación. Los editores
de textos fueron creados para la escritura de programas, donde la
apariencia del texto escrito no es importante, esto marca la diferencia
con los Procesadores de Textos que apuntan exclusivamente a darle una
mejor apariencia al texto escrito.
Î COMPILADOR E INTERPRETES: Estos programas cumple dos
funciones, la primera es la detectar los errores del tipo ortográfico y
gramatical que surgieran durante la escritura del código fuente. La
segunda es la de traducir el código fuente al lenguaje de máquina,
creando al objeto, que normalmente tiene como extensión OBJ. Cada
lenguaje tiene su propio compilador o sea su traductor. Estos programas
generalmente forman parte del sistema en el cual se va a realizar la
compilación o interpretación, según el método que utilice cada sistema
para realizar la traducción de estos, serán compilados o interpretados. Si
un programa es creado en modo compilado, la aplicación se ejecuta a
partir del objeto, en cambio si se ejecuta en modo interprete, las
instrucciones del programa se ejecutan de una en una, siempre y cuando
no tengan errores de sintaxis de forma directa no creándose el objeto
correspondiente.
Î VINCULADOR O LINKEADOR: La función principal de estos programas
es la de crear la aplicación, generando los archivos con extensión EXE.
Para crearla lo que realiza vincular a todos los objetos (librerías o
subprogramas) relacionados con la aplicación y crear el ejecutable. La
vinculación del programa objeto para transformarlo en ejecutable es una
función que puede formar parte del propio programa compilador.
Debemos aclarar que un módulo es parte de un programa, o sea que
todo programa se compondrá de distinto módulos o subprogramas.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 48
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SOFTWARE DE APLICACIÓN
El Software de Aplicación esta compuesto por un conjunto de programas
creados para atender los trabajos específicos del usuario. Estos programas
necesitan del sistema operativo para poder ejecutarse.
Los programas que conforman a este tipo de software reúnen características
que se relacionan únicamente con la aplicación para la cual fueron concebidos,
como por ejemplo: control de stock, contabilidad general, sueldos y jornales,
cuentas corrientes, deudores, proveedores, etc.
Para el desarrollo de los programas que forma parte de este tipo de software se
deben tener en cuenta las distintas metodologías de procesamiento de datos24
que va ser utilizada.
Características:
a. Sistemas de aplicación confeccionados especialmente para un
usuario determinado.
Estos sistemas ofrecen la oportunidad al usuario de introducir en los mismos
ciertos parámetros en distintos niveles que permiten personalizar al sistema
de aplicación. Estos sistemas están desarrollados específicamente para un
usuario determinado, y se generan teniendo en cuenta las características que
esa aplicación tiene para ese usuario.
b. Sistemas de aplicación preplaneados.
Estos sistemas también se orientan a aplicaciones específicas de los
usuarios, pero son desarrollados en forma estándar. Se generan tomando en
cuenta las características propias de la aplicación para satisfacerla en sus
requerimientos estándares, generales de la misma, sin tener en consideración
a usuarios en particular.
Se presentan, pues, dos alternativas de elección:
1. Decidir por un sistema confeccionado a medida.
2. Decidir por un sistema preplaneado.
• Los sistemas confeccionados a medida son más caros que los sistemas
preplaneados, debido a que su costo es absorbido por un solo usuario.
• No es válido pensar que los sistemas desarrollados especialmente para un
usuario, no tengan restricciones, por el contrario, si bien existe como
característica en ellos, la personalización del sistema, esta tiene un límite,
dependen del hardware y del sistema operativo con el cual serán ejecutados.
24
ANEXO IV: Metodologías de Procesamiento de Datos
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 49
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
• Los sistemas preplaneados resultan ser más barato que los desarrollados
especialmente, esto es una realidad que hay que reconocer, ya que el
costo de desarrollo de los paquetes de sistemas preplaneados, que
efectúan las casas de software y se amortiza entre todos los usuarios que
adquieran dichos paquetes.
Sin embargo debiera analizarse en forma profunda que este ahorro, en ciertos
casos, puede resultar solo aparente, teniendo en cuenta que el producto
ofrecido por un sistema preplaneado comparado con los requerimientos que el
usuario tiene, pueden:
a) Coincidir plenamente.
b) Exceder los requerimientos del usuario.
c) Satisfacerlos en forma parcial o de manera diferente a lo que es
práctica usual en la organización.
• La primera situación es ideal, y en este caso el ahorro económico es real.
• La segunda situación resultaría costosa, ya que hubiera pagado, al
adquirirlo, por elementos y funciones que no se utilizarán en la satisfacción
de ningún requerimiento. En este caso el sistema preplaneado es más
ambicioso que el sistema optimo para la organización.
• La tercera situación, también el ahorro es absorbido por el costo del
sistema, en este caso el usuario deberá adaptar la organización a los
requerimientos del sistema, en lugar de que el sistema satisfaga los
requerimientos de la organización.
La decisión dependerá del resultado obtenido al analizar la relación entre el
GRADO DE SATISFACCIÓN DE LOS REQUERIMIENTOS versus los
COSTOS DEL SISTEMA, teniendo en cuenta las características del paquete
en cuanto a su integración, y la disponibilidad de recursos propios y/o externos
para desarrollar las aplicaciones.
SUBTIPOS DE SOFTWARE
Se considera como subtipo de software a los grupos de programas que
reunidos se utilizan para una función específica, pero que ya pertenecen a uno
de los tipos de software principales. En este grupo podemos encontrar, por
ejemplo, al software para la protección de la información, software de
control de comunicaciones (redes), software de multimedia y al software
para el desarrollo de aplicaciones.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 50
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SOFTWARE PARA LA PROTECCIÓN DE LA INFORMACIÓN
Este grupo de utilitarios tienen como características proteger la información, su
función fundamental es proveerle a los distintos usuarios de las herramientas
necesarias para poder realizar copias de seguridad, mantenimiento de los
dispositivos de almacenamiento y del uso de los programas antivirus.
De los programas que realizan copias de seguridad podemos decir que son
aquellos que realizan un duplicado de la información en dispositivos de
almacenamiento diferentes permitiendo de esta manera recuperarla si fuera
necesario.
El mantenimiento de los dispositivos de almacenamiento es importante dado
que la información se guarda en ellos y deben funcionar bien.
Con respecto a los programas antivirus se especializan en eliminar virus, como
consecuencia de ello debemos saber básicamente que son los virus25.
SOFTWARE DE CONTROL DE COMUNICACIONES
Con el advenimiento del teleprocesamiento en gran escala, con computadoras
conectadas a redes, se fueron desarrollando los Programas para el Control
de Comunicaciones, que se encargan de la gestión y manejo de las
comunicaciones a distancia. Gracias a los mismos, cuestiones tales como los
protocolos para establecer y concluir una comunicación entre computadoras
y/o terminales, la verificación de errores en la transmisión de datos y el pedido
de retransmisión en caso de errores.
En este tipo de software podemos encontrar principalmente a los sistemas
operativos que nos permitan administrar redes, como lo son Unix, los Windows
(aunque todos sabemos que no son todos iguales), Novell, Linux, etc.
Existen otros grupos de programas, que forman parte de los utilitarios que se
activan a través de un sistema operativo, ante un requerimiento de un
programa de un usuario de hacer una entrada o salida desde o hacia una
terminal o computadora remota.
Con los avances logrados en estos tipos de software se han incorporados cada
vez mayor cantidad de usuarios a la red Internet y el crecimiento de las redes
informáticas, los programas para el control de comunicaciones se han
convertido en una herramienta indispensable y a su vez estándar para los
distintos usuarios.
Los más populares son los navegadores o browsers, como el Explorador de
Internet o el NetScape, algunos ya vienen incorporados en las distintas
versiones de los sistemas operativos. En Internet una de las herramientas más
usadas son los buscadores, siendo los más populares Yahoo y Google.
25
ANEXO III: Virus Informáticos
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 51
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SOFTWARE DE MULTIMEDIA
Para entender lo que significa Multimedia, basta con utilizar una computadora
en donde se utilicen programas que interactúen el sonido, las imágenes, textos
y videos como medios para mostrar a los distintos tipos de información, como
por ejemplo los editores y reproductores de cada uno de los tipos de
información mencionados.
Los programas más comunes que tienen incorporados los elementos que
propone multimedia son por ejemplo las enciclopedias digitales como la
ENCARTA, los distintos tutores (programas de aprendizaje para usuarios no
experimentados) y todo lo vinculado con Internet, que con la interacción de los
elementos de multimedia hacen que sean los más aceptados entre los usuarios
de computadoras.
Un concepto totalmente incorporado en el ambiente de trabajo
multimedial es lo que se conoce como hipertexto.
A que se llama hipertexto: a la suma de todos los textos vinculados
sobre un mismo tema, formando de esta manera un gran texto. Estos
textos pueden estar incorporados en una misma aplicación o estar
distribuidos geográficamente en cualquier lugar del planeta a los
cuales se pueda acceder por los distintos medios propuestos por
Internet.
SOFTWARE PARA EL DESARROLLO DE APLICACIONES
Para comenzar a hablar de este tipo de software, con el sólo hecho de agrupar
a los programas necesarios para la creación de una aplicación, alcanzaría para
justificar la existencia de este tipo de software independientemente del lenguaje
de programación que utilicemos para el desarrollo de una aplicación. Estos
programas son los editores de textos, los compiladores o intérpretes, y los
linkeadores.
Un dato importante a tener en cuenta que para poder utilizar todos los
elementos físicos que compongan actualmente un sistema de
computación que pretenda formar parte de un sistema multiusuario o
desarrolle distinto tipos de aplicaciones, para poder ser utilizado
deben estar previamente reconocidos y eso se logra con los
programas de instalación de un nuevo hardware conocidos el nombre
de Drivers.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 52
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
TIPOS DE PROGRAMAS
POR EL TIEMPO QUE PERMANEZCA ALMACENADO EN MEMORIA Y POR
LA ACTIVIDAD QUE REALICE LA CPU
Todo programa al ser ejecutado por un usuario o por otro programa requiere de
espacio en la memoria RAM, dependiendo del tipo de programa, habrá
programas que permanecerán en forma residente y otros transitaran por ella.
Una de las características de los programas residentes, es que mientras
reside en la memoria no altera el modo de funcionamiento del equipo, lo único
que realiza es esperar su oportunidad para tomar control del equipo en una
situación precisa, o sea, que trabajan en base a los eventos que se van
generan durante el procesamiento de la información.
Un propósito habitual de este tipo de programas es el de alterar el manejo de
elementos del hardware, sea agregando o superponiendo funciones a los
servicios existentes o simplemente reemplazarlos.
Como ejemplo podemos citar al viejo comando KEYB.COM o a los distintos
drivers que entran en acción cuando dispositivo correspondiente es usado.
La mayoría de los programas residentes no tienen la posibilidad de
desactivarse, y en esos casos se debe forzar su finalización mediante el
reencendido del equipo.
Generalmente los sistemas operativos cargan directamente en memoria su
parte principal (núcleo) que sean indispensables para su funcionamiento, en
forma residente, como ocurre con las distintas versiones de Windows, Linux,
Unix, etc.
En cambio los programas no residentes o transitorios, cuando se encuentran
almacenados en memoria, generalmente se encuentran activos
permanentemente, cosa que no ocurre con los programas residentes y cuando
el programa termina con su ejecución dejan liberada la memoria. Se dice que
los programas transitorios, transitan por la memoria, hacen lo que tiene que
hacer y una vez que terminan, desaparecen.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 53
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
SITUACIÓN COMIENZO DE FIN DE
INICIAL EJECUCIÓN EJECUCIÓN
LIBRE LIBRE LIBRE
TSR
S.O. S.O. S.O.
a. Ocupación de memoria de un programa del tipo transitorio.
SITUACIÓN COMIENZO DE FIN DE
INICIAL EJECUCIÓN EJECUCIÓN
LIBRE LIBRE LIBRE
TSR TSR
S.O. S.O. S.O.
b) Ocupación de memoria de un programa del tipo residente (TSR).
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 54
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
CUESTIONARIO GENERAL TEÓRICO
1. ¿A que se considera una nueva tecnología en informática?
2. ¿A que se denomina buses del sistema, que funciones cumplen y de que
manera los podríamos clasificar?
3. ¿A que se denomina Chipset, donde se encuentra instalado, que
funciones cumple y de que tipo existen?
4. ¿A que se llama aplicación?
5. ¿A que se llama programas integrados?
6. ¿A que se llama sistema de computación, cuales son las partes que lo
componen y de que manera podríamos clasificar?
7. ¿Cuál es la definición formal del software, cuáles son los tipos principales,
que características tienen y porque se los considera como tal?
8. ¿Cuáles son las características principales de cada metodología de
procesamiento de datos y con que tipo de software las podemos
relacionar?
9. ¿Cuáles son las características principales del software libre y del
software propietario, y que sistemas operativos están asociados a cada
uno de ellos?
10. ¿Cuáles son las distintas unidades de información? Definirlas.
11. ¿Cuáles son las funciones básicas de todo sistema operativo?
12. ¿Cuáles son los aportes que realizaron Boole, Hollerith, Turing y Pascal?
13. ¿Cuáles son los aspectos más importantes de cada generación de
computadoras?
14. ¿Cuáles son los componentes que forma parte de la información que esta
compuesto el software?
15. ¿Cuáles son los registros que forman parte del hardware, de que tipo son,
que tipo de información almacenan y con que componente los podemos
relacionar a cada uno?
16. ¿De que manera fueron evolucionando los sistemas de computación
desde el punto de vista de modo de trabajo y desde el punto de su modo
de uso?
17. ¿Para que sirven los periféricos y de que tipo existen?
18. ¿Qué diferencias podemos encontrar entre el software libre y el software
propietario?
19. ¿Qué diseño John Von Neumann y cuales son los principios que
propuso?
20. ¿Qué es la CPU, cómo está dividida y que funciones cumplen cada una
de sus partes?
21. ¿Qué es la informática y por que razón se la considera una técnica o una
ciencia?
22. ¿Qué función cumplen los drivers y de que tipo de software se los
considera complementarios?
23. ¿Qué funciones cumple una placa principal y cuales son las partes que la
componen?
24. ¿Qué funciones cumplen los canales de E/S, cuales son sus partes y que
importancia tienen para los periféricos?
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 55
Fundamentos de Informática
Capítulo I: INTRODUCCIÓN A LA INFORMÁTICA
25. ¿Qué funciones cumplen los utilitarios de servicio y los de apoyo a los
sistemas de aplicación, y de que subgrupos están formados cada uno de
ellos?
26. ¿Qué son los protocolos y con que tipo de software los podemos asociar?
27. ¿Qué son los virus y de que tipos existen?
28. ¿Qué tipos de memorias existen desde el punto de vista del
almacenamiento y desde el punto de vista del direccionamiento?
29. ¿Qué tipos de procesadores podemos encontrar en un sistema de
computación?
30. ¿Qué utilitarios son necesarios para crear una aplicación (un archivo
.EXE) y que funciones cumplen cada uno de ellos?
31. ¿Qué visión le podemos dar a los programas del tipo residente o
transitorio con respecto al tiempo que se encuentran cargados en
memoria y a su actividad (tiempo de CPU)?
32. De que dispositivos estaba formada la máquina creada por Charles
Babbage?
33. Indicar cuáles son los componentes internos y externos del hardware.
34. Indicar cuales son los distintos medios de almacenamiento.
35. Indicar que unidades de medida se utilizan para calcular la velocidad
procesamiento, transferencia y almacenamiento de la información.
Profesores: Daniel Slavutsky - Edgardo Barcia – Jorge Zárate Pág. 56