Está en la página 1de 40

Sistemas Operativos

Procesos e Hilos
Infraestructura
• La infraestructura de IT es todo lo que está detrás de esos Sistemas.
• Comprende el hardware, el software por ejemplo sistemas operativos,
gestores de bases de datos, capacitación, consultorías, etc.
• Hardware
• Sistemas Operativos
• DBMSs
• Sistemas de Información
• Redes y conectividad
• Seguridad
Infraestructura
• Qué preguntas se debe hacer el gerente de IT respecto a infraestructura ?
• • ¿Qué tecnologías necesitan las empresas en la actualidad para realizar su
trabajo?
• • ¿Qué necesito saber sobre estas tecnologías para asegurar que mejoren el
desempeño de la empresa? Medir el impacto de cada tecnología concreta de
modo de justificar su inversión.
• • ¿Qué tan probable es que vayan a cambiar estas tecnologías en el futuro?
• • ¿Qué tecnologías y procedimientos se requieren para asegurar que los sistemas
sean confiables y seguros ?
El negocio de la infraestructura
• En EEUU, en el año 2010, la inversión en infraestructura de IT, fue de U$S
1.000.000.000.-
• También, mismo año, la inversión en consultorías y capacitación en torno a
infraestructura de IT fue de U$S 800.000.000.-
• Al año, en 2010, en EEUU, se gastaron U$S 1.800.000.000.- en
infraestructura.
• Estamos frente a un área de la informática que se destaca.
• Esto es entre el 25% y el 50% de los gastos totales en IT en las
organizaciones consideradas.
Eras de la infraestructura
• MAINFRAMES ------------ computadora central y terminales tontas. (60s 70s)
• PCs standalone ------ 80’s
• PCs en red con algún server local ----- segunda parte de los 80’s
• PCs y servers integrados en la organización y con conexión a internet 90’s
• La NUBE ----- 2000…

• Impulsores de esta evolución


- Ley de MOORE. Mejora exponencial en el desempeño de las CPUs. Tenemos computadoras y hardware
exponencialmente más poderoso.
- Ley del almacenamiento digital masivo. Los progresos en el almacenamiento y descenso de sus costos
permiten lidiar sin problemas con la producción creciente de información.
- Ley de Metcalfe. En las economías de red (basadas en tecnologías de red) donde cada uno que entra se conecta
con todos, los rendimientos crecen exponencialmente con la cantidad de individuos.
- Descenso exponencial del costo de comunicación y acceso a Internet
- Descenso exponencial del costo de almacenamiento digital

• Estas tendencias se siguen afirmando.


• Los estándares son acuerdos entre todos los actores en la cadena de valor, incluido el usuario final.
Los estándares desatan enormes economías de red, con las consiguientes reducciones de precios.
Definició n de Sistema
Operativo
Un sistema operativo es un conjunto de programas que administran los
recursos del sistema, proporcionando y arbitrando el acceso a los mismos
por parte de los usuarios del sistema.
•  
 El SO es software. Es software de bajo nivel. Es la primera capa de software arriba de la arquitectura. Provee servicios a las capas que
le siguen.
 Trata al hardware como un conjunto de recursos.
 Proporciona acceso a los recursos por parte de los procesos.
 Reconoce los usuarios a través de cuentas de usuario, y les asigna derechos sobre los recursos del sistema.
 Arbitro y administrador del acceso a los recursos.
 Proporciona una interfaz de usuario para acceder a los recursos. Shell. Las hay orientadas a comandos de línea u orientadas a GUIs,
basadas en ventanas e íconos.
 Proporciona una interfaz para acceder a los recursos por parte de los programas que corren sobre el sistema operativo. Estas son las
system calls.
 Proporciona mecanismos de seguridad, ya que es la primera capa involucrada directamente contra los recursos.
 Es el nexo entre hardware y software.
 Provee un ambiente o entorno de trabajo, que es mucho más que el Shell. Comprende compiladores, debuggers, editores,
herramientas de gestión de respaldos, etc.
 La parte de más bajo nivel del sistema operativo, se llama Núcleo o Kernel del sistema. Comprende toda la gestión de recursos.
• El sistema operativo proporciona abstracciones “simpáticas” para un
hardware “antipático”.
Evolució n de los SO
• Actividad 1: Máquinas de Babbage
• Se fabricó ?
• Usaba electricidad ?
• Computaba ?
• Qué computaba ?
• 1822 1830 Máquinas de Babbage.
• Diseñada. Imposibilidad de fabricarla con las tecnologías de la época.
• Fabricada en nuestros tiempos, museos.
• Este video tiene una demo del funcionamiento
• https://www.youtube.com/watch?v=BlbQsKpq3Ak
• Basada en engranajes.
• Mecánica.
•  
- Entrada
- Salida
- Operación
- Evaluaba polinomios
- Variables
- Abstracción de la memoria por medio de uso de variables
- Programa
- Pretendía ser usada para producción de tablas con cálculos, por ejemplo las tablas de logaritmos.
Evolució n de los SOs
• Máquina de Hollerith
• Año?
• Para qué se usaba ?
• Precursora de qué compañía ?
• Cómo funcionan las tarjetas perforadas ?
• Cuál es la E P S ?
• 1896- Máquina de Hollerith. Tabuladora. Antecesor de IBM.
•  
• Link interesante https://www.youtube.com/watch?v=Cdvj1oATyD0
•  
• Un poco dejó sentadas las bases de la computación hasta los años 70’s. En ella
estaba la característica de la ESCASA MEMORIA.
• Al tener poca memoria, los datos no pueden ser almacenados e interrogar la
BD, por ejemplo. En lugar de ello, hay que “verlos pasar” y extraer
conclusiones: contar, contar selectivamente, etc.
•  
• El censo de EEUU fue uno de los problemas en 1890’s que motivó esta
tecnología.
•  
• Aparecen las tarjetas perforadas, los censores perforaban las mismas en
función de las respuestas de la gente, y la máquina las procesaba.
Primera generació n
• Año ?
• Tecnología ?
• Propósito ?
• ENIAC
• Programable ?
• Cuál fue el primer sistema operativo ?
• Para qué servía ?
• La PRIMERA GENERACION, con máquinas computadoras eléctricas funcionando con
válvulas de vacío, data de 1940’s.
•  
• Alan Turing como uno de los teóricos destacados, en particular en el estudio de qué
problemas son computables y cuáles no.
• John Von Neumann como matemático autor de la descripción de la Arquitectura Von
Neumann que abstrae el funcionamiento de las computadoras.
•  
• https://www.youtube.com/watch?v=Ml3-kVYLNr8
•  
• https://www.youtube.com/watch?v=d2NWPG2gB_A
•  
• https://www.youtube.com/watch?v=32o4qcYbWMA
•  
• El ENIAC, 1944, es el gran exponente de esta generación.
•  
• De alguna forma aparece aquí la informática moderna.
• Al final de la primera generación, en 1953, aparece el primer SISTEMA
OPERATIVO.
•  
• El contexto es que la industria tenía una gran necesidad de procesar datos!
•  
• El sistema operativo aparece como un programa que, al correr sobre él el
resto de los programas, permitía abstraer la ENTRADA/SALIDA, es decir, la
interacción con los diferentes dispositivos.
•  
• Surge desde la programación! Este programa resuelve de una vez y para el
resto, la E/S.
• Enseguida, aparece el interés por explotar más el hardware. Por ello, el sistema operativo asume el rol de ejecutar cada
programa, y se organizan en una lista de ejecución. De ese modo no dependemos del operador. Este ya no ordena la
ejecución individual de las tarjetas de un programa, sino que proporciona a la computadora una secuencia de grupos
de tarjetas, correspondientes a los demás programas.
• Este metaprograma, el sistema operativo, pasa a gobernar la ejecución secuencial, batch, del resto.
• Abstraer los servicios de entrada/salida, de forma que los programadores no tuvieran que programar esos drivers cada
vez. Aparece un metaprograma, es decir, un programa que corre por encima de los demás, que es el sistema operativo y
les brinda servicios que implican acceso al hardware para los demás procesos.
• Enseguida el sistema operativo pasó a ocuparse de la ejecución BATCH.
• El batch implica armar una FILA DE EJECUCIÓN, entonces ya no se ejecuta un programa sólo, sino un lote. Quien
administra la ejecución del lote en su totalidad? El sistema operativo.
• Esto hace que se requiera menos intervención del operador.
• La computación interactiva NO EXISTIA aun. No había monitores, teclados, nada.
• La computación era Tarjetas como entrada, impresión como salida.
• Era una computación de escasa memoria, es decir de observación de esos datos contenidos en las tarjetas y extracción
de conclusiones acerca de los mismos.
• Las computadoras eran eléctricas, con válvulas de vacío.
• Desde este momento, el sistema operativo emerge, como herramienta, que busca maximizar el aprovechamiento del
hardware. Por ahora, en la generación 1, esto lo logra, armando una fila de trabajos, que va ejecutando, sin intervención
del operador.
Segunda Generació n (60s)
• El cambio tecnológico fue la aparición del Transistor, como tecnología que
sustituye a las válvulas. Equipos más chicos, menos liberación de calor, menor tasa
de falla.
• Se consolida la forma de trabajo en batch, es decir, lotes de trabajo.
• Pero aparece un hardware muy interesante: la cinta magnética.
• Las unidades de cinta se comienzan a usar para almacenar datos.
• Y entonces tenemos las cintas como almacenamiento secundario, pero también
con un rol fundamental dentro de la optimización del desempeño del sistema.
• Así aparece el batch de segunda generación.
•  El batch de primera generación básicamente ejecuta una secuencia de programas,
los cuales se ponen en la máquina a través de sus tarjetas correspondientes.
• Esto es un trabajo batch, gestionado por el sistema operativo, y ya constituía una
optimización en el funcionamiento del sistema.
• Tenemos el batch de segunda generación.

• El mismo se auxilia de las unidades de cinta para aumentar la velocidad de trabajo.

• Intervienen:

 una SUBCOMPUTADORA DE ENTRADA (en el ejemplo la 1401)


o Toma las tarjetas y las carga en una cinta
 una SUBCOMPUTADORA DE SALIDA (en el ejemplo la 1401)
o Toma una cinta e imprime su contenido
 una SUBCOMPUTADORA PRINCIPAL (en el ejemplo la 7094)
o Toma una cinta, computa, y coloca la salida en otra cinta.

• Con esto logramos que la computadora principal, la 7094 en el ejemplo, que es la más cara, trabaje más rápido, al no tener
que interactuar contra dispositivos lentos como la lectora de tarjetas perforadas o la impresora.
• Por qué hacemos todo esto? Por performance.
• El sistema operativo adopta la nueva responsabilidad de gestionar el intercambio entre las
subcomputadoras.
• El nivel de sistema operativo va ganando responsabilidades.
• Aparece otra mejora en el hardware que son las interrupciones.
• Esto consolida a la CPU como el elemento central de la computadora. Y el resto de los dispositivos
quedan subordinados a ella, y se los denomina periféricos.
• Es nuevamente el SO quien gestiona la ejecución de las rutinas de atención de las interrupciones.
• Esta forma de funcionamiento a través de interrupciones es mucho más eficiente que su predecesora,
el POLLING (escrutinio). En ella, la CPU debía preguntar a cada dispositivo, si tenía algo para decirle.
Esto es altamente ineficiente ya que se desperdician muchos ciclos de reloj.
• Esta forma de trabajo nueva, basada en interrupciones, implica un paralelismo intrínseco del
funcionamiento de los elementos de la computadora, y si tienen que comunicarse con la CPU, le
avisan.

De esta forma, el sistema operativo sigue consolidándose como un elemento central en la
coordinación del funcionamiento de las partes de la computadora.
• Aparece el concepto de OVERHEAD. Sería el cómputo administrativo, que es
cómputo que es cómputo pues consume recursos, pero que no es cómputo
entanto que no hace a la ejecución de los programas de usuario. El
overhead viene dado por la EJECUCION DEL SISTEMA OPERATIVO. Todos los
sistemas operativos tienen overhead, lo cual implica consumir recursos.
• Cómo funciona una interrupción: por ejemplo el disco genera una
interrupción a la CPU avisando que un dato que le pidieron antes, está
disponible. El SO examina la interrupción, de acuerdo a su número, y va a la
ejecución del handler correspondiente. En función de dicha ejecución se
tomarán las medidas necesarias para procesarla. Esas medidas vienen en el
código del handler, que usualmente es parte de los drivers del dispositivo,
para el SO correspondiente.
•  
• Aparece el buffering: superposición de cómputo de dos procesos.
• Tenemos un proceso A que viene ejecutando… qué pasa cuando A solicita un recurso ? por ejemplo un
dato de una cinta. El sistema debe esperar a recibir la interrupción de que el dato está disponible.
• Mientras esperó ¿ qué hizo la CPU, qué ejecutó ? NADA!
• Y esto es un desperdicio de CPU.
• Entonces se propone trabajar con 2 programas a la vez. El “titular” A y el “suplente” B.
• Ejecuta el proceso titular A, de pronto hace una solicitud a la cinta y debe esperar la interrupción. SE LE
QUITA EL PROCESADOR y se le da el control al proceso suplente B. Éste ejecuta hasta que ocurre la
interrupción por la cual A esperaba, en ese momento se le quita el procesador a B y se le devuelve a A.
• Esto se llama buffering.
Es una primera forma de multitasking (de 2 tareas).
• Esto evita la pérdida de ciclos de reloj por la espera de A, ya que durante la misma insertamos en las tareas
de la CPU el cómputo de B.
• Esto se puede generalizar a N procesos. Se llama multitasking.
• En la medida que la disponibilidad de memoria lo permitió, fue apareciendo el multitasking.
• Ponemos n procesos en memoria, y cada uno va ejecutando, y si ocurre una interrupción O si llega a un
máximo de tiempo pactado, entrega la CPU, ejecuta otro y así sucesiva y circularmente.
• Aparecen los discos duros. Permitían guardar información en forma aleatoria,
no secuencial como la cinta. Eran por tanto más rápidos y versátiles.
• Otra característica de la segunda generación es el spooling, que comienza a
aparecer. SPOOL quiere decir simultaneus process operation on line…
• Significa que interponemos entre un dispositivo lento y la CPU, un dispositivo
más rápido.
• Por ejemplo, la impresora es muy lenta, entonces antes de mandar la
impresora, mandamos a disco, y disco se manda por medio de otro proceso, a
la impresora, a través de la cola de impresión. Puedo continuar trabajando
antes, y después en background, se resuelve la impresión.
• Detrás de todas estas mejoras, está el sistema operativo.
• Al final de la segunda generación, encontramos computadoras que aún no son
interactivas, ni tiempo compartido, y que básicamente trabajan con tarjetas,
cintas, algún disco, y papel.
Tercera Generació n (70s)
• La novedad tecnológica son los circuitos integrados, cuyos componentes están unidos por
medio de placas. Esto reduce el volumen (tamaño), libera menos calor, ya no es necesario
refrigerar con agua, baja la tasa de fallas…
• Las computadoras de tercera generación son los mainframes.
• Al comienzo de esta tercera generación la computación era básicamente BATCH.
• En la segunda mitad, la computación soportaba tres modos: BATCH, TIEMPO COMPARTIDO y
STR.
• El tiempo compartido revolucionó el uso de las computadoras.
Los STR exigían un uso dedicado de la computadora.
•  
• Un exponente de esta época, en su PRIMERA FASE es el mainframe IBM 360 (1964). Hacía
trabajo BATCH.
• 16 Kb RAM. 0,3Mhz.
• Costo del orden del millón de dólares en 1964, hoy serían unos U$S 8 millones.
• La computación aún era de escasa memoria.
• Tarjetas, ver pasar datos, y sacar listados.
• Su sistema operativo, el OS 360, era monolítico, lleno de bugs, una pieza
enorme y compleja de software, escrito en Assembler. Tenía
Multiprogramación, Spooling, arbitraba la memoria entre los procesos
alojados en ella…
• Este sistema operativo, estaba lleno de problemas, y era un claro exponente de “la crisis
del software”.
• Qué desató la crisis del software?
• Cada programador programaba a su modo, no se documentaba, y se extrapolaban las
técnicas de “programming in the small” al “programming in the large” que estaba
emergiendo, porque el hardware ya permitía hacer más cosas.
• Estos anteriores y otros factures motivaron la crisis: software mal hecho, entregado fuera
de tiempo, clientes furiosos, multas, proyectos abandonados, etc.
•  
• El OS 360 es un claro ejemplo de algunas de estas cosas.
• Cuál fue la respuesta ? La ingeniería de software: tratamos el desarrollo de software
como un problema de ingeniería, documentamos, planeamos, gestión de proyectos,
estándares, mediciones, presupuestación rigurosa etc. Conceptos de ingeniería,
conceptos de calidad, etc.
•  
• Aparecen, para la segunda mitad de la tercera generación, los sistemas de tiempo compartido.
• Qué es ?
• Es un sistema multitarea, multiusuario, donde los diferentes usuarios trabajan de a varios a la vez, a partir
de terminales tontas interactivas.
• Interactivas porque tienen Monitor, Teclado, … tontas porque no tienen CPU.
• El mainframe con n terminales, no es una red, es una computadora con n puestos de trabajo.
• Esto constituyó un enorme desafío para los desarrolladores.
• El primer sistema de tiempo compartido el CTSS.(Time Shared System).
• Aparece el fracasado proyecto MULTICS, que guarda relación con Unix.
•  
• El protagonista de esta tercera generación es el MAINFRAME. Los mainframes dominan el cómputo
empresarial hasta los 90s, donde son desplazados por las redes.
• Los mainframes podían trabajar como STR, sistema Batch o como Sistema de Tiempo Compartido.
Llamadas minicomputadoras, por ser del tamaño de una heladera y ya no cuartos enteros.
• Computadoras muy potentes, que comparten recursos entre usuarios online. Estos usuarios comparten y
también COMPITEN por los recursos. Si un usuario acapara cómputo, por ejemplo ejecutando algo pesado,
entonces perjudica el funcionamiento del resto.
• Las terminales tontas no tienen CPU. Si yo hago 2+2 en la terminal, esta le manda a la CPU, “dice que
2+2”… entonces la CPU hace el cálculo 2+2=4, y le pasa a la terminal “decile que 4”.
• Hay una sola compartida y es compartida y competida por todos.
• Aparece como consecuencia, la computación interactiva, esto es usuarios frente a monitores y
teclados, que dan órdenes a la computadora y reciben respuesta en segundos.
• El multitasking, esa ilusión que provee el sistema operativo, da soporte a esta forma simultánea
de atender los procesos de usuarios diferentes y también de atender los procesos concurrentes
en los sistemas de tiempo real.
• El tiempo de ejecución, en el batch, era grande, porque había que entregar el trabajo a realizar al
operador y este ejecutaba. Ahora la ejecución ocurre de forma instantánea prácticamente.
• El proceso de codificación, y extracción de errores, se modernizó gracias a la computación
interactiva.
• El sistema operativo, nucleando a las herramientas que dan soporte a esta forma de trabajar, se
transforma en un Ambiente de trabajo.
• Esto lo consolida aún más como herramienta.
• La multiprogramación, al haber memorias más grandes, soporta más procesos, y ataca entonces
más problemas y da soporte a todo esto.
• Aparece la memoria virtual, como respuesta desde el sistema operativo a la escasez de memoria
RAM. Destinamos un poco de disco a que se comporte como RAM y el SO administra estar ilusión.
• Esta ilusión de la memoria virtual, permite que la computadora se comporte
como si tuviera más RAM que la que tiene. El faltante lo administra el SO
desde el disco. Esto permite ejecutar programas grandes, más grandes,
incluso más grandes que la memoria RAM.
• Estos sistemas operativos del final de la tercera generación comienzan a
tener la influencia de la ingeniería de software: documentados, planificados,
modularizados, escritos en lenguaje de alto nivel, etc.
Aparece Unix
• Unix es la última gran revolución en torno a los sistemas operativos.
• Sienta las bases de los sistemas operativos modernos.
• Linux es un Unix. Android y IOS son Linux.
• En 1969 fracasa el proyecto MULTICS entre Bell Labs y GE
• Este pretendía dar computación a través de terminales, a toda una ciudad.
• Muy ambicioso proyecto, fracasa.
• Escrito en el lenguaje de Alto Nivel PL/1. Esto es muy importante para la claridad, la mantenibilidad, etc.
• Fracasó.
• En los Bell Labs, Thompson y Ritchie, estaban programando un juego, Space Travel sobre una pdp7. Para ello desarrollaron un ambiente de trabajo, el
que llamaron UNICS.
• Uniplexed Computer System
• Este nombre es un chiste respecto a Multics. Donde decían Multiplexed Computer System.
• Desde aquí evolucionó el sistema operativo.
• Lo migran a una versión de 16Kb sobre una PDP11
• Se desarrollan los lenguajes B y C. Se reescribe Unix en C.
• Así, tenemos un sistema operativo tan portable como su compilador.
• Desde acá Unix se expande en dos dimensiones: Ambientes académicos, el referente es BSD (Berkeley Standard Distribution) y Ambientes
comerciales (System V).
• Este sistema operativo era ideal para los mainframes. Proporcionaba características multitarea y multiusuario. Su file sytem permitía asignar permisos
y dueños.
• Más asuntos de los 70s además de la aparición de Unix.
• Aparece el protocolo Ethernet, la red ARPANET, los protocolos TCP/IP. Se dan las bases para el desarrollo posterior
de la computación en red.
• Aparecen los primeros problemas de seguridad, hackers, encriptación, herramientas de comunicación, email,
transferencia de archivos, etc.
• El sistema operativo dando soporte a todo eso, como un ambiente de trabajo.
• https://www.youtube.com/watch?v=pvaPaWyiuLA
• Un PDP 7 funcionando conectado a algunos dispositivos actuales.
• Un PDP 11:
• https://www.youtube.com/watch?v=XV-7J5y1TQc
• https://www.youtube.com/watch?v=tWOfN9p5E8k
•  
• Con la cuarta generación llega el PC.
• https://es.wikipedia.org/wiki/IBM_PC
•  
• Sin embargo los PCs sin redes no podían desplazar a los mainframes. Se requirió de PCs+Redes para igualar y
superar el producto de la tercera generación, los mainframes.
Cuarta generació n (80s)
• Con la cuarta generación llega el PC.
• https://es.wikipedia.org/wiki/IBM_PC
• 3,56 Mhz Procesador Intel 8086 luego 8088… Máquina de 16 bits.
• 256 Kb RAM
• Si tenía disco duro era del orden de los 10 Mb
• El procesador era un MICROPROCESADOR, y las computadoras, se decían MICROCOMPUTADORAS,
al referirnos ya a máquinas que no eran del tamaño de una heladera, sino algo que se ponía sobre
el escritorio.
• El primer microprocesador fue el P4004 de Intel, para una calculadora.
• En los 80s el procesador z80 fue muy popular. Era de 8 bits, y dio origen a muchas computadoras
domésticas en los años 80s.
• Por ejemplo el ZX Spectrum, 16Kb ROM, 48 Kb RAM, cargaba los programas en cintas de casete, y
desplegaba video en un TV común. En estas computadoras algo muy interesante es que el propio
lenguaje Basic hacía las veces de sistema operativo, pues tenía integrados comandos de
procesamiento de archivos. Por ejemplo la carga.
• En el IBM PC surge el MS DOS de la empresa Microsoft.
• El PC era una integración de varias tecnologías:
• Intel……………… Procesador
• Fabricantes varios……… Memorias
• Fabricantes varios……… Discos
• Placa madre, tarjeta video, sonido, …. Electrónica relativamente simple, de la cual
IBM era un integrador.
• Usaba un bus de tecnología ISA.
• El PC rápidamente fue clonado.
• El SO fue la parte más jugosa, por las licencias.
• Microsoft despegó al influjo del PC.
• IBM contraatacó con el IBM PS/2, jugada orientada a protocolos de arquitectura
Micro Channel, cerrada, con férreas políticas anti clone, que hizo que el mercado la
rechazara.
• Toda esta computación de escritorio, sin las redes, no constituía un avance frente a lo logrado con los mainframes, que
tenían mayor poder de cómputo y la posibilidad de compartir recursos.
• Sin embargo los PCs sin redes no podían desplazar a los mainframes. Se requirió de PCs+Redes para igualar y superar el
producto de la tercera generación, los mainframes.
• Una red es un conjunto de computadoras autónomas interconectadas.
• Autónomas implica CPU y memoria propias.
• Interconectadas porque existe algún medio que les permite el intercambio de datos.
• Las redes permiten compartir recursos de cómputo. Esa es su razón de ser.
• Los PCs en red logran igualar la potencia de cómputo de los mainframes. Este es un gran logro que se consolida en los 90’s.
• Ventajas:
1) Técnica: en la red y en el mainframe se comparten recursos. Pero en el mainframe se compite por los recursos vitales CPU y
memoria. En la red estos permanecen exclusivos de cada máquina.
2) Económica: La red es escalable, mientras que en el mainframe la potencia de cómputo (la cantidad de puestos, de
terminales tontas) debe comprarse toda junta.
• Si tenemos una empresa que comienza y tiene 10 empleados, que si todo va bien serán 100 y si todo va muy bien serán
500. Qué capacidad compro ? Con el mainframe capaz que tengo que arrancar con 100… en cambio con la red, arranco
gastando por 10, y veo gradualmente.
1) Financiera: Lo anterior tiene una consecuencia financiera, por dos razones: la primera porque yo gasto dinero de inversión
de los dueños, en los 10 primeros pcs del ejemplo anterior, pero luego, los otros, los compro con dinero generado por el
propio negocio. La segunda razón, estrictamente financiera, es que cuanto más tarde pueda hacer un gasto, mejor.
• Además como la tecnología avanza agresivamente, el “comprar cómputo por las dudas” es carísimo. Y el comprar
“cómputo de menos” si luego tengo que comprar de nuevo, es carísimo.
• Aparece el concepto de SO distribuido, como un SO que trabaja sobre la red y oculta su presencia, haciendo que ese
conjunto de máquinas se comporten como un todo.
• Hay dos operaciones en torno a esto:
• Virtualización: una arquitectura se comporte como un conjunto de máquinas físicas, cada una con su sistema operativo.
Ej VM Ware
• Clusterización: un conjunto de máquinas simples se unen bajo una sola vista lógica. Y lo hacen gracias a algún sistema
operativo para clusterización.
• Esto da la base también para computación en la nube, etc.
• Aparecen nuevas herramientas de comunicación con las redes.
• Aparecen los desafíos de seguridad, derivados de la conectividad. Ej Hackers.
• Aparece la necesidad de auditar.
• El auditor sale a detectar sin proporcionar una barrera.
• Cuando se auditan se revisar los…. LOGS, que son registros de transacciones de cualquier tipo.
• Aparecen también las herramientas Cliente/Servidor.
• Esto implica herramientas que se desarrollan partidas en 3: el core, en el servidor, los aspectos de interfaz en el cliente, y
el protocolo de comunicación, en la comunicación entre ambos.
• Las herramientas cli/serv buscan optimizar el tráfico en la red, que claramente si fuera, todos contra todos, sería más
ineficiente.
• Aparecen nuevas posibilidades de herramientas de comunicación, de transmisión de datos, la necesidad de comunicar
entornos o plataformas diferentes, etc.
• Un uso más intensivo de las redes implica el cómputo en la nube. Implica una serie de tecnologías para
abstraer las redes y así comportarse las máquinas o conjuntos de máquinas en forma abstracta,
manifestándose como servicios que vemos a través de la red.
•  
• Los desafíos en torno a Sistemas Operativos
 Conectividad----------- Seguridad. Logramos alta conectividad de todos los componentes. Necesitamos
garantizar seguridad.
 Sistemas abiertos------------- La dicotomía que plantean las familias incompatibles de herramientas, por
ejemplo Win/Linux, plantea problemas de uso que podrían considerarse para futuras soluciones.
 Paralelismo ------------- Las arquitecturas nos entregan multiprocesador, multinúcleo, etc y sin embargo
desde el SO aún no se puede gestionar en forma automática esa concurrencia. Se necesita que el
programador indica exhaustivamente qué hacer.
 Sistemas distribuidos-----------Grandes progresos basados en clusterización y virtualización. Se va hacia
los servidores virtuales, sistemas virtuales que esconden la red subyacente y por tanto cumplen con la
definición de SO distribuido.
 Mejoramiento de la interfaz con el usuario. Hitos en la comunicación con el usuario: 60’s interfaces de
comandos, 80’s interfaces gráficas GUIs, 00’s interfaces táctiles. Sin embargo todo esto podría ser poco
para manejar computadoras cada vez más potentes.
•  
Familias de SOs
• https://es.wikipedia.org/wiki/Unix
•  
• https://upload.wikimedia.org/wikipedia/commons/7/77/Unix_history-simple.svg
•  
• https://androidemulador.com/diferencias-entre-android-linux-y-linux/#:~:text=Android%20uti
liza%20el%20n%C3%BAcleo%20Linux,comenzar%20con%20lo%20que%20no
• Android utiliza el núcleo de Linux pero no hay una compatibilidad total.
• IOS deriva de MacOS que deriva de Unix.
•  
• Windows……….. y los sistemas operativos de Microsoft.
•  
• https://es.wikipedia.org/wiki/MS-DOS
• EL MS DOS es un sistema operativo monotarea, monousuario, creado para el IBM PC en 1981.
• Basado en una interfaz de comandos, evolucionó a la par del PC.
Microsoft…
• Puntos importantes a marcar. Hay dos ramas de evolución, y este artículo sólo cubre una.
• Estas ramas se dan al dar la versión siguiente a Windows 3.11
• En la rama doméstica, es todo lo dicho:
• Windows 3.11
• Windows 95
• Windows 98
• Windows Me
• Windows XP
• Windows Vista
• Windows 7
• Windows 8
• Windows 10
• Pero, en las versiones PROFESIONALES, es decir, de empresa, la evolución es otra.
• Windows NT (la versión 3.51 es de las más conocidas. Luego Windows NT 4.0 es una versión muy estable del producto).
• Windows NT venía en dos versione: WINDOWS NT WORKSTATION (WS) para las computadoras que iban a interactuar contra un
server y WINDOWS NT SERVER como sistema operativo para el server. Este sistema operativo está perfectamente a la par de un
Unix/Linux.
• Windows NT fue sustituido por Windows 2000. Win 2000 ws y win 2000 server
• Windows 2000 workstation, fue sustituido por Windows XP Pro.
• Windows 2000 server, fue sustituido por Server 2003.
• Aquí hay un timeline específico:
• https://www.timetoast.com/timelines/versiones-de-windows-server
• WINDOWS Server 2003
• Windows Server 2008
• Windows Server 2009
• Windows Server 2012
• Windows Server 2016
• Windows Server 2019
• https://internetpasoapaso.com/versiones-windows-server/
• Qué pasó con los Windows Workstation ?
• Son los que está previsto trabajen contra los servers, sin ser las versiones domésticas livianas…
• Windows NT workstartion
• Windows 2000 ws
• Windows XP Pro
• Windows Vista Pro
• Windows 7
• Y desde acá POR SUERTE ! converge con las versiones de usuario final.
Recapitulando características
• Algunas características de los sistemas operativos.
• MULTITAREA: Un sistema operativo es multitarea si soporta la ejecución concurrente de múltiples procesos. Un
proceso es un programa en ejecución.
• MULTIUSUARIO: Un SO es multiusuario si reconoce diferentes figuras de usuarios, con diferentes derechos, derechos
de acceso a los recursos del sistema. Cada usuario se manifiesta por medio de una cuenta de usuario, la cual
constituye un conjunto de derechos. El file system permite (si permite) asignar dueños y permisos a los archivos
siendo el elemento fundamental para considerar multiusuario a un SO.
• MULTISESION: el SO es multisesión si permite que los usuarios trabajen en sesiones concurrentes. Sea o no en
escritorios remotos.
• Unix, Linux ---------- Multitarea multiusiario multisesión
• DOS ---- Monotarea Monousuario Monosesión
• DOS bajo alguna NDS con permisos en los archivos ----- Monotarea Multiusuario Monosesión
• Windows XP sobre FAT ---- Multitarea Monousuario Monosesión
• Windows 10 sobre NTFS ---- Multitarea multiusuario Monosesión (salvo algún software específico que se agregue)
• Windows NT sobre FAT ---- Multitarea multiusuario Monosesión
• Windows 10 sobre NTFS contra Windows Server 2019 ---- Multitarea Multiusuario Multisesión.
•  
• El tema de la multisesión marca grandes diferencias entre el mundo Unix y el mundo Mcsft por tener ambos
diferentes visiones del PC de escritorio o de la notebook.

También podría gustarte