Sistemas Operativos - Desarrollado-SOB

26
Definición de sistema informático. Hardware, Software y firmware Esquema de Von Newman. Esquema y funcionamiento del esquema de Von Newman. Un sistema es un grupo de elementos que se integran con el propósito común de lograr un objetivo. Concepto De Sistemas “El todo es más que la suma de las partes”. Y lo es porque las propiedades del todo se generan en el interjuego de relaciones de dichas partes. Sistema : conjunto de elementos que guardan estrechas relaciones entre sí, que mantienen al sistema directa o indirectamente unido de modo más o menos estable, que mantiene un flujo de relaciones con el ambiente, y cuyo comportamiento global persigue, normalmente, algún tipo de objetivo. Una organización como una compañía o un área funcional se ajusta a esta definición. La organización consiste en los recursos que identificamos antes. Los cuales colaboran hacia la consecución de objetivos específicos determinados por los dueños de la gerencia. Un sistema informático es aquel sistema que se encarga del manejo de información en la computadora, a través de la cual el usuario controla las operaciones que realiza el procesador. es uno o varios computadoras de los que dispone un sistema operativo Un sistema informático está compuesto por: o Hardware (computadoras) o Software (Programas) o Un usuario (quien provee los datos y obtiene los resultados) Hardware, Software y firmware Se denomina hardware o soporte físico al conjunto de elementos materiales que componen una computadora. En dicho conjunto se incluyen los dispositivos electrónicos y electromecánicos, circuitos, cables, tarjetas, armarios o cajas, periféricos de todo tipo y otros elementos físicos. El hardware se refiere a todos los componentes físicos (que se pueden tocar) de la computadora: discos, unidades de disco, monitor, teclado, mouse, impresora, placas, chips y demás periféricos. En cambio, el software es intocable, existe como ideas, conceptos, símbolos, pero no tiene sustancia. Una buena metáfora sería un libro: las páginas y la tinta son el hardware, mientras que las palabras, oraciones, párrafos y el significado del texto son el software. Una computadora sin software sería tan inútil como un libro con páginas en blanco. Software -también conocido como programática o equipamiento lógico- 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. Se trata del conjunto de instrucciones que permite la utilización de la computadora Probablemente la definición más formal de software es la atribuida a la IEEE 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 cómputo (Ver: IEEE Std 729-1993, IEEE Software

Transcript of Sistemas Operativos - Desarrollado-SOB

Page 1: Sistemas Operativos - Desarrollado-SOB

Definición de sistema informático. Hardware, Software y firmwareEsquema de Von Newman.Esquema y funcionamiento del esquema de Von Newman.

Un sistema es un grupo de elementos que se integran con el propósito común de lograr un objetivo.

Concepto De Sistemas

“El todo es más que la suma de las partes”. Y lo es porque las propiedades del todo se generan en el interjuego de relaciones de dichas partes.

Sistema: conjunto de elementos que guardan estrechas relaciones entre sí, que mantienen al sistema directa o indirectamente unido de modo más o menos estable, que mantiene un flujo de relaciones con el ambiente, y cuyo comportamiento global persigue, normalmente, algún tipo de objetivo.

Una organización como una compañía o un área funcional se ajusta a esta definición. La organización consiste en los recursos que identificamos antes. Los cuales colaboran hacia la consecución de objetivos específicos determinados por los dueños de la gerencia.

Un sistema informático es aquel sistema que se encarga del manejo de información en la computadora, a través de la cual el usuario controla las operaciones que realiza el procesador. es uno o varios computadoras de los que dispone un sistema operativoUn sistema informático está compuesto por:

o Hardware (computadoras)o Software (Programas)o Un usuario (quien provee los datos y obtiene los resultados)

Hardware, Software y firmware

Se denomina hardware o soporte físico al conjunto de elementos materiales que componen una computadora. En dicho conjunto se incluyen los dispositivos electrónicos y electromecánicos, circuitos, cables, tarjetas, armarios o cajas, periféricos de todo tipo y otros elementos físicos.

El hardware se refiere a todos los componentes físicos (que se pueden tocar) de la computadora: discos, unidades de disco, monitor, teclado, mouse, impresora, placas, chips y demás periféricos. En cambio, el software es intocable, existe como ideas, conceptos, símbolos, pero no tiene sustancia. Una buena metáfora sería un libro: las páginas y la tinta son el hardware, mientras que las palabras, oraciones, párrafos y el significado del texto son el software. Una computadora sin software sería tan inútil como un libro con páginas en blanco.

Software -también conocido como programática o equipamiento lógico- 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. Se trata del conjunto de instrucciones que permite la utilización de la computadora

Probablemente la definición más formal de software es la atribuida a la IEEE 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 cómputo (Ver: IEEE Std 729-1993, IEEE Software Engineering Standard 729-1993: Glossary of Software Engineering Terminology. IEEE Computer Society Press, 1993).

Bajo esta definición el concepto de software va más allá de los programas de cómputo en sus distintas formas: código fuente, binario o código ejecutable, además de su documentación.

El software se clasifica en dos categoría:1. Software de base o de sistema. Consistente en todo aquel software cuyo propósito es

facilitar la ejecución de otro software. Entran en esta categoría: Sistemas operativos. Compiladores. Sistemas gestores de bases de datos. Etc.

2. Software de aplicación. Consistente en aquel software que automatiza un sistema de información, es decir, con relevancia para un fin concreto. Entran en esta categoría:

Procesadores de texto. Hojas de cálculo. Etc.

Firmware o Programación en Firme, es un bloque de instrucciones de programa para propósitos específicos, grabado en una memoria tipo ROM, que establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo de cualquier tipo. Al estar integrado en la electrónica del dispositivo es en parte hardware, pero también es software, ya que proporciona lógica y se dispone en algún tipo de lenguaje de programación.

Funcionalmente, el firmware es el intermediario (interfaz) entre las órdenes externas que recibe el dispositivo y su electrónica, ya que es el encargado de controlar a ésta última para ejecutar correctamente dichas órdenes externas.

Page 2: Sistemas Operativos - Desarrollado-SOB

Encontramos Firmware en memorias ROM de los sistemas de diversos dispositivos periféricos, como en monitores de video, unidades de disco, impresoras, etc., pero también en los propios microprocesadores, chips de memoria principal y en general en cualquier circuito integrado.

El programa BIOS de un computadora es un firmware cuyo propósito es activar una máquina desde su encendido y preparar el entorno para la instalación de un Sistema Operativo complejo, así como responder a otros eventos externos (botones de pulsación humana) y al intercambio de órdenes entre distintos componentes del computadora.

Esquema de Von Newman.Esquema y funcionamiento del esquema de Von Newman.

Cuando hablamos de la máquina de Von Newman, no nos referimos a ninguna máquina que este señor haya construido, sino a una idea, un “modelo conceptual” que Von Newmann pensó como “herramienta de partida” para diseñar computadoras.

La máquina de Von Newmann se refiere a las arquitecturas de computadoras que utilizan el mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos.

Las computadoras con arquitectura Von Newmann constan de cinco partes: La unidad aritmético-lógica o ALU, la unidad de control, la memoria, un dispositivo de entrada/salida y el bus de datos que proporciona un medio de transporte de los datos entre las distintas partes.

Realicemos a continuación una descripción de lo que se entiende por cada una de estas partes y cómo están relacionadas entre si:

o La Unidad Central de Proceso (CPU) viene a ser el cerebro de la computadora y tiene por misión efectuar las operaciones aritmético-lógicas y controlar las transferencias de información a realizar.

o Una Memoria Interna (MI) contiene el conjunto de instrucciones que ejecuta la CPU en el transcurso de un programa. Es también donde se almacenan temporalmente las variables del mismo, todos los datos que se precisan y todos los resultados que devuelve.

o Unidades de entrada y salida (E/S) o Input/Output (I/O): son las encargadas de la comunicación de la máquina con el exterior, proporcionando al operador una forma de introducir a la computadora tanto los programas como los datos y obtener los resultados.

o Buses: Esas tres partes principales de que consta la computadora deben estar íntimamente conectadas; aparece en este momento el concepto de bus: el bus es un conjunto de líneas que enlazan los distintos componentes de la computadora, por ellas se realiza la transferencia de datos entre todos sus elementos.

     Se distinguen tres tipos de bus:De control: forman parte de él las líneas que seleccionan desde dónde y hacia dónde va dirigida la información, también las que marcan la secuencia de los pasos a seguir para dicha transferencia.De datos: por él, de forma bidireccional, fluyen los datos entre las distintas partes del computadora.De direcciones: como vimos, la memoria está dividida en pequeñas unidades de almacenamiento que contienen las instrucciones del programa y los datos. El bus de direcciones consta de un conjunto de líneas que permite seleccionar de qué posición de la memoria se quiere leer su contenido. También direcciona los puertos de E/S.

La forma de operar del computadora en su conjunto es direccionar una posición de la memoria en busca de una instrucción mediante el bus de direcciones, llevar la instrucción a la unidad central de proceso -CPU- por medio del bus de datos, marcando la secuencia de la transferencia el bus de control. En la CPU la instrucción se decodifica, interpretando qué operandos necesita: si son de memoria, es necesario llevarles a la CPU; una vez que la operación es realizada, si es preciso se devuelve el resultado a la memoria.

CPU

Page 3: Sistemas Operativos - Desarrollado-SOB

Una computadora con arquitectura de Von Newmann realiza los siguientes pasos secuencialmente:1. Obtiene una instrucción de la memoria RAM en la dirección indicada por el contador de

programa y la guarda en el registro de instrucción. 2. Aumenta el contador de programa, de modo que apunte a la instrucción siguiente. 3. La Unidad de Control decodifica la instrucción.4. Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del programa, permitiendo así

operaciones repetitivas. 5. Vuelve al paso 1. Hoy en día, la mayoría de las computadoras están basadas en esta arquitectura.

En los primeros tiempos de las computadoras, con sistemas de numeración decimal, una electrónica sumamente complicada muy susceptible a fallos y un sistema de programación cableado o mediante fichas, Von Newmann propuso dos conceptos básicos que revolucionarían la incipiente informática:b) La utilización del sistema de numeración binario. Simplificaba enormemente los problemas que

la implementación electrónica de las operaciones y funciones lógicas planteaban, a la vez proporcionaba una mayor inmunidad a los fallos (electrónica digital).

c) Almacenamiento de la secuencia de instrucciones de que consta el programa en una memoria interna, fácilmente accesible, junto con los datos. De esta forma la velocidad de proceso experimenta un considerable incremento.

El procesador CentralLa unidad aritmética Lógica- La unidad de control - ¿Qué son los registros?Subsitema de entrada y salida. Buses .La memoria principal.- Memoria Ram. Estructura y funcionamiento. ¿Qué es un buffer?Direcciones de memoria.- Bytes. Unidades de memoria.La memoria Rom.La memoria Caché

La CPU o el procesador Central

El procesador es todo un mundo en sí mismo;  aunque los primeros eran comparativamente simples, actualmente han alcanzado una notable complejidad.  Su tecnología física ha avanzado paralelamente con la de construcción de circuitos integrados, lo que ha significado unas dimensiones físicas cada vez más pequeñas y un menor consumo.

Componentes principales.De forma esquemática podemos suponer que un procesador se compone de cinco elementos:

1) Memoria Interna (Registros)2) Unidad Artimético-Lógica ALU ("Arithmetic and Logic Unit") 3) Unidad de Control CU ("Control Unit") 4) Bus interno

1. Los registros o memoria internaEl procesador necesita para su funcionamiento de ciertas áreas de almacenamiento, que aquí se

llaman registros, y que son de dimensiones mínimas. Tienen la ventaja de su rapidez. Comparados con la RAM, los registros son como mínimo 10 veces más veloces. Pueden clasificarse en: Registros de uso general Registros de segmento: Utilizándolos en conjunto con otros registros que señalan las direcciones

concretas dentro de estos segmentos, permiten manejar la totalidad de la memoria Registros de puntero: Son 5 registros destinados a contener direcciones. Registro de estado: Existe un registro especial, el registro de estado (FLAG), en el que 9 de los 18

bits actúan como semáforos (indicadores del estado del procesador y del resultado de determinadas operaciones). 

2. Unidad Aritmético-lógicaComo su propio nombre indica, la unidad Aritmético-Lógica ALU ("Arithmetic and Logic

Unit"), es responsable de realizar ciertas operaciones aritméticas y lógicas.Por su parte, la unidad lógica es la responsable de realizar operaciones lógicas como AND, OR, XOR, etc

Reg

istr

os

ALU

Unidad de Control

Page 4: Sistemas Operativos - Desarrollado-SOB

El conjunto de operaciones necesarias para que se complete

cada instrucción de lenguaje-máquina se conoce como

microcódigo.

3. Unidad de ControlLa Unidad de Control CU ("Control Unit") funciona como árbitro del funcionamiento del

procesador.  Se encarga de coordinar que todos los elementos funcionen de forma armónica.Para la ejecución de una instrucción de lenguaje máquina se requieren una serie de operaciones elementales y de sucesos físicos en los diversos componentes del procesador. 

Podríamos poner un ejemplo: El procesador es un submarino en inmersión y el comandante da la orden de emerger.  Esto requiere una serie de operaciones;  los tripulantes deben abrir unas válvulas, cerrar otras; orientar el timón de profundidad; ajustar la velocidad, etc. etc.  En el procesador, la operación MOV AX, BX (mover el contenido del registro BX a AX), requiere también la operación de una serie de válvulas (aquí se llaman puertas lógicas) en un orden determinado.  Es un programa firmware y suele comenzar con las maniobras necesarias para traer la próxima instrucción (señalada por el contador de programa IP), a un módulo de la CU denominado decodificador de instrucciones.  La Unidad de Control, responsable de que todas estas operaciones se ejecuten correctamente.

4. El bus internoLos diversos elementos de un microprocesador están interconectados de forma muy compleja.

El Bus interno o de control: Comunica los componentes del microprocesador: Las señales se encargan de activar y desactivar las unidades periféricas con las que se ha de trabajar en cada momento.   Existen otros buses que comunican el procesador con el exterior, es decir, con la memoria.Para localizar una información correcta en la memoria la CPU envía la dirección de la información a la memoria por el bus de direcciones.La información que llega a la CPU desde la memoria, o que llegue a la memoria desde la CPU(caso de que haya que escribir esa información en la memoria), viaja por el bus de datos. Entonces tenemos además:

Bus de direcciones. Es por donde el microprocesador selecciona cada una de las secciones de memoria y con ello el componente con quien quiere comunicarse(cada componente tiene asignada una dirección determinada).  

Bus de datos: Transporta la información que el microprocesador intercambia con el exterior. Los bits que se transportan por el bus leen y escriben a través de la memoria.

Bits y Bytes

(De Wikipedia) Bit es el acrónimo de Binary digit. (dígito binario). Un bit es un dígito del sistema de numeración binario. Mientras que en el sistema de numeración decimal se usan diez dígitos, en el binario se usan sólo dos dígitos, el 0 y el 1. Un bit o dígito binario puede representar uno de esos dos valores, 0 ó 1.

Podemos imaginarnos un bit como una bombilla que puede estar en uno de los siguientes dos estados:

apagada o encendida El bit es la unidad mínima de información empleada en informática. Con él, podemos representar

dos valores cualquiera, como verdadero o falso, abierto o cerrado. Basta con asignar uno de esos valores al estado de "apagado" (0), y el otro al estado de "encendido" (1).

Con un bit podemos representar solamente dos valores. Para representar o codificar más información en un dispositivo digital, necesitamos una mayor cantidad de bits. Si usamos dos bits, tendremos cuatro combinaciones posibles:

0 0 - los dos están "apagados" 0 1 - el primero (de derecha a izquierda) está "encendido" y el segundo "apagado" 1 0 - el primero (de derecha a izquierda) está "apagado" y el segundo "encendido" 1 1 - los dos están "encendidos"

A través de secuencias de bits, se puede codificar cualquier valor discreto como números, palabras, e imágenes.Ocho bits forman un octeto, y se pueden representar hasta 28 = 256 valores diferentes. Hoy en día, en la inmensa mayoría de los computadores, y en la mayoría de los campos, un byte tiene 8 bits, y con un byte se representa un carácter.

Unidades de medida de información:

La cantidad de Bytes que se pueden almacenar en la memoria de una computadora es bastante elevada y por ello se utilizan prefijos, así 1 KiloByte o KB corresponde a 210 = 1024 Bytes (y no 1000 KB), 1 MegaByte o MB = 1024 KB, 1 GigaByte o GB = 1024 MB, 1 TeraByte o TB = 1024 GB.

La Memoria:

La Memoria Principal está formada por circuitos integrados (chips), en ellos la información se almacena en estados de tensión (+5 V) al que hacemos corresponder un uno, y no tensión (0 V) al que le corresponde un cero, por tanto el sistema de almacenamiento sólo posee dos posibles valores y por ello se

Page 5: Sistemas Operativos - Desarrollado-SOB

denomina binario. Ésta es por lo tanto la menor cantidad de información que podemos almacenar en una computadora, y se denomina bit (o cero o uno), y al conjunto de ocho bits se le denomina Byte u Octeto. Podemos imaginar la memoria como un conjunto de casillas, cada una con una dirección que la identifica, donde se almacenan los datos y las instrucciones correspondientes a los programas. Para conocer la ubicación de cada dato estas casillas deben estar convenientemente numeradas, es lo que se denomina dirección de memoria. En cada casilla podremos almacenar una determinada cantidad de bits según la computadora, 8bits (1 Byte), 16 bits, 32 bits,.. .El número de bits que almacena una computadora en cada casilla de la memoria y que puede manipular en cada ciclo se la denomina longitud de palabra ("word" en inglés). La siguiente tabla muestra, a modo de ejemplo, varias posiciones de memoria en una computadora cuya longitud de palabra es de 8 bits, por tanto en cada dirección de memoria se almacena 1 Byte.

Dirección de memoria Dato almacenado0 = 00000000 010110101 = 00000001 010011002 = 00000010 110110013 = 00000011 001011104 = 00000100 10001101

Etc etc

La memoria se comunica con el resto de la CPU mediante unos canales denominados "Buses". Según cual sea la amplitud del bus de direcciones y la longitud de palabra, así será el tamaño de la memoria que puede gestionar la computadora. Es decir, el número de casillas o direcciones de memoria que pueden ser indicadas y el tamaño de la información que contienen. Para un bus de direcciones de 8 bits la computadora podrá gestionar 28 = 256 posiciones de memoria y en cada una de ellas podremos almacenar 8 bits si esta es la longitud de palabra de ese computadora.

La siguiente figura muestra la memoria de una computadora con una longitud de palabra de 8 bits y un bus de direcciones también de 8 bits. Deberían existir 28 = 256 casillas - desde la 00000000 hasta la 11111111 (en lenguaje binario), cada una conteniendo un dato de 8 bits de tamaño , en total 256 x 8 = 2048 bits o 256 Bytes. Los datos contenidos en las casillas de memoria no tienen evidentemente ninguna relación con la dirección de estas, ya que van variando conforme se ejecuta el programa o se producen entradas de nuevos datos.

Además, la memoria RAM dispone de áreas especiales denominadas buffer. Un buffer es una ubicación de la memoria en una computadora o en un instrumento digital reservada para el almacenamiento temporal de información digital, mientras que está esperando ser procesada. Por ejemplo, una impresora tendrá uno o varios bufers de salida, donde se guardan las palabras digitales que representan serán impresas.

La memoria ROMLa otra parte de la memoria se denomina ROM (Read Only Memory, Memoria de Solo Lectura),

en la que se encuentran el test de fiabilidad de la computadora (POST: Power on Self Test), las rutinas de inicialización y arranque, y la BIOS que proporciona los servicios fundamentales para que la computadora sea operativo, en su mayor parte controla periféricos de la computadora como la pantalla, el teclado y las unidades de disco. El término Memoria de Solo Lectura, significa que esta memoria no puede ser modificada y aun cuando apaguemos la computadora la información permanecerá inalterada en la ROM.

Existe otra porción de memoria denominada CMOS que contiene datos básicos de éste, como pueden ser el número de unidades de disquetes y su tipo, de discos duros y su tipo, la fecha, la hora y otros datos respecto al comportamiento fundamental de la computadora. Esta memoria no es de tipo permanente, ya que podemos variar la configuración de nuestro equipo y para ser mantenida necesita de la tensión que le suministra una pequeña pila o batería.

Memoria CachéEs un tipo especial de memoria que poseen las computadoras. Esta memoria se sitúa entre el

(micro)procesador y la memoria RAM y se utiliza para almacenar datos que se utilizan frecuentemente. Permite agilizar la transmisión de datos entre el microprocesador y la memoria principal. Es de acceso directo y funciona de una manera similar a como lo hace la memoria principal (RAM) pero es mucho más rápida que la RAM. Además, funciona almacenando los últimos elementos utilizados por el microprocesador (o los utilizados más frecuentemente).

Page 6: Sistemas Operativos - Desarrollado-SOB

Archivo - ConceptoQué es el software. Clasificación. Programas y archivos.Concepto de programa.¿Qué es un lenguaje de programación?Lenguajes de alto y bajo nivel.Lenguajes compilados e interpretados.

Archivos - Concepto

La información que utiliza el usuario necesita ser grabada en un medio magnético. Si el texto que se está confeccionando (y que actualmente está en la memoria) no se graba, se perderá al apagarse el equipo. La información almacenada constituye un archivo.

Entendemos por archivo cualquier conjunto de datos que puedan ser almacenados con un nombre y una extensión en un medio de almacenamiento masivo (disco, CD, etc.)

Dicho conjunto de datos puede ser: Un texto Un programa Una planilla de cálculo Un dibujo o una foto Una secuencia de video Música

Debe considerarse:Nombre del archivo: Se coloca en el momento de grabarlo. Normalmente el nombre se lo pone el usuario. El sistema DOS permitía nombres de archivos de solo 8 caracteres, sin espacios ni caracteres especiales intermedios (por ejemplo puntos o comas). A partir de Windows 95 se permite una estructura llamada nombre de archivo largo, de hasta 255 caracteres, con espacios intermedios.

Si se utiliza el sistema de 8 caracteres, el nombre de archivo debe ser nemotécnico. Es frecuente que un usuario comience a poner a sus producciones "Jorge1", "Jorge2", etc. y luego no recuerde de qué se trataba el archivo en cuestión.Extensión: Es un conjunto de tres letras que se coloca a continuación del nombre, separada por un punto. La extensión informa al usuario y a la computadora de qué archivo se trata. Es como la marca de fábrica o el apellido de un archivo.

De esta manera, la extensión .DOC indicará un documento de Word, .EXE será un programa, .BMP es un gráfico, etc. Cada software graba los archivos con una extensión característica.Tamaño: Es la cantidad de bytes que ocupa el archivo.Atributos: Son las propiedades que asigna el usuario a un archivo. Existen cuatro atributos: Modificable, Oculto, de Solo Lectura o de Sistema. Un archivo puede tener más de un atributo.Fecha y hora: Indican la última actualización del archivo.

Tipos de archivos: Si bien a determinados archivos se los identifica por el ícono que Windows les asigna, en realidad los distintos archivos de un sistema se identifican por su "extensión". Esta extensión es un grupo de tres letras que sigue al nombre propiamente dicho del archivo:

Cómo ver las extensiones: En cualquier ventana (Mi PC, Disco de 3y1/2, etc...) vamos a VER OPCIONES DE CARPETA

Y en la solapa “VER”, desmarcar la opción “Ocultar extensiones para tipos de archivos conocidos”. Entonces podremos ver todas las extensiones.Cada extensión significa un tipo particular de archivo. Las más comunes son:

Extensión Tipo de archivo.COM, .EXE Programas. Son aplicaciones. Si hacemos un doble click sobre los mismos,

seguramente se abrirá un programa..DOC Documentos, es decir, textos de Word u otro procesador.

Textos con .MDB Archivo de base de datos (Access).XLS Planillas de cálculo de Excel..BMP, .JPG, .PCX, .DIB, .GIF .WMF(hay más)

Son archivos de imagen. Cada uno puede abrirse con un tipo particular de graficador. Hay graficadores que manejan todos los formatos.

.TXT Archivo de “texto plano”, es decir sin ningun tipo de “adorno”. Son textos base.

.PPT - .PPS Presentación de Power Point

.MP3, .WAV, .MID Archivos de música.

.OBJ., VDX, etc. Archivos auxiliares de las aplicaciones. Son sumamente importantes y no puedo borrarlos porque sí.

DLL Biblioteca de enlace (Dinamic Link Library), exclusivas de Win y de sus aplicaciones. Se trata de los archivos que relacionan Windows con sus aplicaciones y los recursos comunes del sistema.

Page 7: Sistemas Operativos - Desarrollado-SOB

.INI Archivos de inicio: Contienen las especificaciones que Windows debe seguir. Son archivos de texto, que se autoconfiguran. No conviene modificarlos

TMP Archivos temporarios. Se crean mientras usamos Windows y al salir, se borran. Cuando se apaga la computadora, estando en Windows, una de las consecuencias es tener un montón de archivos temporales que no han sido borrados.

FON, FOT, TTF, etc. Tipos de letras. TTF significa True Type FontDIC, LEX Diccionarios que utiliza el corrector ortográfico de Word o Excel.

Qué es el Software

El Software 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. Se trata del conjunto de instrucciones que permite la utilización de la computadora.

El software puede clasificarse por: Forma de distribución. Tipo de trabajo realizado

Por forma de distribución: Freeware : Software gratuito, que se distribuye libremente. Software de dominio público: se ofrece sin costo alguno, pero que no tiene propietario, sino que

obedece a norma GNU Enlatados o software propietario : el software desarrollado por compañías y vendido

principalmente por distribuidores, que necesita una licencia para ser legal.

Por tipo de trabajo realizado: Se clasifican en: Sistemas operativos o software de base:

También llamado software del sistema, controlan los trabajos del computadora o computadora, y sirven como plataforma para el software de aplicaci{on. Por lo tanto, el software del sistema procesa tareas tan esenciales, aunque a menudo invisibles, como el mantenimiento de los archivos del disco y la administración de la pantalla

Software de aplicación: Es un programa informático diseñado para facilitar al usuario la realización de un determinado tipo

de trabajo. Ciertas aplicaciones desarrolladas 'a medida' suelen ofrecer una gran potencia ya que están exclusivamente diseñadas para resolver un problema específico. Otros, llamados paquetes integrados de software, ofrecen menos potencia pero a cambio incluyen varias aplicaciones, como un programa procesador de textos, de hoja de cálculo y de base de datos.Software de programación:

(Lenguajes) son lenguajes artificiales que pueden utilizarse para definir una secuencia de instrucciones para su procesamiento por un computadora o computadora.

Los lenguajes pueden clasificarse en alto y bajo nivel.Los lenguajes de bajo nivel son los más cercanos a la computadora. Esto significa que por cada

instrucción de este tipo de lenguaje, implica uno o pocos pasos del microprocesador.Los de alto nivel están orientados al programador. Es decir, cada instrucción implica varios cientos

de pasos del microprocesador. Se componen por un vocabulario (conjunto de palabras reservadas) generalmente en ingles, y un conjunto de reglas de sintaxis. De esta clase son el C y el Visual Basic.

Los lenguajes de bajo nivel permiten crear programas muy rápidos, pero que son a menudo difíciles de aprender. Más importante es el hecho de que los programas escritos en un bajo nivel son prácticamente específicos para cada procesador. Si se quiere ejecutar el programa en otra máquina con otra tecnología, será necesario reescribir el programa desde el principio.

Un programa escrito en un lenguaje de programación de alto nivel, necesita pasar por un proceso de compilación, es decir, ser traducido al lenguaje de máquina, o ser interpretado para que pueda ser ejecutado por la computadora.

Page 8: Sistemas Operativos - Desarrollado-SOB

Sistema Operativo. Concepto.Funciones principales..Arquitectura básica.Características de un sistema operativoUtilización conjunta de recursos.Características deseables (eficiencia, fiabilidad, facilidad de corrección, tamaño pequeño.

Sistemas operativos

Los Sistemas Operativos son conjuntos de programas que, se cargan automáticamente al encenderse la computadora, y que permiten que la persona (usuario), se pueda comunicar con la misma.

Es el software básico que controla una computadora. Tiene tres grandes funciones: 1) Coordina y manipula el hardware del computadora o computadora, como la memoria, las

impresoras, las unidades de disco, el teclado o el mouse; 2) Organiza los archivos en diversos dispositivos de almacenamiento, como discos flexibles, discos

duros, discos compactos o cintas magnéticas3) Gestiona los errores de hardware y la pérdida de datos.

Los sistemas operativos controlan diferentes procesos de la computadora. Un proceso importante es la interpretación de los comandos que permiten al usuario comunicarse con el computadora. Algunos intérpretes de instrucciones están basados en texto y exigen que las instrucciones sean tecleadas. Otros están basados en gráficos, y permiten al usuario comunicarse señalando y haciendo clic en un icono. Un sistema operativo que se opera mediante el uso de imágenes y símbolos en vez de palabras se denomina interfaz gráfica para el usuario, o GUI (Graphic User Interface).

Por otra parte, los sistemas operativos pueden ser: De tarea única o multitarea: Los sistemas

operativos de tarea única, más primitivos, sólo pueden manejar un proceso en cada momento. Por ejemplo, cuando la computadora está imprimiendo un documento, no puede iniciar otro proceso ni responder a nuevas instrucciones hasta que se termine la impresión. Todos los sistemas operativos modernos son multitarea y pueden ejecutar varios procesos simultáneamente (multiproceso).

Por otra parte, todo sistema operativo tiene dos partes:

Sistema o motor de arranque

Comandos

El motor de arranque de la computadora consta, a su vez, de dos partes: los archivos de inicio y el intérprete de comandos. Depende del sistema operativo que se trate, estos archivos tendrán diferente nombre.

Funciones principalesLas dos funciones primordiales de un S.O. son las siguientes: _

1) Utilización Compartida de recursos2) Constitución de una máquina virtual

1) En este punto es importante saber que un sistema operativo debe lograr que se comprartan los recursos de un computador entre un cierto número de usuarios que trabajan en forma simultánea, Esto es importante ya que desde esta forma se busca incrementar la disponibilidad del computador con respecto a estos usuarios y al mismo tiempo, maximizar la utilización de recursos tales como procesador central, memoria y dispositivos de E/S.

2) La segunda función de un Sistema operativo es la de transformar un cierto hardware en una máquina que sea fácil de usar. Esto es equivalente a colocar frente al usuario una máquina virtual cuyas características sean distintas y más fáciles de manejar que la máquina real subyacente.

Son los archivos que permiten que arranque la computadora. Sin estos archivos la máquina no puede arrancar. Es por eso que están muy bien protegidos.

Permiten que los usuarios puedan hacer otras cosas: Instalar programas nuevos, formatear diskettes, crear archivos, etc. Si esos comandos no están, la computadora enciende lo mismo, pero hay un montón de cosas que se podrán hacer

Un sistema operativo multitarea crea la ilusión de que varios procesos se ejecutan simultáneamente en la UCP. El mecanismo que se emplea más a menudo para lograr esta ilusión es la multitarea por segmentación de tiempos, en la que cada proceso se ejecuta individualmente durante un periodo de tiempo determinado. Si el proceso no finaliza en el tiempo asignado, se suspende y se ejecuta otro proceso. Los procesos parecen efectuarse simultáneamente por la alta velocidad.

Page 9: Sistemas Operativos - Desarrollado-SOB

Un ejemplo concreto y muy conocido es aquel en el cual la máquina virtual difiere de la real, es en el campo de la Entrada/Salida, ya que el hardware básico es muy difícil de manejar por el usuario y requiere de sofisticadas rutinas. El SO deberá entonces, evitarle al usuario el problema de tener que comprender el funcionamiento de este hardware poniendo a su alcance una máquina virtual mucho más sencilla pero con las mismas posibilidades de E/S.

Funciones de un sistema Operativo:

Los sistemas operativos tienen que llevar a cabo por lo menos las siguientes tareas: 1) Secuenciar las tareas: es decir, llevar un cierto orden respecto de los diferentes trabajos que debe

realizar.2) Interpretar un lenguaje de control. Debe comprender los distintos tipos de órdenes.3) Administrar errores: Debe tomar adecuadas decisiones, según los erroresw que se produzcan,

como permitir la intervención de un operador externo.4) Administrar las interrupciones: Debe interpretar las interrupciones que se produzcan y darles

curso, como por ejemplo, la pulsación de una tecla.5) Scheduling: Administrar equitativamente el recurso de microprocesador entre las diferentes

tareas.6) Controlar los recursos existentes: Llevar la cuenta del estado en que se encuentran los recursos y

las funciones que realizan en cada momento.7) Proteger la información de los usuarios y asegurar la integridad de los datos.8) Permitir el procesamiento interactivo.9) Ser fácil de operar.10) Llevar el control de los recursos del sistema.

Características deseables:1) Eficiencia: La eficiencia de un S.O. es muy imnportante y se pueden establecer algunos

parámetros para medirla: - Tiempo transcurrido entre las tareas- Tiempo ocioso de procesador.- Tiempo de respuesta del sistema a un estímulo externo.- Utilización de los recursos- Rendimiento.

2) Fiabilidad: Teóricamente un S.O. debe estar libre de errores y debe ser capaz de satisfacer todas las contingencias que pueden presentarse. En la práctica ello nunca ocurre, aunque se han logrado notables avances.

3) Facilidad de corrección: Debería ser posible corregir o mejorar un SO sin hacer uso de un ejercito de programadores, esto se puede lograr si el sistema es modular y existen interfaces claramente definidas entre los módulos.La idea es la tendencia hacia los sistemas abiertos, es decir, sistemas a los cuales es fácil

agregarle módulos específicos.

4) Tamaño pequeño: El espacio que consume en la memoria debe ser pequeño. Si el sistema ocupa un gran espacio en memoria, resta memoria de usuario. Además, un sistema grande está más sujeto a errores..

Diferencia entre programa, proceso y procesador.Comunicación entre procesos: Abrazo mortal, sincronización, exclusión mutua.

Procesos

Una parte importante del trabajo con sistemas operativos, es la administración de procesos.

¿Qué es un proceso?

Un proceso es un programa en ejecución. La diferencia entre un programa y un proceso es que un proceso es una actividad de cierto tipo que contiene un programa, entradas salidas y estados. Un proceso es una actividad que se apoya en datos, recursos, un estado en cada momento y un programa.Consideremos un sistema operativo como un conjunto de actividades. Cada una de esas actividades consiste en la ejecución de uno o más programas que se ejecutarán toda vez que se requiera tal función.

Esto es un proceso.Un programa es una entidad pasiva, mientras que un proceso es una entidad activa.Un proceso puede involucrar la ejecución de más de un programa., Recíprocamente un

determinado programa o rutina pueden estar involucrados en más de un proceso.Un proceso es llevado a cabo por quien lo ejecuta, es decir, por una máquina o procesador.En síntesis: un proceso es una secuencia de acciones que emplean recursos, por lo tanto, dinámico.

En cambio, un programa es una secuencia de instrucciones, y por lo tanto, estático.

Concurrencia y no determinismo:

Page 10: Sistemas Operativos - Desarrollado-SOB

La concurrencia es la activación de varios procesos a la vez. Suponiendo que haya tantos procesadores como procesos, la cuestión no reviste mayor importancia, ya que cada proceso se asigna a un procesador. El tema es que generalmente hay un procesador, que ejecuta todos los procesos. En este caso se puede lograr una concurrencia aparente, haciendo que el procesador le dedique un tiempo a cada proceso (conmutación). Si esto se hace lo suficientemente rápido el sistema aparentará una concurrencia.

El no-determinismo puede interpretarse en el sentido de que es imposible prever en qué momento se va a disparar un proceso, es decir, habrá una interrupción. Con el fin de que estas interrupciones no alteren la conmutación de procesos, es necesario que el sistema guarde suficiente información del estado de cada proceso, para retomarlo más tarde.

Los estados de los procesos se pueden dividir en dos tipos: activos e inactivos.1.- Estados activos: Son aquellos que compiten con el procesador o están en condiciones de hacerlo. Se dividen en:

Ejecución. Estado en el que se encuentra un proceso cuando tiene el control del procesador. En un sistema monoprocesador este estado sólo lo puede tener un proceso.Preparado. Aquellos procesos que están dispuestos para ser ejecutados, pero no están en ejecución por alguna causa (Interrupción, haber entrado en cola estando otro proceso en ejecución, etc.).Bloqueado. Son los procesos que no pueden ejecutarse de momento por necesitar algún recurso no disponible (generalmente recursos de entrada/salida).

2.- Estados inactivos: Son aquellos que no pueden competir por el procesador, pero que pueden volver a hacerlo por medio de ciertas operaciones. En estos estados se mantiene el bloque de control de proceso aparcado hasta que vuelva a ser activado. Se trata de procesos que no han terminado su trabajo que lo han impedido y que pueden volver a activarse desde el punto en que se quedaron sin que tengan que volver a ejecutarse desde el principio.

Operaciones sobre procesos.

Uno de los módulos más importantes de un sistema operativo es la de administrar los procesos y tareas del sistema de cómputo. Planificación del procesador

La planificación del procesador se refiere a la manera o técnicas que se usan para decidir cuánto tiempo de ejecución y cuando se le asignan a cada proceso del sistema. Obviamente, si el sistema es monousuario y monotarea no hay mucho que decidir, pero en el resto de los sistemas esto es crucial para el buen funcionamiento del sistema.

Para asignar el turno de ejecución, se recurre a diferentes estrategias: Por prioridad: Los procesos de mayor prioridad se ejecutan primero. Si existen varios procesos

de mayor prioridad que otros, pero entre ellos con la misma prioridad, pueden ejecutarse estos de acuerdo a su orden de llegada o por 'round robin'.

El trabajo más corto primero: Es difícil de llevar a cabo porque se requiere saber o tener una estimación de cuánto tiempo necesita el proceso para terminar.

El primero en llegar, primero en ejecutarse: Es muy simple, los procesos reciben su turno conforme llegan.

Round Robin: También llamada por turno, consiste en darle a cada proceso un intervalo de tiempo de ejecución (llamado time slice), y cada vez que se vence ese intervalo se copia el contexto del proceso a un lugar seguro y se le da su turno a otro proceso.

El tiempo restante más corto: Es parecido al del trabajo más corto primero, pero aquí se está calculando en todo momento cuánto tiempo le resta para terminar a todos los procesos, incluyendo los nuevos, y aquel que le quede menos tiempo para finalizar es escogido para ejecutarse.

Y que pasa cuando los procesos compiten? En los sistemas de tiempo compartido (aquellos con varios usuarios, procesos, tareas, trabajos que

reparten el uso de CPU entre estos) se presentan muchos problemas debido a que los procesos compiten por los recursos del sistema. Esta competencia puede dividirse en:

1. Exclusión mutua : Los recursos de un sistema pueden ser compartidos (estar siendo utilizados por varios procesos) o no-compartidos (cuando es imposible que dos procesos lo utilicen simultáneamente, como por ejemplo, la grabación en disco). La exclusión mutua debe asegurar que esos recursos sean accedidos por un solo proceso a la vez.

2. Sincronización: En términos generales la velocidad de ejecución de un proceso es impredecible ya que depende de la frecuencia de las interrupciones asociadas. Sin embargo, existen instantes donde los procesos deben sincronizar sus actividades. En Estos puntos un proceso no puede continuar hasta tanto no se halla completado alguna otra actividad. El sistema Operativo debe proveer mecanismos que permitan llevar a cabo esta sincronización.

3. Abrazo Mortal: Cuando varios procesos compiten por los recursos es posible que se dé una situación en la cual ninguno de los puede proseguir debido a que los recursos que necesita están ocupados por otro procesos. Esta situación de bloqueo permanente se denomina deadlock.

Page 11: Sistemas Operativos - Desarrollado-SOB

Los problemas descritos son todos importantes para el sistema operativo, ya que debe ser capaz de prevenir o corregirlos. Tal vez el problema más serio que se puede presentar en un ambiente de concurrencia es el 'abrazo mortal'. Si el deadlock involucra a todos los procesos del sistema, el sistema ya no podrá hacer algo productivo. Si el deadlock involucra algunos procesos, éstos quedarán congelados para siempre. Una vez que un deadlock se detecta, es obvio que el sistema está en problemas y lo único que resta por hacer es una de dos cosas: tener algún mecanismo de suspensión o reanudación que permita reiniciar/reanudar un proceso incluyendo valores de memoria y aspecto de los periféricos que esté usando para reanudarlo otro día, o simplemente eliminarlo un proceso.

Arquitectura de un S.O.Device drivers.Kernel, controladores, shell.

El Núcleo del Sistema Operativo.

Todas las operaciones en las que participan procesos son controladas por la parte del sistema operativo denominada núcleo (nucleus, core o kernel).

El núcleo (Kernel) de un sistema operativo es un conjunto de rutinas cuya misión es la de gestionar el procesador, la memoria, la entrada/salida y el resto de procesos disponibles en la instalación. El núcleo normalmente representa sólo una pequeña parte de lo que por lo general se piensa que es todo el sistema operativo, pero es tal vez el código que más se utiliza.

Por esta razón, el núcleo reside por lo regular en la memoria principal, mientras que otras partes del sistema operativo son cargadas en la memoria principal sólo cuando se necesitan.

Los núcleos se diseñan para realizar "el mínimo" posible de procesamiento y dejar que el resto lo realice el proceso apropiado del sistema, que puede operar mientras el núcleo se habilita para atender otras interrupciones.

Núcleo o Kernel y niveles de un Sistema Operativo.

El Kernel consiste en la parte principal del código del sistema operativo, el cual se encargan de controlar y administrar los servicios y peticiones de recursos y de hardware con respecto a uno o varios procesos, este se divide en 5 capas:

Nivel 1. Gestión de Memoria: que proporciona las facilidades de bajo nivel para la gestión de memoria secundaria necesaria para la ejecución de procesos.Nivel 2. Procesador: Se encarga de activar los cuantums de tiempo para cada uno de los procesos, creando interrupciones de hardware cuando no son respetadas.Nivel 3. Entrada/Salida: Proporciona las facilidades para poder utilizar los dispositivos de E/S requeridos por procesos.Nivel 4. Información o Aplicación o Intérprete de Lenguajes: Facilita la comunicación con los lenguajes y el sistema operativo para aceptar las órdenes en cada una de las aplicaciones. Cuando se solicitan ejecutando un programa el software de este nivel crea el ambiente de trabajo e invoca a los procesos correspondientes.Nivel 5. Control de Archivos: Proporciona la facilidad para el almacenamiento a largo plazo y manipulación de archivos con nombre, va asignando espacio y acceso de datos en memoria.

Arquitectura de un S.O. Los sistemas operativos se clasifican por su arquitectura de la siguiente manera:

1. Kernel monolítico : La estructura de esta arquitectura es simplemente no tener ninguna. A nivel de núcleo no se produce ninguna abstracción, es decir, si un procedimiento necesita a otro es libre de hacerlo en cualquier momento. Fue el primer enfoque en la historia, el resto son evoluciones.

Page 12: Sistemas Operativos - Desarrollado-SOB

2. Microkernel o micronúcleo: En este caso, el S.O. se ocupa solo de unas pocas funciones, reduciendo el núcleo a su mínima expresión. El resto de funciones pasan a estar en el espacio de usuario. Las funciones centrales de un SO son controladas por el núcleo (kernel) mientras que la interfaz del usuario es controlada por el entorno (shell).

3. Maquinas virtuales: El primer sistema con esta esta arquitectura nació con la idea de separar completamente las dos funciones características de un S.O. de tiempo compartido: multiprogramación y un interfaz mas apropiada El centro del sistema, tambien conocido como monitor de la máquina virtual, se ejecuta directamente sobre el propio hardware, encargándose de la multiprogramación. De esta forma, ofrece al nivel superior varias máquinas virtuales, que son copias exactas del hardware, por lo que se puede dar el caso de ejecutar varios S.O. sobre cada una de ellas (de hecho, el caso mas usual).

4. Modelo cliente-servidor: Esta es la tendencia en cuanto a arquitectura de los S.O. hoy en día. Consiste en reducir al mínimo el kernel, al igual que en el caso de los microkernels, pero en este caso la única función del kernel es de servir de puente entre procesos: cuando una función necesita de otra es el kernel el que se encarga de mantener la comunicación entre ellas, pero nada más.

Shell (intérprete de comandos):El sistema operativo es el código que realiza las llamadas al sistema. Los editores, compiladores,

ensambladores, enlazadores e intérpretes de comandos definitivamente no son parte del sistema operativo, aunque son importantes y útiles. El Shell es el intérprete de comandos, a pesar de no ser parte del sistema operativo, hace un uso intenso de muchas características del sistema operativo y por tanto sirve como un buen ejemplo de la forma en que se pueden utilizar las llamadas al sistema. También es la interfaz primaria entre un usuario situado frente a su terminal y el sistema operativo.

Cuando algún usuario entra al sistema, un "shell" se inicia. El shell tiene la terminal como entrada y como salida estándar. Este da inicio al teclear solicitud de entrada, carácter como un signo de pesos, el cual indica al usuario que el shell está esperando un comando. En MS-DOS normalmente aparece la letra de la unidad, seguida por dos puntos (:), el nombre del directorio en que se encuentra y por último el signo de "mayor que" (>). Esto es: C:\>

Breve historia de los sistemas operativos.Multitareas, multiproceso y programas activos

En un principio solo existía el hardware del computador. Los primeros computadores eran (físicamente) grandes maquinas que se operaban desde una consola. El programador escribía un programa y luego lo controlaba directamente desde la consola. En primer lugar, el programa se cargaba manualmente en la memoria, desde los interruptores del tablero frontal (una instrucción en cada ocasión), desde una cinta de papel o desde tarjetas perforadas. Luego se pulsaban los botones adecuados para establecer la dirección de inicio y comenzar la ejecución del programa. Mientras este se ejecutaba, el programador-operador lo podía supervisar observando las luces en la consola, si se descubrían errores, el programador podía detener el programa, examinar el contenido de la memoria y los registros y depurar el programa directamente desde la consola. La salida del programa se imprimía, o se perforaba en cintas de papel o tarjetas para su impresión posterior.

Sin embargo, con este procedimiento se presentaban ciertos problemas. Supongamos que un usuario se había registrado para usar una hora de tiempo del computador dedicada a ejecutar el programa que estaba desarrollando, pero se topaba con algún error difícil y no podía terminar en esa hora. Si alguien más había reservado el siguiente bloque de tiempo, usted debía detenerse, rescatar lo que pudiera y volver mas tarde para continuar. Por otra parte, si el programa se ejecutaba sin problemas, podría terminar en 35 minutos; pero como pensó que necesitaría la maquina durante más tiempo, se registro para usarla una hora, y permanecería inactiva durante 25 minutos.

Conforme transcurrió el tiempo, se desarrollaron software y hardware adicionales; empezaron a popularizarse los lectores de tarjetas, impresoras de líneas y cintas magnéticas; se diseñaron ensambladores, cargadores y ligadores para facilitar las tareas de programación.

Page 13: Sistemas Operativos - Desarrollado-SOB

Las rutinas que efectuaban operaciones de E/S tenían una importancia especial. Cada nuevo dispositivo de E/S poseía sus propias características, lo que requería una cuidadosa programación. Así mismo, para cada uno de ellos se escribía una subrutina especial, la cual se denominaba controlador de dispositivos. Este sabe como deben de usarse los buffers, indicadores, registros, bits de control y bits de estado para cada dispositivo. Cada tipo de dispositivo tenía su propio controlador. Una tarea sencilla, como leer un carácter de un lector de cinta de papel, podía conllevar complicadas secuencias de operaciones específicas para el dispositivo.

Más tarde aparecieron los compiladores de FORTRAN, COBOL y otros lenguajes, lo que facilito la tarea de programación, pero hizo más complejo el funcionamiento del computador. Los Sistemas Operativos, al igual que el Hardware de los computadores, han sufrido una serie de cambios revolucionarios llamados generaciones.

Generación Cero (década de 1940)Los primeros sistemas computacionales no poseían sistemas operativos. Los usuarios tenían completo acceso al lenguaje de la maquina. Todas las instrucciones eran codificadas a mano.

Primera Generación (década de 1950)Los sistemas operativos de los años cincuenta fueron diseñados para hacer mas fluida la transición entre trabajos. Antes de que los sistemas fueran diseñados, se perdía un tiempo considerable entre la terminación de un trabajo y el inicio del siguiente. Este fue el comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupos o lotes. Cuando el trabajo estaba en ejecución, este tenia control total de la maquina. Al terminar cada trabajo, el control era devuelto al sistema operativo, el cual limpiaba y leía e iniciaba el trabajo siguiente.

Los sistemas de los 50's generalmente ejecutaban una sola tarea, y la transición entre tareas se suavizaba para lograr la máxima utilización del sistema. Esto se conoce como sistemas de procesamiento por lotes de un sólo flujo, ya que los programas y los datos eran sometidos en grupos o lotes. Segunda Generación (a mitad de la década de 1960)

La característica de los sistemas operativos fue el desarrollo de los sistemas compartidos con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuario se encuentran al mismo tiempo en el almacenamiento principal, y el procesador se cambia rápidamente de un trabajo a otro. En los sistemas de multiprocesamiento se utilizan varios procesadores en un solo sistema computacional, con la finalidad de incrementar el poder de procesamiento de la maquina. La independencia de dispositivos aparece después. Un usuario que desea escribir datos en una cinta en sistemas de la primera generación tenia que hacer referencia especifica a una unidad de cinta particular. En la segunda generación, el programa del usuario especificaba tan solo que un archivo iba a ser escrito en una unidad de cinta con cierto número de pistas y cierta densidad. Tercera Generación (mitad de década 1960 a mitad década de 1970)

Se inicia en 1964, con la introducción de la familia de computadores Sistema/360 de IBM. Los computadores de esta generación fueron diseñados como sistemas para usos generales. Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una complejidad a la cual, en un principio, no estaban acostumbrados los usuarios. Cuarta Generación (mitad de década de 1970 en adelante):

Los sistemas de la cuarta generación constituyen el estado actual de la tecnología. Muchos diseñadores y usuarios se sienten aun incómodos, después de sus experiencias con los sistemas operativos de la tercera generación. Con la ampliación del uso de redes de computadores y del procesamiento en línea los usuarios obtienen acceso a computadores alejados geográficamente a través de varios tipos de terminales. Los sistemas de seguridad se han incrementado mucho ahora que la información pasa a través de varios tipos vulnerables de líneas de comunicación. La clave de cifrado esta recibiendo mucha atención; han sido necesario codificar los datos personales o de gran intimidad para que; aun si los datos son expuestos, no sean de utilidad a nadie mas que a los receptores adecuados.

Page 14: Sistemas Operativos - Desarrollado-SOB

MS-DosEstructura interna.Núcleo del DOS. Command.com.Programas residentes. Diferencias entre programas con extensión com., exe y bat. Estado de un programaSistema de booteo.Estructuración del disco. Comandos. Diferencia entre comandos internos y externos.

MS DOS es un sistema operativo comercializado por Microsoft, de la clase de microkernell.El núcleo del sistema lo componen tres archivos: Command.com (o intérprete de comandos), y

otros dos archivos (DOS.SYS y IO.SYS), que según la versión, tendrán otros nombres.El intérprete de comandos es la interface que realiza la comunicación entre el usuario y la

computadora. Contiene todos los comandos de base (DIR, COPY, DEL, etc.) que permiten realizar la operación básica de los archivos en el disco.

El sistema operativo MS-DOS tiene una estructura arborescente donde existen unidades, dentro de ellas directorios y a su vez dentro de ellos tenemos los ficheros. Las unidades son las disqueteras y los discos duros. Los directorios son, dentro de las unidades, carpetas donde se guardan los ficheros. Los ficheros son conjuntos de datos y programas.

Estructura básica del sistema MS-DOS. Ante todo, digamos que el MS-DOS es un sistema operativo particular. Cada sistema tiene su

kernel, su motor de arranque y su intérprete de comandos, que no se corresponden con los de MS-DOS.Elementos constitutivos (o archivos principales)- IO.SYS.- Son un conjunto de instrucciones para la transferencia

de entrada/salida desde periféricos a memoria. Prepara el sistema en el arranque y contiene drivers de dispositivo residentes.

- MSDOS.SYS. Es el kernel de MS-DOS. Gestiona los archivos, directorios, memoria y entornos. -

- DBLSPACE.BIN. Es el controlador del Kernel del compresor del disco duro que sirve para aumentar la capacidad de almacenamiento del disco (disponible a partir de la versión 6 del MS-DOS).

- COMMAND.COM. Es el intérprete de comandos, mediante los cuales el usuario se comunica con el computadora, a través del prompt \>

Interpreta los comandos tecleados y contiene los comandos internos de MS-DOS que no se visualizan en el directorio del sistema. Está dividido en 3 partes:

- Residente: se carga en la parte baja de la memoria, por encima del núcleo (Kernel) y del Bios. Gestiona las órdenes Ctrl+Break y se encarga también de los errores críticos. - Parte de inicialización: se encarga de procesar el autoexec.bat. Desaparece después de ejecutarse. - Porción transitoria: se carga en el extremo superior de la memoria. Prepara el símbolo para las órdenes del usuario. El Prompt. Ejecuta las órdenes que le damos al computadora. Sólo se carga cuando se necesita.

Los ficheros IO.SYS, MSDOS.SYS y DBLSPACE.BIN son ocultos, es decir, no se ven al listar el directorio, y se cargan desde el disco a la memoria de la computadora al arrancar éste.

El resto de los archivos pertenecientes al sistema operativo, son pequeños programas que permiten realizar funciones tales como:

Formatear discos Particionar discos Borrar directorios y árboles de directorios. Transferir el motor de arranque de un disco a otro. Etc.

Arranque de la computadora: Encendemos el computadora. Se lee la ROM .El programa de arranque de la ROM toma el programa de arranque del disco, lo ejecuta si existe IO.SYS y DOS.SYS. Si los encuentra es que tiene S.O. y se puede arrancar el computadora. Si no, da error. Si los encuentra transfiere el control al IO.SYS y lo carga en la parte baja de memoria. Se carga el IO.SYS El Kernel lo primero que hace es mirar el estado de los periféricos. Comprueba disqueteras, disco duro, inicializa tablas. Después interviene de nuevo el Sysinit y llama a los servicios del Kernel o Dos.sys y ejecuta el Config.sys (configuración del sistema). Si encuentra algún error lo notifica pero continua. El Sysinit vuelve a llamar a los servicios del DOS (servicios Exec) y le dice que cargue el Command.com.

El COMMAND.COM.

¿Residente?Un programa residente en memoria es un programa que se carga en la RAM en el arranque y permanece activo en la misma durante el tiempo que la computadora esté encendida.

Page 15: Sistemas Operativos - Desarrollado-SOB

Es un interface entre el usuario y la computadora mediante un conjunto de prompts y mensajes de respuesta a los comandos del usuario. El COMMAND.COM también es el encargado de gestionar las interrupciones.Se ocupa también de tratar los errores que hayan podido producirse durante la ejecución de un programa, devolviendo el control al programa en que se produjo el error si ello es posible, y si no al MSDOS. Gestiona los comandos internos, que dependen directamente de él.

El CONFIG.SYS y el AUTOEXEC.BAT.

Son archivos de configuración: Normalmente cuando se instala por primera vez el sistema operativo, el AUTOEXEC.BAT y el CONFIG.SYS se autogeneran con la configuración mínima. A medida que vamos instalando dispositivos, controladores, etc., los mismos programas de instalación se encargan de actualizar los mismos.

Si bien estos archivos no son imprescindibles, son esenciales para optimizar el funcionamiento de la PC.

Si no existen, la computadora arrancará igual, pero con la estructura lógica (configuración) mínima y no reconocerá periféricos y la memoria no estará optimizada.

Por otra parte, ambos archivos pueden ser creados por un usuario experto, con el editor de textos del DOS. La única condición es que no se alteren sus nombres (de lo contrario la computadora no los reconocerá) y que dentro de ellos se utilicen solo los comandos autorizados.

El archivo CONFIG.SYS Es el primero de los archivos de configuración. En el mismo se especifican los dispositivos lógicos (DEVICES), buffers, etc. Los comandos que se utilizan en el CONFIG son los siguientes:DEVICE: La palabra significa dispositivo. Este dispositivo puede ser lógico o físico. Sintaxis: DEVICE=(unidad) (ruta:\archivo)BUFFERS: Son los espacios que se reservan en memoria para la entrada y salida de datos hacia y desde los archivos abiertos y la memoria. Obviamente, cuantos más sean, mejor, pero debe prestarse atención a este punto: Cuanto más alto es el valor, se resta memoria para otras aplicaciones. La misma observación cabe para los FILES (archivos) que sigue. Los valores para buffers están entre 8 y 99.FILES: Especifica el número de archivos que estarán abiertos y disponibles al mismo tiempo para DOS. El valor debe estar entre 8 y 255 y el valor predeterminado es 8.COUNTRY: Configura el DOS de modo que reconozca el juego de caracteres y observe las convenciones de puntuación del país especificado. Cada país tiene un código y un juego de caracteres asignado. La asignación de un juego de caracteres significa que, si se especifica Brasil, Portugal o Francia, estará permitida la ç.LASTDRIVE: Determina la última unidad de disco disponible para el sistema.

Sintaxis:LASTDRIVE=(letra de unidad)

DEVICEHIGH: Significa Dispositivo en memoria superior. Si la memoria superior ya está ocupada, el DEVICEHIGH funcionará lo mismo que el DEVICE.

El archivo AUTOEXEC.BAT:Es el siguiente archivo de configuración que se carga. En él se determinan qué controladores o DRIVERS serán cargados al momento del inicio (mouse, tipo de teclado, CDROM, vacunas o antivirus) e incluso puede determinarse como última línea que se cargue Windows o un utilitario como el Norton Comander.Así como en el CONFIG.SYS, solo se pueden ejecutar comandos especiales.SET: Significa seteo. Colocar un determinado “switch” en algún estado posible. También se utiliza para ubicar archivos en determinadas posiciones.PATH: El término indica ruta o camino. En particular, el path indica en qué directorios buscar los comandos que se escriben desde el DOS. Si, por ejemplo, estamos en C:\ y escribimos FORMAT A:, es lógico suponer que comenzará el formateo del disco ubicado en la unidad A:. Sin embargo el comando que lo ejecuta normalmente está en el directorio DOS. Si en el archivo AUTOEXEC.BAT no se encuentra la línea:

PATH=C:\DOSel sistema operativo buscará el comando sólo en el directorio raíz, y al no encontrarlo mandará el mensaje: “ Comando o nombre de archivo incorrecto”.@ECHO OFF: Determina que las líneas del AUTOEXEC que aparecen a continuación no serán expuestas en la pantalla.PROMPT: Determina cómo será visualizado el símbolo del sistema. La versión más simplificada es: C>

Si se especifica: PROMPT $P$Gse determinará que el símbolo del sistema aparezca así: C:\>

Las interrupciones son llamadas ocasionadas por los periféricos, que el sistema tiene que atender. Cuando el tratamiento de una interrupción termina, se devuelve el control al programa que se estaba ejecutando cuando sucedió la interrupción.

Page 16: Sistemas Operativos - Desarrollado-SOB

KEYB: Especifica la configuración del teclado. El teclado que asume por defecto la computadora es el standard americano. La línea KEYB SP, determina la configuración de teclado español.

El sistema de archivos de DOS

Antes dijimos que el sistema operativo MS-DOS tiene una estructura arborescente donde existen unidades, dentro de ellas directorios y a su vez dentro de ellos tenemos los ficheros. La informacion que utiliza el usuario necesita ser grabada en un medio magnético. Un disco rígido puede ser bastante grande y contener varios miles de archivos. En tal volumen puede hacerse muy complejo (para el usuario y el sistema) la búsqueda de un determinado archivo. Es por eso que los discos se organizan en directorios. La estructura de un disco rígido puede compararse con la de los archivadores: Cajones organizados según un criterio (directorios), dentro de los cuales puede haber carpetas (sub-directorios), que contienen hojas de papel (archivos).

El directorio principal es la unidad de disco (C:\ para el disco rígido; D:\ para el CD y A:\ para el diskette), y se denomina directorio raiz

Los directorios tienen un nombre, y como no son archivos, no llevan extensión. Por ejemplo, pueden llamarse PEPE, TRABAJOS, EQUIPO2, etc. Los nombres obedecen a las mismas pautas de nombres de archivos. Supongamos que un equipo de computación es usado por los chicos de 7mo., por los de 1er. año y por los de 2do. Sería muy útil tener el disco "particionado", para que no se mezclen todos los archivos. De esta manera, cada uno trabaja en forma independiente, evitándose la molestia de buscar su archivo en la lista de todos los archivos de los demás cursos.

La estructura que tendría el índice del disco, sería la siguiente:

C:\ (Directorio Raiz)

De esta manera, si los tres "usuarios" del ejemplo tienen cada uno 40 archivos, en vez de tener una lista de 120 archivos, tendremos tres listas de 40.

Además, cada subdirectorio puede, dividirse en otros subdirectorios: C:\ (Directorio Raiz)

El Directorio raiz contiene tres directorios: SEPTIMO - PRIMERO - SEGUNDO El directorio Septimo contiene dos subdirectorios: GRUPO1 - GRUPO2 Y el directorio PRIMERA tiene dos subdirectorios: TRABAJOS - PROGRAMAS

Al inicializar el equipo, siempre nos encontraremos ubicados en el directorio RAIZ. Allí podremos ver que archivos contiene y qué subdirectorios dependen de él.

Atributos de los archivos.Cada uno de los ficheros tiene una serie de características definidas, quereciben el nombre de 'atributos'. Los atributos pueden ser de lo siguientestipos.

- A .- Atributo de Archivo. - H .- Atributo de Oculto, no se podrá ver al hacer un dir sencillo. - R .- Atributo de solo lectura, si está activo, solo se puede leer. - S .- Atributo de sistema, los propios del sistema operativo.

Los dispositivos:

Septim Primero Segundo

Septimo

Primero Segundo

Grupo1 Grupo2

Trabajos

programas

Es necesario destacar el sistema que tiene el DOS de almacenar los programas o ficheros. Cada uno de los ficheros recibe un nombre, que se divide en dos partes independientes entre sí. La primera es el propio nombre del fichero, que no debe superar los 8 caracteres, y la segunda se emplea para definir el tipo de fichero que es, con un máximo de 3 caracteres. Existen un grupo de caracteres reservados por el sistema que no pueden ser empleador para definir ningún fichero, si así se intentara hacer, el sistema daría un mensaje de error. Igualmente está permitido el empleo de unos determinados caracteres denominados comodines que se utilizan para sustituir uno o varios caracteres.

Page 17: Sistemas Operativos - Desarrollado-SOB

En cuanto al medio de comunicarse con el computadora existen distintos medios. Cada uno de los cuales recibe un nombre de dispositivo. Los habitualmente empleados son:

- CON .- Consola, el monitor+teclado. - PRN .- Puerto de impresora definido por el usuario. - LPTx .- En donde x es un número entre 1 y 3, es el puerto paralelo. - COMx .- En donde x es un número entre 1 y 4, es el puerto serie.

El prompt: Si el equipo esta conectado correctamente, basta con pulsar el botón de encendido.En ese caso, puede aparecer en pantalla el siguiente mensaje: A:\> (sin disco rígido) C:\> (con disco rígido)

El símbolo C:\> indica que la unidad activa es la C:, es decir, el disco duro, y que el DOS esta preparado para recibir órdenes que damos desde el teclado.

Podemos cambiar de unidad por defecto (la C:) a otra simplemente escribiendo su letra seguida de dos puntos.

Cada unidad de disco del computadora tiene asignada una letra diferente (de la A a la Z). La C: para el primer disco duro, si tenemos otro, este hereda la letra D:, la disquetera principal tiene la A:; una segunda disquetera (si la tenemos) se reserva la letra B: y ningún disco duro o unidad de disco que instalásemos se la podría quitar.

Ejemplo: Cambiar de unidad activa o unidad por defecto a otra diferenteEscribir A:Pulsar enterLa luz de la disquetera se enciende. El C:\> ha cambiado por A:\>. Ahora la unidad activa es la A:.

Para volver al C: (disco duro) repite el ejemplo, pero en vez de A: se escribe C: seguido de Intro.

A partir de allí, puede operarse el sistema operativo. Esto significa crear directorios, borrarlos, eliminar archivos o copiarlos de un sitio a otro, y formatear diskettes. El sistema operativo MS-DOS permite manejar los archivos y directorios que se encuentran en el disco/s.

Dentro del sistema podemos distinguir comandos de sistema (operación global del sistema), de archivo (permiten las operaciones de archivo) y de directorio.