Arquitectura Linux

Anuncio
SOLUCIONES
LINUX
Introducción a la Arquitectura
Whitepaper
Noviembre 2004
Historia
El mundo de los SO:
Legacys:
IBM mainframes
Unisys y otros
DEC VAX (OpenVMS) (*)
UNIX - X/Open
(*)
BSD de AT&T (ahora SCO)
SYS V de UCLA
Win32
Mac OS (*)
Novell Netware
OS2 Warp (*)
(*) Compatible POSIX
Mas info en: http://www.osdata.com/
LINUX
Primer Kernel Open source:
Linus Torvalds 1991
Plataformas:
Intel/Cyrix/AMD Pentium, Intel 80x86, Motorola/IBM PowerPC, Motorola 680x0,
Sun SPARC, SGI MIPS, DEC Alpha, HP PA-RISC, DEC VAX, ARM, API 1000+
y CL-PS7110.
Distribuciones:
Redhat (Fedora), SUSE, Slackware, Mandrake, Debian, Caldera, …
GUI
Xwindows, GNOME, KDE, …
Shells
bash, tcsh, zsh, sh, …
Arquitectura
Hay dos niveles de ejecución:
Kernel (establecido en boot time)
Usuario
Un programa (proceso) de
usuario solo puede saltar al
modo kernel (privilegiado) a
través de una system call
La system call comprueba los
derechos del usuario y filtra la
seguridad
Gestión de procesos
Los procesos trabajan con
máquinas virtuales (FS, memoria,
procesador, etc.)
El kernel establece los recursos del
proceso
La comunicación entre procesos se
filtra siempre por el kernel
La memoria del proceso está
mapeada en el FS
Gestión de procesos
Gestión del hardware
Todo driver es código de kernel
Todo driver corresponde a un archivo en el FS (bin o char)
El kernel es modular
Sistema de Ficheros
Por defecto / (root dir) y sobre el se montan los
dispositivos físicos y lógicos
Linux soporta múltiples tipos de FS
Sistema de ficheros
/bin
Contiene los ejecutables mas comunes que podrían considerarse
comandos estándar:
Shells (bash, sh, …), Manipulación de ficheros (ls, cp, mv, tar, grep, vi, …), Gestión de
procesos (ps, kill, …), etc.
/boot
Ficheros de arranque (entre ellos el kernel)
/dev
Drivers
Char: keyboard, mouse (psaux para PS/2), puerto serie (ttyS0), consola (tty0) …
Bin (Block): floppy, CD-ROM, disco duro, …
/etc
Contiene la configuración del software de la máquina. En Linux TODO
es software excepto el kernel (red, usuarios, correo, …).
Sistema de Ficheros
/home
Contiene los directorios de los usuarios de la máquina. Excepciones:
root: el administrador está en /root
Usuarios sin login: bin, daemon, mail, lp, …
/lib
Librerías comunes del sistema (DLL -> SO)
/mnt
Punto de montaje para SF temporales. (Debian monta el CD-ROM en
/cdrom)
/lost+found
inodos que el sistema encuentra sin referencia en la tabla. Todo SF
físico tiene uno en su raíz.
/opt
Sin especificar. Algunos fabricantes lo usan para instalar su soft.
Establecen sim links para poner los comandos donde toca.
Sistema de Ficheros
/proc
Mapa de memoria de los procesos y otras utils:
$ cat /proc/cpuinfo – (CPU info)
$ cat /proc/meminfo – (RAM y swap)
…
/sbin
Como el bin pero solo para root. Normalmente tiene los programas de mantenimiento del
sistema (ifconfig, mkfs, lilo, …)
/tmp
temporal que el sistema se encarga de limpiar por un deamon (Debian solo al arranque).
Todos pueden escribir y leer.
/usr
Para instalar el soft. Dentro encontraremos:
/usr/doc - Documentación.
/usr/bin – Ejecutables estándar.
/usr/local/bin – Ejecutables no estándar
/usr/local/src - fuente.
/var
Aquí van los ficheros de tamaño variable (logs en /var/log, colas de impresión en
/var/spool, entorno de ejecución en /var/run, …). Se hace así para poder montarlo en un SF
dirente del / (si el / se queda sin espacio el sistema podría colapsar)
Software de base (opensource)
Desktop: GNOME y KDE
Ofimática: OpenOffice, funciona también en windows y es el
que mejor se integra con office
Mail: Evolution, muy similar a Outlook
MTA: sendmail y postfix
Goupware: phpGroupware
Navegador: Mozilla, funciona en Windows
WebServer: Apache, Tomcat, JBOSS
Bases de Datos Relacionales: MySQL y postgreSQL
Desarrollo: Eclipse, Kylix
http://europa.eu.int/ida/ tiene un estudio de 146 páginas de migración a Linux
Conclusiones
Linux es una versión mejorada de Unix
Linux es un SO maduro con 13 años de historia
Su arquitectura de kernel y VM garantiza la seguridad y
la robustez desde el núcleo
Linux es estándar (soft y hard)
Linux es abierto, multiplataforma y permite adaptarlo a
múltiples escenarios (RT, embedded, …)
El kernel es gratuito
•
•
!
"
#
$%
14#
&
'()* (+),- +
Descargar