domingo, 1 de octubre de 2017

Conceptos de software

Cuando surgió la informática sólo tenían acceso las organizaciones que podían pagar los altos precios; además se veía restringida sólo para aquellos que tenían conocimiento, ya que si fallaba debían analizar las luces para saber cual era el fallo; también se requería de los usuarios cierto conocimiento técnico y una alta complejidad a la hora de escribir un programa y ejecutarlo.
Luego, como una mejora, se introdujeron las tarjetas perforadas, como métodos de ingreso y salida de información.
A 10 años del comienzo de la informática se introdujeron los primeros sistemas operativos llamados “monitor”. Actualmente, lo que un programador desea es una abstracción simple de alto nivel con la cual trabajar. El sistema operativo es, en este caso, el programa que oculta la verdad del hardware al programador y los usuarios, presentándola de una forma simple y accesible; por eso, el sistema operativo es el que presenta al hardware de una manera más sencilla que el hardware implícito.
Las computadoras actuales cuentan con procesadores, memoria, discos, relojes, interfaces de red, dispositivos de almacenamiento, etc. En esta visión, el sistema operativo permite ofrecer una distribución ordenada y controlada de los procesadores, memorias y dispositivos de E/S entre los diversos programas que compiten con ellos. El sistema operativo es el que maneja y protege la memoria. Una de las tareas más complejas que realizan las computadoras es la comunicación a través de los periféricos. También incluye programas que se encargan de los detalles de comunicación con los periféricos o con el hardware que controla estos periféricos.
En el caso de las computadoras monousuario  el sistema operativo puede verificar que el usuario que trata de utilizar el equipo está habilitado para ello. Más aún puede tener derechos sobre determinados recursos del equipo pero no sobre todos los recursos. Cuando se trata de computadoras multiusuario, o en el caso de redes de computadoras, la tarea de administración de usuarios del sistema operativo es más compleja, ya que los derechos de cada usuario pueden ser diferentes sobre cada máquina, cada base de datos o cada periférico.
En general, un sistema operativo puede definirse como el lugar donde se incorporan las funciones de control del hardware de una computadora, de administración de sus recursos físicos y de sus usuarios, así como el control efectivo de la ejecución de los programas que en ella se carguen. Para que este funcione debe haber un programa funcionando constantemente junto con las demás aplicaciones.
Las dos funciones principales de un sistema operativo son: administrar los recursos de hardware y software de la computadora y brindar facilidades a los usuarios para su utilización. Pero, además, se puede definir como el administrador de los recursos ofrecidos por el hardware para alcanzar un rendimiento eficaz de los mismos. Los sistemas operativos construyen recursos de alto nivel, denominados virtuales, a base de encubrir los realmente existentes de bajo nivel, denominados fisicos. De esta manera, desde el punto de vista del usuario o de un proceso, la máquina física es convertida por el sistema operativo en una máquina virtual o máquina extendida, que, a diferencia de la física, ofrece muchas más funciones y es más fácil de utilizar. También otra definición es, como el conjunto de programas y funciones que ocultan los detalles del hardware, ofreciendo al usuario una manera sencilla y flexible de acceder al mismo. Este ocultamiento tiene dos objetivos: a) la abstracción, por la cual el software da una visión global y abstracta de la computadora haciendo fácil su uso ocultando por completo la gestión interna y b) la seguridad, necesaria para restringir determinadas operaciones a los usuarios creando varios niveles de privilegio, de tal forma que cada usuario tenga protegida su información y sus procesos.
La buena ejecución de un programa requiere una comunicación permanente con el sistema operativo para acceder a los recursos de la computadora, recursos que el sistema operativo controla y verifica. De este modo se puede detectar que una orden de impresión escrita en un programa es imposible de ejecutar porque la impresora no está encendida, o que un dato de un archivo no se puede recuperar porque falla el dispositivo periférico, o que la ejecución de un programa ha tardado más de un tiempo máximo determinado, etc. También el sistema operativo monitorea el resultado de la ejecución para trasmitir al usuario el mensaje adecuado resultante de la evolución de la ejecución.
Las computadoras multiusuario (que tienen terminales conectadas a un gran procesador central y permiten que sean utilizadas por varios usuarios a la vez), las redes de computadoras o las modernas computadoras paralelas con varios procesadores internos, pueden tener varios trabajos ejecutándose al mismo tiempo (procesamiento concurrente). Esto exige que el sistema operativo controle que hace cada proceso y permita que los mismos compartan datos y recursos (es decir se comuniquen y se sincronicen). Por otra parte estos múltiples procesos pueden tener diferente prioridad para acceder a los recursos, lo que debe ser controlado también por el sistema operativo.
Por otra parte, cada error de ejecución de una aplicación termina entregando el control al sistema operativo que debe manejar la solución al error y también la comunicación clara al usuario de sus causas.
Al poder procesar concurrentemente varios trabajos, el sistema operativo debe controlar la forma de usar la memoria de la computadora, de tal modo que un trabajo no invada el espacio físico de otro. Los esquemas de administración de memoria pueden ser muy sencillos o más sofisticada de modo de asignar y liberar memoria en forma dinámica según los requerimientos y prioridades de los procesos.
Los datos que se almacenan en la computadora se pueden proteger gracias al sistema operativo; además este sistema debe facilitar las herramientas necesarias para leer, escribir y eliminar archivos. Un sistema de archivos es una estructura de directorios con algún tipo de organización el cual nos permite almacenar, crear y borrar archivos en diferentes formatos. Los usuarios y las aplicaciones tienen la necesidad de almacenar datos en algún medio, a veces por períodos largos y a veces por instantes, cada aplicación y cada usuario debe tener ciertos derechos con sus datos, como son el poder crearlos y borrarlos, o cambiarlos de lugar; además de poder preservarlos de los demás.
Ahora, ya habiendo analizado lo anterior, podemos hablar de las distintas partes que componen el sistema de una computadora: a- Sistemas operativos: monousuarios (son aquéllos que soportan a un usuario a la vez, sin importar el número de procesadores que tenga la computadora o el número de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo), multiusuarios (son capaces de dar servicio a más de un usuario a la vez, ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones remotas en una red de comunicaciones); monotareas (son aquellos que sólo permiten una tarea a la vez por usuario), multitareas (le permite al usuario estar realizando varias tareas al mismo tiempo); uniproceso (es capaz de manejar solamente un procesador de la computadora) y multiproceso (se refiere al número de procesadores del sistema, que es más de uno y éste es capaz de usarlos todos para distribuir su carga de trabajo. Pueden trabajar de manera simétrica o asimétrica: cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los procesadores el cual será el procesador maestro y será el encargado de distribuir la carga de trabajo a los demás procesadores. Cuando se trabaja de manera simétrica, los procesos o partes de ellos son enviados indistintamente a cualquiera de los procesadores disponibles, teniendo una mejor distribución y equilibrio.).

Como el sistema operativo solo permite utilizar recursos del Hardware se tuvo que incluir el sistema de aplicación que está a la altura de los requerimientos del usuario. Estos últimos se dividen en aplicaciones: de negocios (como los procesadores de textos, planillas de cálculo, autoedición, administración de bases de datos, aplicaciones gráficas, aplicaciones corporativas, etc.), utilitarios (permiten administrar y mantener la computadora, tales como  antivirus, anti-espías,  herramientas de mantenimiento de sistemas de archivos, herramientas para mejorar rendimiento, recuperadores de bases de datos, etc.), personales (para uso personal, como agendas, tareas para hacer, correo electrónico, etc.) y entretenimiento (son los programas dedicados a los juegos interactivos, también incluyen los programas educativos).

Fuente: conceptos de software, aulas virtuales, Unlu.

jueves, 7 de septiembre de 2017

Unidad 3: unidades funcionales de una computadora.

Unidad N° 3:
Unidades funcionales de una computadora.




Una Computadora es una máquina digital y sincrónica, con cierta capacidad de
cálculo numérico y lógico, controlada por un programa almacenado, y con posibilidad de comunicación con el mundo exterior.

Es digital porque dentro de la computadora las señales eléctricas que se
manejan y la información que se procesa se representa en forma discreta, por medio
de valores binarios (0 y 1).


Es sincrónica, realiza las operaciones coordinada por un reloj central que envía
pulsos de sincronismo a todos los elementos que componen la computadora. Todas las
operaciones internas se realizan en instantes de tiempo predefinidos y coordinados
con el reloj.

Internamente posee una capacidad de cálculo numérico y lógico, en un
subsistema conocido como unidad aritmético-lógica (UAL). Normalmente las
operaciones que pueden realizarse en ella son muy simples (suma,
conjunción, comparaciones).

Se tienen órdenes o instrucciones almacenadas, que la
computadora podrá leer, interpretar y ejecutar ordenadamente.

Está comunicada con el mundo real, que es analógico. Esto significa que puede
realizar operaciones de entrada y salida con el mundo real, a través de dispositivos
periféricos.

La computadora es una máquina que cambia información de una forma a otra:
recibe información, la transforma, y proporciona información . Esta información puede presentarse de muchas formas, lo que convierte a la computadora en una máquina sumamente versátil, que es capaz desde liquidar impuestos hasta guiar el recorrido de una nave espacial. En cada caso las entradas y salidas son totalmente distintas, y en esto radica lo sorprendente de poder usar una computadora para ambas actividades.
Esta versatilidad está dada en que la máquina está controlada por un programa, que establece las instrucciones que le indican a las partes físicas qué deben hacer para transformar los datos de entrada en la salida requerida. El programa controla todo el proceso, del principio al fin: podemos modificar su funcionamiento con solo cambiar el programa.

Máquina de Von Neumann.


En el año 1946, John Louis Von Neumann, escribió un artículo de investigación
titulado "First Draft of a Report of the EDVAC". En el mencionado documento se
expresaban algunas ideas acerca de como debía operar una computadora. A tales
conceptos, derivados del artículo, se los conoce con el nombre de Máquina o
Arquitectura de Von Neumann; y han brindado las bases para la construcción y el
desarrollo de computadoras hasta los días actuales.
Hasta antes de Von Neumann la programación de una computadora consistía directamente en la reordenación física de sus componentes.
 La arquitectura Von Neumann se fundamenta en el concepto de programa almacenado, donde plantea que
las instrucciones y los datos tenían que almacenarse juntos en un medio común y
uniforme ,denominado memoria.

Un segundo concepto, es la ruptura de secuencia. Se dotó a la computadora de
una instrucción denominada "salto condicional", donde según el resultado de una operación, se ejecutaría la siguiente instrucción u otra.
Junto con la arquitectura se definió el ciclo
de trabajo de una computadora ,que en su
forma simple consta de las siguientes
operaciones:
A la computadora debe considerársela
como una máquina procesadora
de información capaz de transformar un
programa escrito en un lenguaje de alto nivel.
En un programa en lenguaje que el hardware pueda decodificar y ejecutar. La tarea de conversión de lenguaje de alto nivel a lenguaje de máquina la debe realizar un programa denominado compilador.
En principio el hardware de un sistema se puede estructurar en tres partes : la
Unidad Central de Proceso (CPU o UCP), la memoria principal, y los dispositivos de
entrada/salida. Todos estos elementos están conectados entre sí por los buses de
comunicaciones. La unidad de entrada es el dispositivo por donde se introducen en la
computadora los datos y las instrucciones. La unidad de salida de datos es un
dispositivo donde se obtienen los resultados de los programas ejecutados en la
computadora.



Memoria principal

La memoria es el componente responsable por el almacenamiento de los
datos e instrucciones que componen un programa. Se trata de un conjunto
finito de celdas del mismo tamaño, cada una identificada con una dirección, que
pueden almacenar datos o instrucciones de programa.

A la memoria de trabajo, donde es posible leer y escribir, se la conoce
con el nombre de memoria de acceso aleatorio (RAM). Su nombre deriva de que
es posible acceder directamente a cualquier lugar de ella. Existe un segundo
tipo de memoria, de solo lectura, denominada ROM; sobre la cual los
fabricantes graban programas y datos básicos para el funcionamiento de la
computadora.

La unidad básica de almacenamiento en una memoria es un bit.


Unidad Aritmético y Lógica.

La unidad aritmética y lógica es el componente encargado de
realizar las operaciones tanto aritméticas como lógicas derivadas de la
ejecución de un programa y es dirigida por la Unidad de Control.
Dispone de un conjunto de registros internos que la auxilian en la
tarea de cálculo. Tales registros se utilizan a los efectos de traer datos
de memoria y almacenar temporalmente resultados para luego copiarlos a
memoria. Luego se selecciona la operación y finalmente es resultado es
depositado en el registro ACC.

Unidad de Control.

Componente que controla el ciclo de procesamiento, coordinando
todas las actividades de la computadora. Cada vez que se requiere
ejecución de una instrucción, la UC reconoce la misma, carga los
operandos, ejecuta la instrucción y almacena los resultados. Posee, de
forma embutida o empotrada, el conjunto de instrucciones primitivas
(microinstrucciones) que el procesador es capaz de interpretar y
ejecutar (que normalmente es bastante reducido).
Las instrucciones primitivas pueden ser clasificadas en tres grupos:

• Transferencia de datos: Son instrucciones que se refieren a la transferencia de datos entre memoria central y los registros del procesador.

• Aritméticas y lógicas: Son aquellas instrucciones relacionadas con las operaciones aritméticas y lógicas. La
unidad de control utiliza la UAL para su realización.

• Instrucciones de control: Son las utilizadas para controlar
la ejecución de un programa y la transferencia de datos,
instrucciones y resultados.

A los efectos de comunicarse con los demás componentes la UC posee dos registros a saber:
• El registro de dirección de memoria (MAR) que contiene la
dirección de la posición de memoria a ser leída o escrita.
• El registro de datos de memoria (MDR) que contiene el dato a ser leído o escrito en memoria de trabajo.

Líneas de comunicación - Buses

Los periféricos de entrada/salida representan a los dispositivos que
permiten la comunicación con el exterior.
 A los efectos de interconectar
todos los módulos se implementa un cableado denominado sistema de bus.

Un sistema de bus está compuesto por el conjunto de caminos compartidos que permiten la interconexión de los distintos componentes:
UCP, memoria y periféricos de entrada/salida. Un bus está formado por un
conjunto de líneas eléctricas que permiten la transmisión de datos en
paralelo.

Hay tres tipos de buses:

• de datos: de forma bidireccional, fluyen los datos entre las distintas
partes de la computadora.

• de direcciones: por donde viajan las direcciones de memoria sobre las
cuales se quiere leer o escribir.

• de control: por donde viajan señales que controlan el acceso y el uso a
los buses de datos y de direcciones.

Señales de control pueden ser:

escribir en memoria, leer de memoria, escribir o leer en un dispositivo
de entrada/salida, etc.

Dispositivos de entrada/salida

Las operaciones de entrada/salida son las encargadas de controlar y
realizar el intercambio de información entre la computadora y el mundo
exterior.

Existen una gran variedad de dispositivos de entrada/salida, con características muy diferentes a las de la CPU. La velocidad de
transmisión de los periféricos es mucho menor que la velocidad de operación de una CPU, los periféricos poseen velocidades muy diferentes entre sí.

Los periféricos son los dispositivos que hacen posible el intercambio de información entre la computadora y el mundo exterior.
 Se clasifican en:
Unidades de entrada
Unidades de salida
Unidades de Entrada/Salida

 Periféricos de entrada.

Son los encargados de introducir los datos y los programas desde el exterior a la memoria principal para que puedan ser utilizados por la computadora. Además, transforman los datos introducidos en códigos binarios que pueden ser entendidos y procesados por la computadora.

Periféricos de salida.

Son los encargados proporcionar al exterior los datos de salida o resultados de los procesos que se realizan en la computadora.


Periféricos de entrada/salida.

A través de ellos se intercambia de información con la CPU en ambos
sentidos. Un subconjunto importante de estos corresponde a los dispositivos de almacenamiento.

Podemos distinguir entre periféricos locales y periféricos remotos, según su conexión a la computadora. Un periférico local, como el mouse, se encuentran cerca de la CPU conectado mediante cables que hacen las veces de
prolongador de los buses de la computadora. Para un periférico remoto, como una impresora láser, la conexión se realiza a través de una red de
comunicaciones.





FUENTE: MATERIAL DE LECTURA UNIDADES FUNCIONALES DE UNA COMPUTADORA, UNIDAD 3.

martes, 22 de agosto de 2017

Internet

¿Qué es la internet?

La internet  es  una Red de alcance mundial compuesta por redes de datos privados y públicas que se comunican entre sí, independientemente de Hardware y Software que utilizan, gracias al lenguaje estándar de comunicaciones denominadas juegos de protocolo tcp / IP.


Técnicamente es una "red de redes" de computadoras se forma por la integración en una única red de cobertura mundial de multitudes de redes de centros estables universidades empresas etcétera cada uno de estos organismo Busca el método más adecuado para conectar entre Sí existen diversos organismos internacionales encargados de ayudar al funcionamiento de estos servicios.
Desde el punto de vista de su función un proveedor de información y servicio. Determinados computadores determinados servicios conectados a internet ofrecen una gran variedad de datos a los que se acceden con programas específicos( editores de correo electrónico exploradores de páginas web). Además proporcionan nuevas formas de comunicación entre personas y grupo de personas.


¿ para qué sirve internet?


Una red que proporciona una serie de servicios cada uno de estos tiene que ver con la distribución e intercambio información y se implementa de varias maneras. Internet tiene infinidades de uso y de herramientas en el mundo en el que vivimos.  Internet es necesario para básicamente todo desde hacer tareas rutinarias mucho más sencillas. Hasta conectarse con otra persona que está al otro lado del mundo.
Existen muchas páginas de trascendencia mundial que las personas utilizan cotidianamente en Internet, Cómo lo es Facebook, Youtube, Twitter y otras páginas .


Clientes y servidores.

Un servidor es un programa que se ejecuta en una computadora con características especiales de memoria, potencia ,almacenamiento, etcétera. Que tiene por finalidad satisfacer requerimientos de programa denominados clientes que generalmente Residen en un computador remoto.
 Los clientes son programas que normalmente Ejecutan computadoras de usuario final que facilitan el acceso a los servidores se encarga de conectarse enviarles peticiones o requerimientos recoger la información que ellos ofrecen y presentarla de la forma más apta al usuario.
Los servidores presentan o provee en un determinado servicio mientras que los clientes son usuarios de tal prestación.

Sistemas de nombre de dominio (DNS)

A los efectos de simplificar El sistema de direcciones, las computadoras pueden tener asociado un nombre ( HTTP).
Los nombres de los equipos suelen incluir información sobre el país en el que se encuentran o bien si se trata de una organización educativa(edu),  militar(mil) de gobierno(gov) o comercial (com). Estos términos asociados a una dirección IP se conoce como "nombre de dominio".
Los programas normalmente utilizan cadenas alfanuméricas en vez de direcciones binarias de nivel de red. Pero la red entiende solamente las direcciones binarias Así que se necesita un método para traducir entre dos representaciones.
El dns utiliza el concepto de espacio de nombre de dominio distribuido. Los nombres se agrupan en zonas de autoridad o simplemente zona una o más equipos tienen asignada la función de mantener una base de datos de nombre y direcciones IP ,y por otro lado, de suministrar la función de servidor para sus clientes que desean traducir nombres de dirección IP.
Dale servidores DNS se interconectan lógicamente definiendo un árbitro jerárquico de dominio cada zona contiene una parte del árbol o subárbol y los nombres de estas zonas se administran con independencia de las otras zonas.
La autoridad sobre zonas se delega en los servidores de nombres.
Normalmente, los servidores de nombres que tienen autoridad en una zona
poseerán nombres de dominio de la misma, aunque no es imprescindible.
Cada dominio controla la asignación de los subdominios que dependen
de él directamente. Un dominio puede crear nuevos subdominios sin la
autorización de dominios superiores. Los nombres son basados en las
organizaciones, y no en las redes físicas.

FTP protocolo de trasferencia de archivos.

Su objetivo es permitir a los usuarios copiar archivos entre sistemas remotos. Como la mayoría de los servicios de internet FTP se basan los modelos cliente servidor. Utilizando un programa cliente que posibilite la conexión con un programa servidor que se encuentran en una computadora.


World wide web o simplemente web. 

Fue planeado como respuesta a la necesidad de la comunidad científica internacional tema de nuevos sistemas de distribución de información. En El año 1989, Tin Berners presentó la propuesta original que definía el espacio web. Consistía en que los recursos disponibles se encontrarán en forma electrónica que estaban almacenados en distintas computadoras conectadas a una red, fuesen accesibles para cada investigación.
Se propuso un método de transferencia de
archivos entre un computador servidor y un computador cliente, al protocolo lo
llamó HTTP (HyperText Transfer Protocol) .Por otro lado diseño un lenguaje
llamado HTML (HiperText Markup Language) destinado a describir la estructura  y el contenido de un documento.
Un explorador o navegador es el cliente del sistema web, proporciona  una interfase gráfica por la cual es fácil desplazarse para localizar documentos en Internet. Tales documentos, así como los vínculos existentes entre ellos, componen una red de información denominada espacio web.




Acerca del lenguaje HTML

Se basa en las ideas derivadas del proyecto
Xanadu donde su autor Nelson, en el año 1965, definió a hipertexto
como:

" por hipertexto entiendo escritura no secuencial. La escritura
tradicional es secuencial por dos razones. Primero se deriva del discurso
hablado, que es secuencial, y segundo, porque los libros están escritos
para leerse de forma secuencial (...) sin embargo, las escrituras de las
ideas no son secuenciales. Están interrelacionadas en múltiples
direcciones. Y cuando escribimos siempre tratamos de relacionar cosas
de forma no secuencial"
El lenguaje HTML es una herramienta que permite la definición de
estilos lógicos en documentos de hipertexto.

Estructura de un documento HTML

Todo documento HTML se dividen en dos partes a saber:
La cabecera del documento. Utilizada para brindar información resumen sobre el documento. Se define su título, autor,
palabras claves, es decir metadatos.
El cuerpo del documento: Es la parte principal del documento, donde se especifica el contenido a mostrar por el
explorador.



lunes, 21 de agosto de 2017

Redes de datos

Las redes de datos nos sirven para intercambiar información a través de computadoras conectadas. Éstas nos permiten acceder a recursos, como impresoras y/o plotters; son confiables y tiene una buena disponibilidad; los archivos de datos se guardan en servidores donde pueden acceder otros usuarios de la red, pueden trabajar a la vez varios usuarios en el mismo archivo, y además se actualizan los documentos en tiempo real gracias a un software, haciendo más sencilla la comunicación global. Se ofrecen ventajas para distribuir o acceder a paquetes de software estandarizados; también facilitan la comunicación entre usuarios mediante la utilización de sistemas de mensajería cuando se está en línea ó bien en tiempo diferido.
Las redes se clasifican en LAN (se compone de un grupo de computadoras conectadas unas con otras por algún medio físico, que, con algún software de redes, permite a las personas usar cada computadora para compartir información y recursos; es para distancias reducidas y velocidades superiores a 10Mbps, suelen ser privadas y administradas por sus dueños, además tienen baja tasa de error) y WAN (sistema de comunicación entre computadoras, que permite compartir información y recursos, la cobertura es amplia, su velocidad es inferior a 10Mbps, además su tasa de error es alta ). Internet se refiere a la infraestructura mundial de redes interconectadas bajo un juego de protocolos denominado TCP/IP y se encuentra dentro de las redes WAN ya que es de alcance global.
Un protocolo es un juego de reglas que determinan como se comunicarán las computadoras con cada una de las otras a través de una red subyacente; estos describen el formato y el significado de los mensajes a intercambiar, y la manera en la cual, los equipos, deben intercambiar tales mensajes utilizando una red como soporte de comunicaciones.
El modelo básico de una red consta de una fuente (es el dispositivo que genera los datos que luego serán transmitidos); un destino (es el dispositivo al que se le envían los datos); un transmisor (convierte los datos en señales que son inyectadas al sistema de transmisión) y por último un receptor (es el dispositivo destinatario de las señales enviadas).

Para la transmisión de datos hay que transformar los datos en energía (electromagnética o eléctrica) y transmitirla sobre un soporte llamado medio, con algunos requerimientos especiales de cada tipo de energía; esa energía la recibe el destino, la decodifica (con un hardware especial) y la transforma en datos. 

Fuente: Aula virtual, computación, unidad 5