Você está na página 1de 61

Generalidades de los

Sistemas Operativos
Facultad de Ciencias de la Ingeniería
Ingeniería Informática y Ciencias de la
Computación

Ing. Jonathan Carrillo


Quito, Abril 2018

Operating System Concepts – 9th Edit9on Silberschatz, Galvin and Gagne ©2013
Contenido
 Estructura y funcionamiento de un computador
 ¿Qué es un sistema operativo?
 Historia de los sistemas operativos
 Entornos Informáticos
 Lenguaje de Programación para Laboratorios

Operating System Concepts – 9th Edition 1.2 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

 Computer system can be divided into four components:


 Hardware – provides basic computing resources
 CPU, memory, I/O devices
 Operating system
 Controls and coordinates use of hardware among various
applications and users
 Application programs – define the ways in which the system
resources are used to solve the computing problems of the
users
 Word processors, compilers, web browsers, database
systems, video games
 Users
 People, machines, other computers

Operating System Concepts – 9th Edition 1.3 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

Operating System Concepts – 9th Edition 1.4 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

Operating System Concepts – 9th Edition 1.5 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

Operating System Concepts – 9th Edition 1.6 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

Operating System Concepts – 9th Edition 1.7 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

Operating System Concepts – 9th Edition 1.8 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

 Computer-system operation
 One or more CPUs, device controllers connect through common
bus providing access to shared memory
 Concurrent execution of CPUs and devices competing for
memory cycles

Operating System Concepts – 9th Edition 1.9 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

 Storage Systems organized in hierarchy

CPU
Palabras
 Speed

 Cost Storage
Memory
Bloques
 Volatility
I/O

Operating System Concepts – 9th Edition 1.10 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

 Storage Systems

ALMACENAMIENTO
VOLATIL
ALMACENAMIENTO
PRIMARIO

solid state drive

SSHD

ALMACENAMIENTO
ALMACENAMIENTO
SECUNDARIO O

NO VOLATIL
EN CONEXION

ALMACENAMIENTO
TERCIARIO O
SIN CONEXION

Operating System Concepts – 9th Edition 1.11 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

 Storage Systems organized in hierarchy

Operating System Concepts – 9th Edition 1.12 Silberschatz, Galvin and Gagne ©2013
Estructura y funcionamiento de un computador

 Engineered Storage Solutions

Operating System Concepts – 9th Edition 1.13 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?

 Los sistemas operativos realizan dos funciones básicas que


no están relacionadas (Tanenbaum):
 proporcionar a los programadores de aplicaciones (y a
los programas de aplicaciones un conjunto abstracto de
recursos simples, en vez de los complejos conjuntos de
hardware;
 y administrar estos recursos de hardware
 Controla todos los archivos, todos los dispositivos, todas las
secciones de la memoria principal y todos los nanosegundos
del tiempo de procesamiento. Controla quién y cómo puede
usar el sistema. (Choes-Flynn)
 El sistema operativo es el principal programa que se ejecuta
en toda computadora de propósito general. (GunnarWolf)

Operating System Concepts – 9th Edition 1.14 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?
Silberschatz, Galvin and Gagne:
 OS is a resource allocator

 Manages all resources


 Decides between conflicting requests for efficient and
fair resource use
 OS is a control program

 Controls execution of programs to prevent errors and


improper use of the computer

Operating System Concepts – 9th Edition 1.15 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?

 No universally accepted definition


 “Everything a vendor ships when you order an operating
system” is a good approximation
 But varies wildly
 “The one program running at all times on the computer” is
the kernel*.
 Everything else is either
 a system program (ships with the operating system) , or
 an application program.

*El Kernel es el núcleo del sistema operativo. Actúa como un


intérprete entre el usuario y el hardware. El kernel controla el acceso a
los recursos de hardware de la computadora y determina como
compartir estos recursos de una manera equitativa. El kernel incluye los
drivers del hardware, sistema de archivos, redes, manejo de memoria y
administración de los procesos. (Perpinan, 2009)

Operating System Concepts – 9th Edition 1.16 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?

Administrador
de Red

Modelo de pirámide de un Sistema Operativo

Operating System Concepts – 9th Edition 1.17 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?
Operación Modo DUAL/BIT: protección del S.O de usuarios que
pueden causar errores.

Operating System Concepts – 9th Edition 1.18 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?
Operación Modo DUAL/BIT: protección del S.O d usuarios que
pueden causar errores.
 Modo Kernel (0): El sistema operativo tiene acceso completo a todo el
hardware y puede ejecutar cualquier instrucción que la máquina sea
capaz de ejecutar.
 Es reservado para el S.O y permite realizar operaciones de
administración de memoria para activar los rangos correspondientes a
las diversas aplicaciones, o para emplear rangos de memoria
asignados a dispositivos o de uso exclusivo del sistema operativo.
Tiene acceso pleno a las capacidades del equipo, por lo que debe ser
utilizado solo por la función que se revise de manera exhaustiva y que
forme parte del sistema operativo.

Operating System Concepts – 9th Edition 1.19 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?
Operación Modo DUAL/BIT: protección del S.O d usuarios que
pueden causar errores.
 Modo usuario (1), sólo un subconjunto de las instrucciones de
máquina es permitido y puede ejecutar otros programas.
 El procesador limita el acceso a la memoria a rangos de direcciones, o
segmentos, que fueron preparados en el modo supervisor. Las
operaciones que una aplicación intente rebasar los límites de estos
segmentos de memoria son atrapadas por el procesador y generan
errores de acceso a memoria.
 Con ello se protege de manera efectiva el acceso de un programa en
ejecución a la memoria que no le corresponde.

Operating System Concepts – 9th Edition 1.20 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?
Ubicación del S.O
 El Sistema operativo se encuentra almacenado en un dispositivo de
almacenamiento.
Silberschatz:
 bootstrap program is loaded at power-up or reboot
 Typically stored in ROM or EEPROM, generally known as
firmware
 Initializes all aspects of system
 Loads operating system kernel and starts execution

Operating System Concepts – 9th Edition 1.21 Silberschatz, Galvin and Gagne ©2013
¿Qué es un sistema operativo?
Startup
1. BOOTSTRAP: Test HW. Carga en memoria el Boot del S.O
2. BOOT: Carga en memoria componentes del S.O
3. S.O: Completa pruebas del HW.
Test del sistema de archivos.
Completa carga del S.O residente (Parte del S.O que se
encuentra siempre en memoria)
4. Operación del S.O: Funcionamiento del Sistema

Operating System Concepts – 9th Edition 1.22 Silberschatz, Galvin and Gagne ©2013
Historia de los Sistemas Operativos
Tanenbaum Pagina 7-18.

Operating System Concepts – 9th Edition 1.23 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Traditional
 Stand-alone general purpose machines
 But blurred as most systems interconnect with others (i.e.,
the Internet)
 Portals provide web access to internal systems
 Network computers (thin clients) are like Web terminals
 Mobile computers interconnect via wireless networks
 Networking becoming ubiquitous – even home systems use
firewalls to protect home computers from Internet attacks

Operating System Concepts – 9th Edition 1.24 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Mobile:
 Handheld smartphones, tablets, etc
 What is the functional difference between them and a
“traditional” laptop?
 Extra feature – more OS features (GPS, gyroscope)
 Allows new types of apps like augmented reality
 Use IEEE 802.11 wireless, or cellular data networks for
connectivity
 Leaders are Apple iOS and Google Android

Operating System Concepts – 9th Edition 1.25 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Distributed
 Distributed computiing
 Collection of separate, possibly heterogeneous, systems
networked together
 Network is a communications path, TCP/IP most common
– Local Area Network (LAN)
– Wide Area Network (WAN)
– Metropolitan Area Network (MAN)
– Personal Area Network (PAN)
 Network Operating System provides features between
systems across network
 Communication scheme allows systems to exchange
messages
 Illusion of a single system

Operating System Concepts – 9th Edition 1.26 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Cliente-Servidor
 El objetivo es definir servidores especializados* con
funcionalidades específicas.
 Por ejemplo, es posible conectar varios PCs o estaciones de
trabajo pequeñas como clientes a un servidor de archivos (File-
server system) que mantiene los archivos de las máquinas
cliente.
 Otra máquina puede designarse como servidor de impresión
conectándola a varias impresoras; después, todas las peticiones
de impresión procedentes de los clientes se envían a esta
máquina.
*Servidores web, servidores de e-mail, servidor de respaldos, servidor de bases de datos,
etc.

Operating System Concepts – 9th Edition 1.27 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Cliente-Servidor
 El concepto de arquitectura cliente/servidor asume una estructura
subyacente consistente en muchos PCs y estaciones de trabajo
así como una pequeña cantidad de máquinas servidor,
conectadas a través de una Red.
 En esta estructura, un cliente es normalmente la máquina de un
usuario que proporciona capacidad de interfaz de usuario y
procesamiento local.

Operating System Concepts – 9th Edition 1.28 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Cliente-Servidor
 En el caso general, algunas máquinas sólo instalan el software
cliente, mientras otras sólo instalan el software servidor, y otras
pueden incluir los dos No obstante, lo más normal es que el
software cliente y el software servidor se ejecuten en máquinas
separadas.

Operating System Concepts – 9th Edition 1.29 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Cliente-Servidor
 La aplicación se divide en un componente que
reside en la máquina cliente*, que llama a la
funcionalidad del sistema de bases de datos en la máquina
servidor mediante instrucciones del lenguaje de consultas.
 Los estándares de interfaces de programas de aplicación como
ODBC, API y JDBC se usan para la interacción entre el cliente y el
servidor.

*Las máquinas
cliente proporcionan
al usuario las
interfaces apropiadas
para utilizar estos
servidores, así como
potencia de
procesamiento local
para ejecutar
aplicaciones locales.

Operating System Concepts – 9th Edition 1.30 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Tres capas

Operating System Concepts – 9th Edition 1.31 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Tres capas
 (1) La máquina cliente interactúa mediante un front-end y no
contiene ninguna llamada directa a la base de datos. En su lugar,
el cliente se comunica con (2) un servidor de aplicaciones,
usualmente mediante una interfaz de formularios.
 El servidor de aplicaciones, a su vez, se comunica con (3) el
servidor de bases de datos para acceder a los datos.

Operating System Concepts – 9th Edition 1.32 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Tres capas
 Los sistemas que trabajan con gran cantidad de usuarios ,
generalmente adoptan una estructura de tres capas , donde el
front end es el explorador Web (Browser) que se comunica con el
servidor de aplicaciones. El servidor de aplicaciones actúa como
cliente del servidor de base de datos para acceder a los datos

Operating System Concepts – 9th Edition 1.33 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

n capas
 Los diferentes procesos están distribuidos en diferentes capas no
sólo lógicas, sino también físicas.
 Los procesos se ejecutan en diferentes equipos, que pueden
incluso residir en plataformas o sistemas operativos
completamente distintos.
 Cada equipo posee una configuración distinta y está optimizado
para realizar el papel que le ha sido asignado dentro de la
estructura de la aplicación, de modo que tanto los recursos como
la eficiencia global del sistema se optimicen.

Operating System Concepts – 9th Edition 1.34 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

n capas
 Peer-to-Peer: Another model of distributed
system
 P2P does not distinguish clients and servers
 Instead all nodes are considered peers
 May each act as client, server or both
 Node must join P2P network
 Registers its service with central
lookup service on network, or
 Broadcast request for service and
respond to requests for service via
discovery protocol
 Examples include Napster and Gnutella,
Voice over IP (VoIP) such as Skype

Operating System Concepts – 9th Edition 1.35 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Virtualization
 Allows operating systems to run applications within other OSes
 Vast and growing industry
 Emulation used when source CPU type different from target
type (i.e. PowerPC to Intel x86)
 Generally slowest method
 When computer language not compiled to native code –
Interpretation
 Virtualization – OS natively compiled for CPU, running guest
OSes also natively compiled
 Consider VMware running WinXP guests, each running
applications, all on native WinXP host OS
 VMM (virtual machine Manager) provides virtualization
services

Operating System Concepts – 9th Edition 1.36 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Virtualization
 Use cases involve laptops and desktops running multiple OSes
for exploration or compatibility
 Apple laptop running Mac OS X host, Windows as a guest
 Developing apps for multiple OSes without having multiple
systems
 QA testing applications without having multiple systems
 Executing and managing compute environments within data
centers
 VMM can run natively, in which case they are also the host
 There is no general purpose host then (VMware ESX and
Citrix XenServer)

Operating System Concepts – 9th Edition 1.37 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Cloud Computing
 Delivers computing, storage, even apps as a service across a network
 Logical extension of virtualization because it uses virtualization as the base
for it functionality.
 Amazon EC2 has thousands of servers, millions of virtual machines,
petabytes of storage available across the Internet, pay based on usage
 Many types
 Public cloud – available via Internet to anyone willing to pay
 Private cloud – run by a company for the company’s own use
 Hybrid cloud – includes both public and private cloud components
 Software as a Service (SaaS) – one or more applications available via
the Internet (i.e., word processor)
 Platform as a Service (PaaS) – software stack ready for application use
via the Internet (i.e., a database server)
 Infrastructure as a Service (IaaS) – servers or storage available over
Internet (i.e., storage available for backup use)

Operating System Concepts – 9th Edition 1.38 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Cloud Computing
 Cloud computing environments composed of traditional OSes,
plus VMMs, plus cloud management tools
 Internet connectivity requires security like firewalls
 Load balancers spread traffic across multiple applications

Operating System Concepts – 9th Edition 1.39 Silberschatz, Galvin and Gagne ©2013
Entornos Informáticos

Real-Time Embedded Systems


 Real-time embedded systems most prevalent form of computers
 Vary considerable, special purpose, limited purpose OS,
real-time OS
 Use expanding
 Many other special computing environments as well
 Some have OSes, some perform tasks without an OS
 Real-time OS has well-defined fixed time constraints
 Processing must be done within constraint
 Correct operation only if constraints met

Operating System Concepts – 9th Edition 1.40 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 IBM ya en los años 60 desarrolló un sistema de particiones
lógicas que actualmente equivaldrían a máquinas virtuales, las
cuales corrían en los mainframes de la época.
 Al crear estas particiones lógicas se solventaba la necesidad de
tener varias máquinas independientes. Este tipo de arquitectura
se sigue utilizando durante un tiempo pero con la irrupción de la
arquitectura x86 en los 80 se cambia el modelo en muchas
empresas. Cambian su estructura de un mainframe único y
muchos terminales por múltiples máquinas algunas como
servidores, con lo cual la necesidad de virtualización se va
perdiendo.
 Ya en los 90 comienza a sentirse la necesidad de la
virtualización puesto que se ve absurdo el tener muchas
máquinas realizando una tarea pudiendo simplificar más el
sistema invirtiendo menos dinero y facilitando la administración
*x86 y los x86-64, utilizan arquitectura y bus de 64 bits, con
posibilidad de múltiples núcleos.

Operating System Concepts – 9th Edition 1.41 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
Comando Windows para determinar arquitectura:
msinfo32.exe
echo %PROCESSOR_ARCHITECTURE%
wmic OS get OSArchitecture
systeminfo|find /i "Tipo de sistema“

Comando Linux para determinar arquitectura:


uname –m
arch
file -> se puede saber si un binario está compilado a 32 o 64 bits.
file /sbin/arp
getconf LONG_BIT
echo $HOSTTYPE
Arquitectura 32 bits 64 bits
Windows x86 AMD64
Linux i686 x86_64

Operating System Concepts – 9th Edition 1.42 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
Beneficios de la virtualización
 Actualmente la virtualización está siendo muy utilizada en el
ámbito empresarial por las ventajas que ofrece, puesto que
resulta:
 más económica al requerir menos hardware,
 se consume menos energía y espacio al utilizar menos
máquinas,
 la administración es más fácil y segura,
 Por lo tanto mejor eficiencia, rendimiento, robustez y
escalabilidad (capacidad para adaptarse a cambios sin perder
calidad)
 Hoy en día, los fabricantes de hardware ya incluyen en su
arquitectura soporte para la virtualización, con lo cual se va
consiguiendo que los sistemas virtualizados sean más eficientes
y menos complejos.

Operating System Concepts – 9th Edition 1.43 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)

VM
GUEST
(huesped)

HOST

Operating System Concepts – 9th Edition 1.44 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 En sistemas más exigentes se tiende hacia la arquitectura
hypervisor. La arquitectura hypervisor tiene un sistema
operativo especial en el que no se pueden instalar aplicaciones,
solamente se pueden instalar máquinas virtuales en él.
 Al no correr aplicaciones en este sistema, los recursos están
disponibles enteramente para las máquinas virtuales que corren
en él. El sistema solamente se encarga de repartir los recursos
entre las distintas máquinas que corren sobre él.
A fin de proteger las
operaciones que
realiza el hypervisor
para administrar los
recursos de las
máquinas virtuales,
se ha generado un
modo de operación
adicional en el
procesador que a
menudo se conoce
como modo de
protección -1.

Operating System Concepts – 9th Edition 1.45 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)

Arquitectura Hypervisor
Operating System Concepts – 9th Edition 1.46 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 Productos populares:
 Microsoft Virtual PC
 VirtualBox:
 VMWare
 Xen
 Hyper-V

Operating System Concepts – 9th Edition 1.47 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LOS NÚCLEOS VIRTUALES
 Ya desde el año 2002, Intel® puso en práctica su tecnología
Hyper-threading en procesadores Xeon y Pentium 4.
 Esta tecnología consiste en crear dos núcleos virtuales a
partir de uno real. Esta tecnología consigue un gran aumento
del rendimiento utilizando un poco más de recursos. Aunque
Intel® dejó de utilizar esta tecnología durante un tiempo, en
la tecnología Core i y los Xeon™ vuelve a utilizarla.
 Para que esta tecnología sea efectiva, el sistema operativo
debe estar preparado para utilizarla. De esa manera al poder
ejecutar aplicaciones en varios hilos simultáneos se consigue
un mejor tiempo de respuesta y eficiencia por parte del
sistema.
 La mejora del rendimiento al utilizar esta tecnología de
núcleos virtuales se aprecia cuando se ejecutan antivirus en
segundo plano o se trabaja con aplicaciones que demandan
mucha potencia gráfica.

Operating System Concepts – 9th Edition 1.48 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LOS NÚCLEOS VIRTUALES
 La ventaja de la utilización de núcleos virtuales permite
tener el procesador siempre ejecutando tareas (siempre
que sea posible).
 Aunque existen aplicaciones antiguas o poco optimizadas
que dificultan la ejecución sobre varios hilos de ejecución, la
ventaja de utilizar sistemas operativos modernos permite que
dichas aplicaciones no penalicen de forma significativa el
rendimiento de todo el sistema.
 Es importante recalcar que aunque un procesador tenga 4
núcleos virtuales nunca va a ser igual que un procesador con
4 núcleos reales. Un procesador con 2 núcleos reales y 4
virtuales será mejor que uno con solo 2 núcleos reales pero
nunca llegará a tener el rendimiento de un procesador con 4
núcleos reales.

Operating System Concepts – 9th Edition 1.49 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LINUX
 Distribuciones linux

 Paquete

Operating System Concepts – 9th Edition 1.50 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LINUX
 Ejemplos de Paquetes

Operating System Concepts – 9th Edition 1.51 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LINUX
 Ejemplos de Paquetes

Operating System Concepts – 9th Edition 1.52 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LINUX
 Qué contiene una distribución

Operating System Concepts – 9th Edition 1.53 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LINUX
 Qué contiene una distribución

Operating System Concepts – 9th Edition 1.54 Silberschatz, Galvin and Gagne ©2013
Máquinas Virtuales (Virtual Machine)
 LINUX
 Mito

 Sistema de Distribución de Paquetes

Operating System Concepts – 9th Edition 1.55 Silberschatz, Galvin and Gagne ©2013
Lenguaje de Programación para Laboratorios

 El lenguaje de programación C fue creado por Brian Kernighan y


Dennis Ritchie a mediados de los años 70. La primera edición del
libro fue publicada en 1978.
 Dennis Ritchie diseñó e implementó el lenguaje (al igual que
codiseñó el sistema operativo Unix cuyo desarrollo estuvo
fuertemente ligado con el desarrollo del lenguaje). La primera
implementación se realizó sobre un computador DEC PDP-11 con
sistema operativo UNIX.
 C es el resultado de un proceso de desarrollo que comenzó con un
lenguaje anterior, el BCPL, el cual influyó en el desarrollo por parte
de Ken Thompson de un lenguaje llamado B, el cual es el
antecedente directo del lenguaje C.
 El lenguaje C es un lenguaje para programadores en el sentido de
que proporciona una gran flexibilidad de programación.

El Kernel de Unix fue escrito casi en su totalidad en lenguaje C, con excepción de una parte
del manejo de interrupciones, expresada en el lenguaje ensamblador del procesador en el
que opera.

Operating System Concepts – 9th Edition 1.56 Silberschatz, Galvin and Gagne ©2013
Lenguaje de Programación – Evolución de UNIX

Operating System Concepts – 9th Edition 1.57 Silberschatz, Galvin and Gagne ©2013
Lenguaje de Programación para Laboratorios

LINUS TORVALDS
Linus Benedict Torvalds
(28 de diciembre de 1969, Helsinki,
Finlandia) es un ingeniero de software
finlandés estadounidense, conocido por
iniciar y mantener el desarrollo del kernel
(en español, núcleo) Linux, basándose
en el sistema operativo libre Minix
creado por Andrew S. Tanenbaum y en
algunas herramientas, varias utilidades y
los compiladores desarrollados por el
proyecto GNU.
Actualmente es responsable de la
coordinación del proyecto.

Operating System Concepts – 9th Edition 1.58 Silberschatz, Galvin and Gagne ©2013
Lenguaje de Programación para Laboratorios

LINUS TORVALDS

Operating System Concepts – 9th Edition 1.59 Silberschatz, Galvin and Gagne ©2013
Lenguaje de Programación para Laboratorios

LINUS TORVALDS
 Recibió cientos de aportes en poco
tiempo
 El nombre del S.O inició como FREAX
(free + freak + UNIX) pero terminó como
LINUX (UNIX de Linus).
 Luego de escuchar una conferencia de
Ricahrd Stallman, decidió utilizar la
licencia GPLv2 para su kernel.
 LINUX es popular porque:
 Torvalds publicó su código
 Permitió aportes
 UNIX era cerrado y muy dificl de
aportar (coordinación complicada,
tipos de licencia).

Operating System Concepts – 9th Edition 1.60 Silberschatz, Galvin and Gagne ©2013
End of Chapter 1

Operating System Concepts – 9th Edit9on Silberschatz, Galvin and Gagne ©2013

Você também pode gostar