Sistemas y Telecomunicaciones
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.


Foro de discusión creado para desarrollar los contenidos Academicos de las materias y temas propuestos de interés para los estudiantes de Sistemas.
 
ÍndiceÍndice  SistemasSistemas  GaleríaGalería  Últimas imágenesÚltimas imágenes  BuscarBuscar  RegistrarseRegistrarse  Conectarse  
Bienvenidos a mis clase desarrolladas, las materias recientemente registradas son Analisis y Diseño de Sistemas Estructurados y Arquitectura Computacional.
No olviden que debn registrase para poder colocar respuestas. Y colocar sus deberes.

 

 Clase 02 - Objetivos

Ir abajo 
2 participantes
AutorMensaje
AngelPlaza




Cantidad de envíos : 8
Puntos : 24
Reputación : 2
Fecha de inscripción : 26/05/2009

Clase 02 - Objetivos Empty
MensajeTema: Clase 02 - Objetivos   Clase 02 - Objetivos EmptyVie Jul 03, 2009 6:39 pm

OBJETIVOS

  • Revisar los aspectos mas sobresalientes, sobre la estructura y funcionamiento de los computadores, para lo cual analizaremos ligeramente los fundamentos de la arquitectura y organización de los computadores.
  • Conocer la variedad de conceptos, estructuras y mecanismos de los sistemas operativos modernos; su naturaleza y características.
  • Conocer el dominio que ejerce un software, sobre un hardware.
  • Comprender como un sistema operativo, administra los recursos de un computador: procesadores, memorias, dispositivos de entrada / salida, dispositivos de comunicación
  • Planificar los recursos entre usuarios ( E/S)
  • Comprender , el reto que ofrecerán los nuevos sistemas.

CONCEPTOS DE SISTEMAS OPERATIVO

  • “Un S. O. es un grupo de programas de proceso con las rutinas de control necesarias para mantener continuamente operativos dichos programas”.
  • Un sistema operativo es un software de sistema, es decir, un conjunto de programas de computadora destinado a permitir una administración eficaz de sus recursos.
  • Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la máquina desde los niveles más básicos, permitiendo también la interacción con el usuario.
  • Un sistema operativo se puede encontrar normalmente en la mayoría de los aparatos electrónicos que utilicen microprocesadores para funcionar, ya que gracias a éstos podemos entender la máquina y que ésta cumpla con sus funciones (teléfonos móviles, reproductores de DVD, autoradios, computadoras, etc.).

Visión respecto de los S. O.:

  • El S. O. es una máquina ampliada (llamada también máquina virtual) que es más fácil de programar y manejar que el propio hardware de la máquina (llamada también máquina real).
  • El S. O. es un gestor de recursos que ofrece una distribución ordenada y controlada de los dispositivos de la máquina real, entre los distintos programas que compiten por esos recursos.

Las funciones de un S. O. han sido, clásicamente, las siguientes:


  • La gestión de recursos
  • La ejecución de servicios para los programas.
  • La ejecución de órdenes de usuario.
Las principales características de los S. O. :

  • Definir la “Interfaz del Usuario”.
  • Compartir el hardware entre usuarios.
  • Permitir a los usuarios compartir los datos entre ellos.
  • Planificar recursos entre usuarios.
  • Facilitar la entrada / salida.
  • Recuperarse de los errores.

Los principales recursos administrados por los S. O. son:

  • Procesadores.
  • Almacenamiento.
  • Dispositivos de e / s.
  • Datos.
Volver arriba Ir abajo
Otto Navas




Cantidad de envíos : 7
Puntos : 9
Reputación : 0
Fecha de inscripción : 16/05/2010

Clase 02 - Objetivos Empty
MensajeTema: Re: Clase 02 - Objetivos   Clase 02 - Objetivos EmptyLun Mayo 17, 2010 12:30 pm

CONTENIDO A DESARROLLAR


1. Conceptos Arquitectónicos de la Computadora


1.
Conceptos básicos.



2. El
procesador.



3.
Interrupciones.



4.
Jerarquía de memoria.



5. La
memoria virtual.



6.
Entrada y salida.



2. Introducción a los Sistemas Operativos


1.
Que es un Sistema Operativo?



2.
Componentes y estructura de un Sistema Operativo



3.
Gestión de procesos.



4.
Gestión de Memoria.



5.
Comunicación y sincronización entre procesos.



6.
Gestión de archivos y directorios.



7.
Seguridad y protección.



8.
Historia de los Sistemas Operativos.



3. Procesos.


1.
Conceptos de Procesos



2.
Multitarea



3.
Información de Procesos



4.
Estados del proceso



5.
Planificación



6.
Temporizadores



7.
Servidores y demonios



4. Gestión de Memoria.


1.
Objetivos del sistema de gestión de memoria



2.
Intercambio



3.
Memoria Virtual



1.
Paginación



2.
Segmentación



3.
Paginación de memoria



5. Comunicación y sincronización de procesos.


1.
Problemas clásicos de comunicación y sincronización



2.
Mecanismos de comunicación y sincronización



3.
Paso de mensajes



6. Gestión de Archivos y directorios.


1.
Archivos



2.
Directorios



3.
Servicios de Archivos y directorios



4.
Sistemas de Archivos



5. El
servidor de archivos



7. Seguridad y protección.


1.
Conceptos de Seguridad y protección



2.
Problemas de seguridad



3.
Políticas de seguridad



4.
Diseño de sistemas operativos seguros



5.
Criptografía



6.
Clasificaciones de seguridad



7.
Seguridad y protección en sistemas operativos de propósito







general.





•
Volver arriba Ir abajo
Otto Navas




Cantidad de envíos : 7
Puntos : 9
Reputación : 0
Fecha de inscripción : 16/05/2010

Clase 02 - Objetivos Empty
MensajeTema: Re: Clase 02 - Objetivos   Clase 02 - Objetivos EmptyLun Mayo 17, 2010 12:45 pm

CAPITULO1:


Conceptos Arquitectónicos de la Computadora


1.
Conceptos básicos.



2. El
procesador.



3.
Interrupciones.



4.
Jerarquía de memoria.



5. La
memoria virtual.



6.
Entrada y salida.



CONCEPTOS ARQUITECTONICOS DE LA COMPUTADORA


La
arquitectura de computadoras es el diseño conceptual y la estructura



operacional
fundamental de un sistema de computadora. Es decir, es un



modelo
y una descripción funcional de los requerimientos y las



implementaciones
de diseño para varias partes de una computadora, con



especial
interés en la forma en que la unidad central de proceso (CPU) trabaja



internamente
y accede a las direcciones de memoria.



También
suele definirse como la forma de seleccionar e interconectar



componentes
de hardware para crear computadoras según los requerimientos



de
funcionalidad, rendimiento y costo



El
ordenador recibe y envía la información a través de los periféricos por medio



de
los canales. La CPU
es la encargada de procesar la información que le llega



al
ordenador. El intercambio de información se tiene que hacer con los



periféricos
y la CPU.



/// Imagen 1





Todas
aquellas unidades de un sistema exceptuando la CPU se denominan



periférico,
por lo que el ordenador tiene 4 partes bien diferenciadas, que son:



- La CPU (encargada
de ejecutar programas y que esta compuesta por la



memoria
principal, la UAL
y la UC)



- La memoria (que
contiene los datos de programas y registros de



direcciones)


- Los
periféricos (que pueden ser de entrada, salida, entrada-salida y


comunicaciones).


- Bus del sistema.
Mecanismos y estructuras que permiten la



comunicación
entre procesadores, memoria y E/S



Este
esquema básico con que se indica la arquitectura de una computadora se



denomina
Arquitectura de Von Newman.






/// Imagen 2


/// Imagen 3





La
computadora u ordenador, además de la rutina o programa informático,



consta
de:



_ Datos específicos (a estos datos, en
conjunto, se les conoce como "Input"



en
inglés) que deben ser suministrados, y que son requeridos al momento



de la
ejecución.



_ El producto final del procesamiento de
datos, que recibe el nombre de



"output".


_ La información, que puede ser entonces
utilizada, reinterpretada, copiada,



transferida,
o retransmitida a otra(s) persona(s), computadora(s) o



componente(s)
electrónico(s) local o remotamente usando diferentes



sistemas
de telecomunicación, pudiendo ser grabada, salvada o



almacenada
en algún tipo de dispositivo o unidad de almacenamiento



/// Imagen 4


/// Imagen 5








EL PROCESADOR


Un
procesador incluye un conjunto de registros que proporcionan un nivel de



memoria
que es más rápido y pequeño que la memoria principal.



Tienen
2 TIPOS:



1. Registros visibles de usuario.


Permite
al programador minimizar las referencias a la memoria principal,



optimizando
el uso de estos registros. Puede ser referenciado por medio de



lenguaje
máquina y está disponible para todos los programas (aplicación y de



sistema)


Tipos
de registros



_ Datos. Pueden ser asignados por el
programador a diversas funciones.



_ De dirección. Contienen direcciones de la
memoria principal de datos e



instrucciones
o una parte de la dirección.



o Índice. Implica sumar un índice a una
dirección base para obtener



la
dirección efectiva



o Puntero de segmento. Una referencia a
memoria consta de una



referencia
a un segmento particular y un desplazamiento dentro



del
segmento



o Puntero de pila. La pila estará formada
por un conjunto secuencial



de
registros, teniendo uno dedicado a señalar la cima



2. Registros de control y de estado.


Son
usados por el procesador para el control de las operaciones y rutinas



privilegiadas
del S. O. para controlar la ejecución de programas



Los
siguientes registros son esenciales en la ejecución de instrucciones:



_ PC, Program Counter. Contiene la
dirección de la instrucción a ser leída



_ IR, Instruction Register. Contiene la
última instrucción leída



_ PSW, Program Status Word. Contiene
información de estado. Indica si



las
interrupciones están habilitadas o inhabilitadas y el estado usuario o



supervisor


_ Códigos de Condición o FLAGS, son un
conjunto de bits activados por el



hardware
del procesador como resultado de determinadas operaciones.



Una
operación aritmética puede producir un resultado positivo, negativo,



cero
o desbordamiento.



/// Imagen 6


/// Imagen 7


/// Imagen 8





Al
comienzo de cada ciclo de instrucción, el procesador lee una instrucción de



la
memoria.



El PC
indica cual es la próxima instrucción a leer y se incrementa después de



leer
cada instrucción. La instrucción leída se carga en el IR.



La
instrucción especifica cuál es la acción que el procesador llevará a cabo:



Procesador – memoria. Transfiere datos
entre el procesador y la



memoria


Procesador – E/S. Transfiere datos desde
o hacia un dispositivo



Tratamiento de datos. Operación
aritmética o lógica de los datos



Control. Puede especificar que la
secuencia de ejecución sea alterada.



EJEMPLO DE CÓMO TRABAJA


/// Imagen 9


PC=300


Lee 1940


IR =1940


1=Acumular


940=Memoria


Ac=3





PC=301


Lee 5941


IR=5941


5=Sumar


941=Memoria


Ac=3+2=5





PC=302


Lee 2941


IR=2941


5=Copiar


941=Memoria


Ac=5





EJECUCIÓN DE INSTRUCCIONES


_ Todo programa es una sucesión de
instrucciones que le indican al



procesador
la acción que este debe realizar, pero estas no son pasadas



de
forma directa del programa al procesador, antes de esto se llevan a



cabo
algunos pasos intermedios.






_ Al ejecutar un programa este es «cargado»
en la memoria principal, la



cual
pasará a solicitud del procesador una a una cada instrucción



almacenada


_ El procesador se encargará de la
ejecución de las instrucciones y de una



nueva
petición a la memoria primaria para la siguiente instrucción.



_ Aunque pueda parecer un proceso lento en
realidad es ejecutado en



fracciones
de segundo por lo cual al ser humano le parece que se lleva a



cabo
de forma instantánea.



_ Para ajustarse a la realidad esta es una
visión simplificada del proceso,



ya
que conlleva una serie de pasos más en los cuales entran a jugar un



papel
trascendental algunos registros del procesador.



Funciones de E/S


_ Las operaciones de E/S ocurren
directamente con la memoria.



_ Los controladores de dispositivos de E/S
pueden intercambiar datos



directamente
con el procesador.



_ En algunos casos es conveniente permitir
que los intercambios de E/S



se
produzcan directamente con la memoria, para relevar al procesador



de la
tarea de E/S (DMA, Direct Memory Access)



Interrupciones


_ Es una interrupción de una secuencia
normal de ejecución.



_ Mejora la eficiencia del procesamiento.


_ Permite al procesador ejecutar otras
instrucciones mientras una



operación
de E/S se está ejecutando.



_ Es una suspensión de un proceso causado
por un evento externo a ese



proceso
y ejecutado de tal forma que el proceso puede reanudarse.



_ Algunos sistemas operativos ejecutan
todos los trabajos en forma de



lotes
(
batch), es decir no podían hacer ningún otro trabajo hasta tanto el


programa
en ejecución no terminase su trabajo.



_ Por lo cual cuando este debía por ejemplo
leer de un CD o un disquette,



pareciera
que el programa y hasta la máquina completa se bloquease



por
un tiempo y después «milagrosamente» se recuperase.



_ Para solucionar este problema la mayoría
de S.O. modernos utilizan el



concepto
de
interrupción.


_ Este concepto se basa en el trabajo
«colaborativo», es decir, el



procesador
entrega el control de la E/S
a un módulo que se encarga de



ejecutar
este tipo de operaciones y esperar hasta que estas se



completen.


_ Y cuando esto suceda avisarle al
procesador (que se encuentra mientras



tanto
realizando otras instrucciones-bien sea del mismo programa o de



algún
otro-) que puede continuar con las operaciones subsiguientes que



quedaron
pendientes cuando la petición de E/S.



_ La comunicación entre el procesador y la
memoria principal es a gran



velocidad,
sin embargo la mayoría de programas deben interactuar con



algún
tipo de dispositivo de E/S, durante este proceso la ejecución del



programa
se ve interrumpida ya que la comunicación con dichos



dispositivos
es significativamente más lenta que con la memoria.



_ En algunas ocasiones esta operación puede
ser incluso más lenta ya



que
puede requerir la intervención humana y obviamente el tiempo de



reacción
se reducirá de manera drástica.



_ Un ejemplo típico de estas situaciones y
que muy seguramente a todos



nos
es familiar se presenta cuando estamos utilizando un procesador de



textos
para redactar un documento, el aplicativo debe estar pendiente de



cada
acción desde el teclado o el ratón (o algún otro dispositivo que



pueda
estar involucrado) y cuando se produzca, responder de manera



adecuada
según corresponda, por más rápido que sea el digitador



siempre
será más lento que el procesador e incluso que algunos



dispositivos





JERARQUIA DE MEMORIA


Es la
organización piramidal de la memoria en niveles, que tienen los



computadores.
Su objetivo es conseguir el rendimiento de una memoria de



gran
velocidad al coste de una memoria de baja velocidad, basándose en el



principio
de cercanía de referencias.



Los
puntos básicos relacionados con la memoria pueden resumirse en:



_ Cantidad


_ Velocidad


_ Coste


La
cuestión de la
cantidad es simple, cuanto más memoria haya disponible,


más
podrá utilizarse.



La velocidad óptima
para la memoria es la velocidad a la que el procesador



puede
trabajar, de modo que no haya tiempos de espera entre cálculo y



cálculo,
utilizados para traer operandos o guardar resultados.



Y el costo de la memoria no debe
ser excesivo, para que sea factible construir



un
equipo accesible.



Como
puede esperarse los tres factores compiten entre sí, por lo que hay que



encontrar
un equilibrio. Las siguientes afirmaciones son válidas:



_ A menor tiempo de acceso mayor coste.


_ A mayor capacidad mayor coste.


_ A mayor capacidad menor velocidad.


Se
busca entonces contar con capacidad suficiente de memoria, con una



velocidad
que sirva para satisfacer la demanda de rendimiento y con un coste



SISTEMAS OPERATIVOS


SISTEMAS OPERATIVOS – Ing. Angel Plaza - Página 12 de 43


que
no sea excesivo. Gracias a un principio llamado cercanía de referencias,



es
factible utilizar una mezcla de los distintos tipos y lograr un rendimiento



cercano
al de la memoria más rápida.



Los
niveles que componen la jerarquía de memoria habitualmente son:



*
Nivel 0: Registros



*
Nivel 1: Memoria caché



*
Nivel 2: Memoria principal



*
Nivel 3: Disco duro (con el mecanismo de memoria virtual)



*
Nivel 4: Redes (Actualmente se considera un nivel más de la jerarquía de



memorias)





///IMAGEN 10





MEMORIA VIRTUAL


La memoria virtual es
una técnica que permite al software usar más memoria



principal
que la que realmente posee el ordenador.



La
mayoría de los ordenadores tienen cuatro tipos de memoria: registros en la



CPU,
la memoria caché (tanto dentro como fuera del CPU), la memoria física



(generalmente
en forma de RAM, donde la CPU
puede escribir y leer directa y



razonablemente
rápido) y el disco duro que es mucho más lento, pero también



más
grande y barato.



Cuando
se usa Memoria Virtual, o cuando una dirección es leída o escrita por



la CPU, una parte del hardware dentro de la computadora traduce las


direcciones
de memoria generadas por el software (direcciones virtuales) en:



• La dirección real de memoria (la
dirección de memoria física).



• Una indicación de que la dirección de
memoria deseada no se encuentra



en
memoria principal (llamado excepción de memoria virtual)



En el
primer caso, la referencia a la memoria es completada, como si la



memoria
virtual no hubiera estado involucrada: el software accede donde debía



y
sigue ejecutando normalmente.



En el
segundo caso, el sistema operativo es invocado para manejar la situación



y
permitir que el programa siga ejecutando o aborte según sea el caso.



La
memoria virtual es una técnica para proporcionar la simulación de un



espacio
de memoria mucho mayor que la memoria física de una máquina. Esta



"ilusión"
permite que los programas se ejecuten sin tener en cuenta el tamaño



exacto
de la memoria física.



La
ilusión de la memoria virtual está soportada por el
mecanismo de


traducción de memoria, junto con una gran
cantidad de almacenamiento



rápido
en disco duro. Así en cualquier momento el espacio de direcciones



virtual
hace un seguimiento de tal forma que una pequeña parte de él, está en



memoria
real y el resto almacenado en el disco, y puede ser referenciado



fácilmente.


Este
método es invisible a los procesos. La cantidad de memoria máxima que



se
puede hacer ver que hay tiene que ver con las características del



procesador.
Por ejemplo,
en un sistema
de 32 bits, el máximo es 2
32, lo que


da 4096 Megabytes (4 Gigabytes).
Todo esto hace el trabajo del programador



de
aplicaciones mucho más fácil, al poder ignorar completamente la necesidad



de
mover datos entre los distintos espacios de memoria.
Volver arriba Ir abajo
Otto Navas




Cantidad de envíos : 7
Puntos : 9
Reputación : 0
Fecha de inscripción : 16/05/2010

Clase 02 - Objetivos Empty
MensajeTema: Re: Clase 02 - Objetivos   Clase 02 - Objetivos EmptyLun Mayo 17, 2010 12:45 pm

CAPITULO 2:


Introducción a los Sistemas Operativos


1.
Que es un Sistema Operativo?



2.
Componentes y estructura de un Sistema Operativo



3.
Gestión de procesos.



4.
Gestión de Memoria.



5.
Comunicación y sincronización entre procesos.



6.
Gestión de archivos y directorios.



7.
Seguridad y protección.



8.
Historia de los Sistemas Operativos.



QUE ES UN SISTEMA OPERATIVO?


Un sistema operativo es un software de sistema, es decir, un
conjunto de



programas de computadora destinado a permitir una administración


eficaz de sus recursos.


Comienza
a trabajar cuando se enciende el computador, y gestiona el



hardware
de la máquina desde los niveles más básicos, permitiendo también la



interacción
con el usuario.



Un
sistema operativo se puede encontrar en la mayoría de los aparatos



electrónicos
que utilicen microprocesadores para funcionar, ya que gracias a



éstos
podemos entender la máquina y que ésta cumpla con sus funciones



(teléfonos
móviles, reproductores de DVD, auto radios, computadoras, radios,



etc).


Una
de las principales funciones de un S.O. es el de servir de
máquina virtual


o extendida.


Esta
funcionalidad es la que le permite al programador abstraer la capa de



hardware
y utilizar una serie de
llamadas
al sistema operativo
para que este


sea
el encargado de tratar a bajo nivel con los componentes físicos.



Si no
existiese esta funcionalidad todo programador que en una aplicación



necesite
grabar en un disco duro o disquette y/o imprimir en una impresora,



debería escribir el código que
le permita hacer esto pero de forma individual



para
cada dispositivo al que desee dar soporte.



Por
Ejemplo:



_ Si el programador sólo incluye
funcionalidad para las impresoras marca A y



B, si
el usuario tiene una de marca C no podría utilizar las funciones de



impresión


_ Lo mismo sucedería con los dispositivos
de almacenamiento y en general



se
iría complicando entre más dispositivos sea necesario utilizar y entre



mayor
sea la diversidad de estos dispositivos.



Es
por este motivo que en la definición «rápida» se dice que provee una



interfaces
entre las aplicaciones y el hardware.



La
otra gran tarea de un sistema operativo es servir de «agente del orden».



Es quien controla el acceso y la
utilización de los recursos del



sistema
y los distribuye de forma tal que los más voraces no lo



consuman
todo dejando a los demás sin estos.



También
controla quién hace uso de estos recursos y en que momento.



Sin esta función del sistema operativo
todos los procesos podrían por



ejemplo
enviar al mismo tiempo peticiones de escritura/lectura a un



disco
y por consiguiente no se podría garantizar que se complete con



éxito
ninguno de las peticiones ya que no habría forma de controlar



en
que momento este se encuentra ocupado cumpliendo la misión



encomendada
por un proceso.



Por
tanto un sistema operativo debe poder conocer cuando un recurso está



siendo
utilizado y en que momento está libre y dependiendo de esto permitir o



no su
uso.



_ Las principales características de
los S. O. :



_ Definir la “Interfaz del Usuario”.


_ Compartir el hardware entre usuarios.


_ Permitir a los usuarios compartir los
datos entre ellos.



_ Planificar recursos entre usuarios.


_ Facilitar la entrada / salida.


_ Recuperarse de los errores.


_ Los principales recursos administrados por
los S. O. son:



_ Procesadores.


_ Almacenamiento.


_ Dispositivos de e / s.


_ Datos.


COMPONENTES DE UN SISTEMA OPERATIVO


Los
sistemas operativos están formados por una serie de componentes



especializados
en determinadas funciones. Cada sistema operativo estructura



estos
componentes en forma distinta.



Basicamente,
un sistema operativo esta formado por 3 capas:



• El núcleo, que interactúa directamente
con el hardware de la maquina,



se
centra en la gestión del procesador, interrupciones y manipulación de



memoria.


• Los servicios, que representa las
funciones básicas del sistema



operativo,
como por ejemplo, la gestión de la memoria, de los procesos,



de
los archivos, de las entradas/salidas principales, gestión de seguridad



y de
las funciones de comunicación.



• El intérprete de comandos, que
posibilita la comunicación con el



sistema
operativo a través de un lenguaje de control, permitiendo al



usuario
controlar los periféricos sin conocer las características del



hardware
utilizado, la gestión de las direcciones físicas, etcétera.






///imagen 11


Todos
estos componentes ofrecen una serie de servicios a través de una



interfaz
de llamada al sistema. Un sistema operativo puede incluir más de una



interfaz
de servicio conocidas como API, en la grafica se muestran los dos que



se
trataran a lo largo del curso WIN 32 y POSIX.



Una
API representa una interfaz de comunicación entre componentes de



software.
Se trata del conjunto de llamadas a ciertas bibliotecas que ofrecen



acceso
a ciertos servicios desde los procesos y representa un método para



conseguir
abstracción en la programación, generalmente (aunque no



necesariamente)
entre los niveles o capas inferiores y los superiores del



software.


Uno
de los principales propósitos de una API consiste en proporcionar un



conjunto
de funciones de uso general, por ejemplo, para dibujar ventanas o



iconos
en la pantalla. De esta forma, los programadores se benefician de las



ventajas
de la API
haciendo uso de su funcionalidad, evitándose el trabajo de



programar
todo desde el principio.



Ejemplos
de API:



• Microsoft WMI


• Microsoft Win32 API


• Microsoft Framework .NET


• OpenGL


• Java EE


• API for SCSI device interfacing


• The Carbon APIs
for the Macintosh OS



• Common Object
Request Broker Architecture (CORBA)



• Symfony para PHP


• Drupal API


ESTRUCTURA DE UN SISTEMA OPERATIVO


Se
considera la organización interna de los S. O. y conforme a ella se los



clasifica
de la siguiente manera:



SISTEMA OPARATIVO MONOLITICO


Es la
estructura de los primeros sistemas operativos constituidos



fundamentalmente
por un solo programa compuesto de un conjunto de rutinas



entrelazadas
de tal forma que cada una puede llamar a cualquier otra. Las



características
fundamentales de este tipo de estructura son:



• Construcción del programa final a base de
módulos compilados



separadamente
que se unen a través del encadenador (
linker).


• Buena definición de parámetros de enlace
entre las distintas rutinas



existentes,
lo que puede provocar mucho acoplamiento.



• Carecen de protecciones y privilegios al
entrar a rutinas que manejan



diferentes
aspectos de los recursos del computador, como memoria,



disco,
etc.



• Generalmente están hechos a medida, por
lo que son eficientes y



rápidos
en su ejecución y gestión, pero por lo mismo carecen de



flexibilidad
para soportar diferentes ambientes de trabajo o tipos de



aplicaciones.


SISTEMA OPARATIVO ESTRUCTURADO


A
medida que fueron creciendo las necesidades de los usuarios y se



perfeccionaron
los sistemas, se hizo necesaria una mayor organización del



software,
del sistema operativo, donde una parte del sistema contenía subpartes



y
esto organizado en forma de niveles.



Se
dividió el sistema operativo en pequeñas partes, de tal forma que cada una



de
ellas estuviera perfectamente definida y con un claro interface con el resto



de
elementos.



///imagen 12





Se
constituyó una estructura jerárquica o de niveles en los sistemas operativos,



el
primero de los cuales fue denominado
THE (Technische Hogeschool


Eindhoven), de
Dijkstra, que se utilizó con fines didácticos. Se puede pensar


también
en estos sistemas como si fueran ‘multicapa’.



///imagen 13


///imagen 14





5 – O p e r a d o r


4 - Pr o g r a m a s d e l U s u a r i o


3 - C o n t r o l d e E n t r a d a – Sa l i d a


2 - C o m u n i c a c i o n e s O p e r a d o r – Pr o
c e s o



1 - A d m i n i s t r a c i ó n d e la M e m o r i a y d e l D i s c o


0 - A s i g n a c i ó n d e l Pr o c e s a d o r y


M u l t i p r o g r a m a c i ó n


///imagen 15





GESTION DE PROCESOS


_ Un proceso es la forma en que un sistema
operativo trata a un programa



durante
su ejecución.



_ Para que el procesador pueda trabajar con
un programa es necesario



que
exista algo de información adicional.



_ Como los registros de operación en el
procesador, los datos de entrada



del
programa, etc.



_ Acompañando al código objeto (o
ejecutable), por tanto, cuando se dice



que
proceso es la forma en que el sistema trata a todo programa durante



su
ejecución, estamos haciendo referencia a todo este conjunto.



_ Cuando un sistema operativo arranca este
crea algunos procesos



principales
que serán los encargados de crear todos los demás



procesos,
como a su vez cualquier proceso puede crear otros procesos



(denominados
«hijos»).



_ Obtenemos una estructura jerárquica en
forma de árbol donde todo



proceso
(exepto el o los iniciales del S.O.) tiene un padre (o antecesor).



_ Y a su vez cada proceso tiene la
capacidad de tener uno o más hijos.



_ A este conjunto conformado por un padre y
todos sus hijos (y



recursivamente
los hijos de estos) se le denomina familia de procesos.



_ Un proceso puede crear otros varios
procesos nuevos mientras se



ejecuta
para ello se utiliza una
llamada
al sistema
específica para la


creación
de procesos.



_ El proceso creador se denomina proceso
padre, y los nuevos son los



hijos
de dicho proceso, cada uno de estos procesos pueden crear a su



vez
otros procesos dando lugar a un árbol de procesos.



///imagen 15





• En los sistemas operativos GNU Linux,
para visualizar ese árbol



podemos
hacerlo a través del comando
pstree.


• Por ejemplo, ejecutamos pstree -pl,
donde los argumentos p y l,



respectivamente
muestran los pid de los procesos y no truncan líneas



largas,
podemos obtener algo como el siguiente fragmento:



• Como se puede ver todos los procesos
tienen un padre común (
init)


///imagen 16





Dependiendo
del número de procesos y de usuarios que puedan ejecutar



simultáneamente,
un sistema operativo puede ser:



MULTIPROGRAMACIÓN


_ Íntimamente ligado al concepto de
procesos, la multiprogramación



permite
administrar varios procesos en una sola CPU, alternando la



ejecución
de estos a través de controles de tiempo, asignando límites



temporales
de ejecución a cada proceso y alternándolos a medida que



este
límite es alcanzado.



///imagen 17


MULTIPROCESAMIENTO


_ Este es otro importante concepto dentro
de la administración de



procesos,
sin embargo a diferencia de la multiprogramación esta gestión



se
basa en la distribución de los procesos en múltiples procesadores.



///imagen 18





PROCESAMIENTO DISTRIBUIDO


_ En este caso la administración de los
procesos se complica un poco más



al
tener que distribuir la carga de procesamiento entre diferentes CPUs



pero
con el aditivo especial de que estas se encuentran en otras



máquinas,
la esencia del procesamiento distribuido es manejar todos los



recursos
de que dispone el conjunto distribuido como si fuesen una sola



máquina.


///imagen 19


///imagen 20














GESTIÓN DE MEMORIA.


La
memoria es uno de los principales recursos de la computadora, la cual debe



de
administrarse con mucho cuidado. Aunque actualmente la mayoría de los



sistemas
de cómputo cuentan con una alta capacidad de memoria, de igual



manera
las aplicaciones actuales tienen también altos requerimientos de



memoria,
lo que sigue generando escasez de memoria en los sistemas



multitarea
y/o multiusuario.



La
parte del sistema operativo que administra la memoria se llama



administrador de memoria y su
labor consiste en llevar un registro de las



partes
de memoria que se estén utilizando y aquellas que no, con el fin de



asignar
espacio en memoria a los procesos cuando éstos la necesiten y



liberándola
cuando terminen, así como administrar el intercambio entre la



memoria
principal y el disco en los casos en los que la memoria principal no le



pueda
dar capacidad a todos los procesos que tienen necesidad de ella.



Los
sistemas de administración de memoria se pueden clasificar en dos tipos:



los
que desplazan los procesos de la memoria principal al disco y viceversa



durante
la ejecución y los que no.



El
propósito principal de una computadora es el de ejecutar programas, estos



programas,
junto con la información que accedan deben de estar en la



memoria
principal (al menos parcialmente) durante la ejecución.



Para
optimizar el uso del CPU y de la memoria, el sistema operativo debe de



tener
varios procesos a la vez en la memoria principal, para lo cual dispone de



varias
opciones de administración tanto del procesador como de la memoria.



La
selección de uno de ellos depende principalmente del diseño del hardware



para
el sistema.



En
resumen el
administrador de memoria se encarga de los siguientes


puntos:


• Asignar memoria a los procesos para crear
su imagen en memoria



• Proporcionar memoria a los procesos
cuando la soliciten y liberarla



cuando
así lo requieran.



• Tratar los posibles casos de acceso a
memoria, evitando que unos



procesos
interfieran en la memoria de otros.



• Permitir que los procesos puedan
compartir memoria entre ellos. De esta



forma
puede haber comunicación entre los procesos.



• Gestionar la jerarquía de memoria y
tratar los fallos de páginas en los



sistemas
con memoria virtual.



Los
hechos demuestran que generalmente los programas crecen en



requerimientos
de memoria tan rápido como las memorias.



“Ley de Parkinson”: Los programas se desarrollan para ocupar


toda la memoria disponible para ellos.





GESTIÓN DE ARCHIVOS Y DIRECTORIOS.


_ Junto a los procesos el otro gran
componente de un sistema operativo



es el
sistema de archivos.



_ Todo proceso requiere para su ejecución
que los datos que va a utilizar



se
encuentren físicamente en algún sitio; lo que hace el sistema de



archivos
precisamente es permitir que esta información se pueda



organizar
de una manera lógica y sencilla.



_ Todo sistema operativo debe brindar las
herramientas (en forma de



llamadas
al sistema o instrucciones) para que el sistema de archivos sea



funcional,
entre las principales se pueden encontrar:



_ Las de creación y destrucción de
archivos.



_ Las de apertura y cierre de los archivos.


_ Las de lectura y escritura.


_ Un archivo realmente es una colección de bytes relacionados bajo


un único nombre.


_ Los archivos también se encuentran
organizados bajo una estructura



que
los relaciona lógicamente, esta estructura se denomina
directorio


(algunos sistemas los denominan también
como carpetas).



_ Debido a esto podemos ver que el sistema
de archivos es también una



estructura
jerárquica, la cual tiene un inicio en el directorio raíz (algunos



sistemas
operativos como los derivados de MS DOS -este incluidotienen



un
directorio raíz por cada partición encontrada en los discos).



///imagen 21





COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS.


Puede
verse la concurrencia de procesos como la ejecución simultánea de



varios
procesos.



Si
tenemos un multiprocesador o un sistema distribuido la concurrencia parece



claro,
en un momento dado cada procesador ejecuta un proceso.



Se
puede ampliar el concepto de concurrencia si entendemos por procesado



concurrente
(o procesado paralelo) la circunstancia en la que de tomar una



instantánea
del sistema en conjunto, varios procesos se vean en un estado



intermedio
entre su estado inicial y final. Esta última definición incluye los



sistemas
multiprogramados de un único procesador que estudiamos en los



temas
anteriores.



Los
distintos procesos dentro de un ordenador no actúan de forma aislada. Por



un
lado, algunos procesos cooperan para lograr un objetivo común. Por otro



lado,
los procesos compiten por el uso de unos recursos limitados, como el



procesador,
la memoria o los ficheros.



Estas
dos actividades de cooperación y competición llevan asociada la



necesidad
de algún tipo de comunicación entre los procesos.



La
velocidad de un proceso con respecto a otro es impredecible ya que



depende
de la frecuencia de la
interrupción
asociada
a cada uno de ellos y


cuán
a menudo y de por cuánto tiempo tiene asignado cada proceso un



procesador.


Entonces,
un proceso se ejecuta
asíncronamente
con respecto a otro, es


decir,
sus ejecuciones son independientes. Sin embargo, hay ciertos instantes



en lo
que los procesos deben sincronizar sus actividades. Son estos puntos a



partir
de los cuales un proceso no puede progresar hasta que otro haya



completado
algún tipo de actividad.



Los
procesos también necesitan comunicarse entre sí.



Por
ejemplo, para leer de un fichero, los procesos de usuario deben decir al



proceso
que gestiona los ficheros lo que desean. Este, a su vez, debe pedirle al



proceso
de disco que lea los bloques necesarios. Cuando el shell conecta dos



procesos
con un tubo, los datos de salida del primer proceso se transfieren al



segundo.
Se necesita que los procesos se comuniquen entre sí, con un



mecanismo
bien estructurado y no por medio de interrupciones.






SEGURIDAD Y PROTECCIÓN.


Facetas
de la seguridad:



• Protección ante posibles daños físicos de
los datos (fuegos, terremotos)



• Acceso indebido a los mismos (intrusos,
fallos de confidencialidad).



Los ataques contra la confidencialidad, la
integridad o la disponibilidad



de recursos en un sistema deben prevenirse y solventarse mediante la


política
y los mecanismos de seguridad de un sistema.



Protección: consiste en evitar que se
haga un uso indebido de los recursos



que
están dentro del ámbito del sistema operativo. Para ello deben existir



mecanismos
y políticas que aseguren que los usuarios sólo acceden a sus



propios
recursos (archivos, zonas de memoria).



La seguridad de un sistema operativo se basa
principalmente en tres



aspectos de diseño:


• Evitar la pérdida de datos: La
pérdida de datos puede deberse a



catástrofes
naturales o artificiales que afecten al sistema (terremotos,



guerras),
a errores del hardware o del software de la computadora



(rotura
de un disco) o a errores humanos (borrado accidental de



archivos).


• Controlar la confidencialidad de los datos: En el ámbito interno del


sistema
operativo hay operaciones que pueden violar la confidencialidad



de
los datos.



• Controlar el acceso a los datos y recursos: El control del acceso a


datos
y recursos sí es competencia directa del S.O. Es necesario



asegurar
que los usuarios no acceden a archivos para los que no tienen



permisos
de acceso a cuentas de otros usuarios o a páginas de



memoria
o bloques de disco q contienen información de otros usuarios.



Todos
los S.O. desarrollados hasta el momento han tenido algún problema de



seguridad.
Algunos son:



• Los fallos de UNIX que permitían que un
usuario pudiera abortar un



mandato
con permisos de súper usuario, como mkdir, y quedarse con la



identificación
de súper-usuario.



• En versiones antiguas de UNIX, cualquier
usuario podía leer el archivo



passwd
donde se almacenaban los usuarios y sus palabras clave



cifradas.


Problemas más frecuentes en un sistema informático - Uso indebido
o



malicioso de programas:





El caballo de Troya se
basa en la idea de crear un programa para que haga



cosas
no autorizadas en el sistema cuando actúa en el entorno adecuado. Ej:



editor
de texto modificado para que haga copias de los archivos a los



directorios
del intruso, programa de login modificado.



La puerta de atrás consiste
en crear un agujero de seguridad al sistema a



través
de un programa privilegiado que lo permite ejemplos:



• Convencer a un programador de sistema
para que le deje acceder con



privilegios
anormales.



• Permitir que el diseñador de un programa
se reserve el acceso por



medios
no conocidos, tales como una identificación reservada.



Las puertas de atrás no siempre son
perjudiciales o maliciosas. Pueden



tener varias causas:


• Se dejan a propósito para probar el
sistema



• Se dejan para mantener el sistema.


• Se dejan como un medio de acceso
encubierto, o canal.



Usuarios inexpertos o descuidados:


• Borran archivos no deseados, dejan
abiertos los accesos al sistema



durante
largo tiempo o escribir la palabra clave en un papel junto a la



computadora
son más frecuentes de lo que parece.



Usuarios no autorizados:


• Un usuario no autorizado, o pirata, trata
de saltarse o romper el proceso



de
autenticación para entrar en el sistema de computación con la



identidad
de un usuario legítimo, especialmente con la del administrador.



Si lo
consigue, puede hacer todo aquello a lo que su identidad falsa le



conceda
derecho. Acceder como administrador se puede hacer lo que



desee,
desde borrar datos hasta crearse una cuenta verdadera con



identidad
falsa o cambiar la contraseña del administrador para que sólo



pueda
acceder él.



Virus: programas que se
autorreplican con fines destructivos o de violación de



seguridad.
En todos los casos se trata de un programa o un trozo de código



que
se añade a otro y que se activa cuando se ejecuta el programa portador.



Cuando
esto ocurre, además de ejecutarse el portador, se ejecuta el virus.



Gusanos: El 2 de noviembre de 1988, R.
T. Morris, un estudiante de Cornell,



liberó
un programa gusano en Internet. El gusano leía las tablas de



encaminamiento
del sistema infectado y enviaba el cargador a todos los



sistemas
remotos que podía, usando para ello tres mecanismos de



penetración:


Intérprete de mandatos remoto (rsh).


Demonio del finger.


sendmail.


Este
gusano provocó la caída de miles de computadoras en la red, antes de ser



detectado
y eliminado.



El
principal problema de los gusanos no es que sean destructivos, que la



mayoría
no lo son, sino que colapsan las redes de comunicaciones.



Rompedores de sistemas de protección:


_ Estos programas llevan a cabo distintas
pruebas sobre sistemas,



generalmente
remotos, para tratar de romper la seguridad de los mismos y



poder
ejecutar accesos ilegales. Una de las pruebas que ejecutan



típicamente
consiste en tratar de adivinar las palabras clave que tienen los



usuarios
para acceder al sistema. Esta prueba, que se basa en distintos



tipos
de programas de cifrado y un diccionario de palabras clave, compara



las
del diccionario con las de los usuarios del sistema.



Bombardeo:


_ Consiste en llevar a cabo bombardeos
masivos con peticiones de servicio o



de
establecimiento de conexión a un servidor determinado. Estos ataques



masivos
provocan que el servidor deniegue sus servicios a los clientes



legales
y pueden llegar a bloquear al servidor.
Volver arriba Ir abajo
Contenido patrocinado





Clase 02 - Objetivos Empty
MensajeTema: Re: Clase 02 - Objetivos   Clase 02 - Objetivos Empty

Volver arriba Ir abajo
 
Clase 02 - Objetivos
Volver arriba 
Página 1 de 1.
 Temas similares
-
» Clase 1
» TALLER # 1 EN CLASE
» Taller en clase 2
» taller en clase
» CLASE 01 - ¿Que es un Sistema operativo?

Permisos de este foro:No puedes responder a temas en este foro.
Sistemas y Telecomunicaciones :: Foro de Sistemas Operativos :: Material de Apoyo-
Cambiar a: