Download el futuro de los sistemas operativos
Document related concepts
Transcript
¿Qué es un Sistema Operativo? En resumen: Un Sistema Operativo (SO) es el software básico de una computadora que provee una interfaz entre el resto de programas de la computadora, los dispositivos de hardware y el usuario. Las funciones básicas del Sistema Operativo son administrar los recursos de la máquina, coordinar el hardware y organizar archivos y directorios en dispositivos de almacenamiento. Los Sistemas Operativos más utilizados son Ms-Dos, Windows, Linux y Mac HISTORIA Y EVOLUCION DE LOS SISTEMAS OPERATIVOS Introducción Los sistemas operativos han venido evolucionando a través de los años . ya que los sistemas operativos se han apegado íntimamente a la arquitectura de las computadoras en las cuales se ejecutan . La primera computadora digital real fue diseñada por el matemático ingles Charles Babbage ( 1792 - 1871) . Aunque Babbage gasto la mayor parte de su vida y de su fortuna intentando construir su “ maquina analítica “ , nunca la hizo funcionar adecuadamente porque era un diseño puramente mecánico y la tecnología de su época no podía producir las ruedas, el engranaje, levas y otras partes mecánicas con la alta precisión que el necesitaba. Sin tener que decirlo, la maquina analítica no tuvo un sistema operativo. Sistemas Operativos – ISC. Javier Calvo Moreno La primera generación (1945 - 1955 ) : Tubos de vacio y tableros enchufables. 2 Después de los esfuerzos frustrados de Babbage, se progresó poco en la construcción de computadoras digitales hasta la segunda guerra mundial, alrededor de la mitad de la década de 1940, Howard Aiken en Hardvard, Jon Von Neumann en el Instituto de Estudios Avanzados en Princeton, J. Presper Ecker y William Mauchley en la Universidad de Pennsylvania y Konrad Zuse en Alemania, entre otros, todos obtuvieron resultados óptimos en la construcción de maquinas de calculo mediante el uso de tubos de vacío. En estos primeros días, un grupo singular de personas diseño, construyo, programo, opero y dio mantenimiento a cada maquina. Toda la programación se realizo en lenguaje de maquina absoluto. Los lenguajes de programación se desconocían ( todavía no existía el lenguaje ensamblador ). Los primeros sistemas operativos eran extraños. El modo usual de operación consistía en que el programador firmaba para tener acceso a un bloque de tiempo en la hoja de registro situada en la pared, después bajaba al cuarto de maquinas, insertaba su tablero enchufable en la computadora y pasaba las siguientes horas esperando que ninguno de los 20,000 tubos de vació se fundiera durante la ejecución de su programa. Al inicio de la década de 1950, la rutina había mejorado un poco con la introducción de la tarjetas perforadas. Ahora era posible escribir en tarjetas y leerlos, en vez de utilizar tableros enchufables; de lo contrario el procedimiento era el mismo. La segunda generación (1955 - 1965) : Transistores y sistemas de lote. La introducción del transistor a mediados de la década de 1950 cambio la imagen radicalmente. Las computadoras se volvieron lo suficientemente confiables, en un principio hubo una clara separación entre los diseñadores, armadores, operadores, programadores y personal de mantenimiento. Estas maquinas se instalaban en cuartos de computadoras especialmente acondicionados con aire, con cuerpo de operadores profesionales para accionarlas. un programador primeramente escribiría el programa en papel ( en FORTRAN o en lenguaje Ensamblador ) y después lo perforaría en tarjetas. Después llevaría la pila de tarjetas al cuarto de introducción al sistema y la entregaría a uno de los operadores el cual iniciaba el proceso en la computadora, este proceso desperdiciaba mucho tiempo. Dado el alto costo del equipo, no es sorprendente que las personas buscaran rápidamente maneras de reducir el tiempo perdido. La solución que generalmente se adoptaba era el sistema de lote. La idea implícita en este sistema era la de conjuntar un cajón lleno de trabajos en el cuarto de introducción al sistema y después leerlos en una cinta magnética mediante el uso de una computadora ( relativamente ) pequeña y poco costosa, como la IBM 1401. Sistemas Operativos – ISC. Javier Calvo Moreno Después de casi una hora de recolectar un lote de trabajos, la cinta se volvía a enrollar y se llevaba al cuarto de maquinas. Después el operador cargaba un programa especial ( el ancestro del sistema operativo de hoy en día ) , el cual leía el primer trabajo y lo ejecutaba, la salida se escribía en una segunda cinta, en vez de imprimirse. Después de terminar cada trabajo, el sistema operativo leía automáticamente el siguiente trabajo de la cinta, y comenzaba a ejecutarlo. 3 La estructura de un trabajo de entrada común arrancaba con una tarjeta $JOB , que especifica el tiempo máximo de ejecución en minutos, el numero de cuenta que se cargara y el nombre del programador. Después venia una tarjeta $FORTRAN , que indicaba al sistema operativo que debía cargar el compilador de FORTRAN . Venia seguido de un programa que debía compilarse y después de una tarjeta $LOAD, que ordenaba al sistema operativo cargar el programa objeto recién compilado, después venia la tarjeta $RUN, que indicaba al sistema operativo que debía ejecutar el programa con los datos que le seguían. Por ultimo, la tarjeta $END marcaba el final del trabajo. Los sistemas operativos comunes eran FMS ( el sistema monitor del FORTRAN ) e IBSYS, sistema operativo de IBM de la 7094. La tercera generación (1965 - 1980 ) : Circuitos integrados ( CI ) y multiprogramación Al inicio de la década de 1960 muchos fabricantes de computadoras tenían dos líneas de trabajo distintas y totalmente incompatibles. Por un lado existían las computadoras científicas de grande escala orientadas a las palabras, como la 7094, que se utilizaban para realizar cálculos numéricos de ciencias e ingeniería. Por el otro lado estaban las computadoras comerciales orientadas a los caracteres, como 1401, que se utilizaban para el ordenamiento de cintas e impresión por parte de bancos y compañías de seguros. El desarrollo y mantenimiento de dos líneas de productos diferentes era una proposición costosa para los fabricantes. Además, muchos nuevos compradores de computadoras necesitaban una maquina pequeña, pero después se expandían y querían una maquina de mayor tamaño que ejecutara todos sus programas antiguos, pero con mayor velocidad. IBM intento resolver estos dos problemas de un solo golpe introduciendo en el mercado el Sistema/360. El 360 era una serie de maquinas compatibles con el software que variaban del tamaño de la 1401 a una mucho mas poderosa que la 7094, el 360 estaba diseñado para realizar cálculos tanto científicos como comerciales. Por lo tanto una sola familia de maquinas podía satisfacer las necesidades de todos los clientes. El sistema 360 fue la primera línea importante de computadoras que utilizo circuitos integrados ( CI ), con lo cual ofreció una mayor ventaja de precio/rendimiento sobre las maquinas de la segunda generación. La intención era que todo el software, como el sistema operativo, tenían que funcionar en todos los modelos. Tenia que correr en sistemas pequeños, y en sistemas muy grandes. Tenia que funcionar adecuadamente en sistemas con algunos periféricos y en sistemas con muchos periféricos. Sistemas Operativos – ISC. Javier Calvo Moreno No había manera de que IBM escribiera una pieza de software que cumpliera todos esos requisitos conflictivos. El resultado fue un sistema operativo enorme y extraordinariamente complejo. Constaba de millones de líneas de lenguaje ensamblador escritas por miles de programadores, y contenía miles y miles de errores ocultos. 4 A pesar de tamaño y problemas enormes , OS/360 y los sistemas operativos similares de la tercera generación satisfacían a muchos de sus clientes razonablemente bien, También popularizaron varias técnicas importantes ausentes en los sistemas operativos de la segunda generación. La mas importante de estas fue la multiprogramación. Cuando el trabajo corriente se detenía para esperara a que se completara una operación en cinta u otra operación de E/S, la unidad central de procesamiento ( CPU ) simplemente permanecía ociosa hasta que terminara la operación de E/S . La solución que evoluciono consistía en partir la memoria en varias partes, con trabajo diferente en cada partición. Mientras que un trabajo esperaba a que se completara la E/S, otro trabajo podía estar utilizando la CPU. Si se podían mantener suficientes trabajos en la memoria central al mismo tiempo, la CPU podía mantenerse ocupada casi el 100% del tiempo. Otra caracteristica de importancia en los sistemas operativos de la tercera generación era la capacidad de leer trabajos de tarjetas contenidas en el disco tan pronto como se llevaban al cuarto de computación. Siempre que se terminaba un trabajo, el sistema operativo podía cargar uno nuevo del disco en la partición no vacía y ejecutarlo, esta técnica se denomina manejo por cola de impresión. Los sistemas operativos de la tercera generación seguían siendo básicamente sistemas de lote. Con los sistemas operativos de la tercera generación, el tiempo entre la entrega de un trabajo y la devolución de la salida comprendía a menudo varias horas. El deseo de obtener un tiempo de respuesta corto marco el camino para el tiempo compartido, variante de la multiprogramación, en la cual cada usuario tiene una terminal en línea. En un sistema de tiempo compartido si hay 20 usuarios dentro del sistema y 17 de ellos están pensando o platicando o bien tomando café, la CPU puede distribuirse en turno para los tres trabajos que necesitan servicio. Aunque el primer sistema de tiempo compartido ( CTSS ) serio fue creado en MIT en una unidad 7094 especialmente modificada, no se volvió popular sino hasta que el hardware de protección necesario se disemino durante la tercera generación. Después del éxito del sistema CTSS, MIT, Bell laboratories y General electric decidieron embarcarse en el desarrollo de la “ computadora de servicio publico “. conocido como MULTICS ( Multiplexed information and computing service, información multicanalizada y servicio de computación ) . Para resumir una larga historia, MULTICS introdujo muchas ideas originales en la literatura de computación, pero su construcción era mas difícil de lo que nadie había sospechado. MULTICS tuvo enorme influencia sobre otros sistemas subsiguientes. Sistemas Operativos – ISC. Javier Calvo Moreno Otro avance durante la tercera generación fue el crecimiento de las minicomputadoras, comenzando con DEC PDP-1 en 1961. Uno de los científicos que había trabajado en el proyecto MULTICS, Ken Thompson, hallo después una pequeña PDP-7 y empezó a escribir después una versión desguarnecida de MULTICS para un usuario. Este sistema se llamo “UNICS” ( Uniplexed information and computing service, información unicanalizada y servicio de computación ), pero su ortografía cambio mas tarde por UNIX. UNIX se ha desplazado a mas computadoras que ningún otro sistema operativo de la historia y su uso sigue aumentando rápidamente. 5 La cuarta generacion (1980 - 1990 ) : Computadoras personales Con la creación de los circuitos integrados LSI (integración a grande escala) , chips que contiene miles de transistores en un centímetro cuadrado de silicón, la era de computadora personal vio sus inicios. Dos sistemas operativos han dominado la escena de la computadora personal: MS-DOS, escrito por Microsoft, Inc., para la IBM PC y otras computadoras que utilizan la CPU Intel 8088 y sus sucesores. y UNIX, que domina en las computadoras personales mayores que hacen uso de CPU Motorola 68000. Aunque la versión inicial de MS-DOS era relativamente primitiva, versiones subsiguientes han incluido mas y mas características de UNIX, lo que no es totalmente sorprendente dado que Microsoft es un proveedor importante de UNIX, que usa el nombre comercial de XENIX. Un avance importante que empezó a tomar su sitio a mediados de la década de 1980 es el desarrollo de redes de computadoras personales que corren sistemas operativos en red y sistemas operativos distribuidos. En un sistema operativo en red, los usuarios tienen conocimiento de la existencia de múltiples computadoras y pueden ingresar en maquinas remotas y reproducir archivos de una maquina a la otra. Cada maquina ejecuta su sistema operativo local y tiene un usuario propio ( o usuarios). Un sistema distribuido, es aquel que se presenta ante sus usuarios como un sistema uniprocesador tradicional, aunque en realidad este compuesto de múltiples procesadores. En un sistema distribuido real, los usuarios no tienen conocimiento de donde se están ejecutando sus programas o de donde están ubicados sus archivos; todo esto se debe manejar en forma automática y eficiente por medio del sistema operativo. Los sistemas operativos en red no son fundamentalmente diferentes de los sistemas operativos uniprocesadores. Sin duda necesitan un controlador de interfaz en red y algún software de bajo nivel para impulsarlo, así como programas para lograr un ingreso remoto al sistema y un acceso remoto del archivo . Sistemas Operativos – ISC. Javier Calvo Moreno Los sistemas operativos distribuidos reales requieren mas que simplemente agregar un poco de código a un sistema operativo uniprocesador, ya que los sistemas operativos distribuidos y centralizados difieren de manera decisiva. 6 ¿Cómo está conformado un sistema operativo? Un sistema operativo está conformado básicamente por cuatro módulos: Núcleo o Kernel. Administrador de memoria. Sistema de entrada/salida. Administrador de archivos. A veces se considera un quinto módulo: el intérprete de comandos o intérprete de instrucciones, el cual se encarga de "traducir" las órdenes que el usuario ingresa mediante el teclado u otros dispositivos a un "lenguaje" que la máquina pueda entender. Núcleo Es el módulo de más bajo nivel de un sistema operativo, pues descansa directamente sobre el hardware de la computadora. Entre las tareas que desempeña se incluyen el manejo de las interrupciones, la asignación de trabajo al procesador y el proporcionar una vía de comunicación entre los distintos programas. En general, el núcleo se encarga de controlar el resto de los módulos y sincronizar su ejecución. El núcleo contiene un submódulo denominado "planificador", el cual se encarga de asignar tiempo del procesador a los programas, de acuerdo a una cierta política de planificación que varía de un sistema operativo a otro. Normalmente se utiliza una jerarquía de prioridades que determinan cómo se asignará el tiempo del CPU a cada programa. Una política de planificación muy común en los sistemas de multiprogramación y multiproceso son las técnicas de "time slicing" (fracción de tiempo). Se asigna a cada programa un corto intervalo de tiempo del procesador. Si el programa no ha terminado durante este intervalo de tiempo, vuelve a la cola de programas. Sistemas Operativos – ISC. Javier Calvo Moreno Administrador de memoria 7 Este módulo se encarga de asignar ciertas porciones de la memoria principal (RAM) a los diferentes programas o partes de los programas que la necesiten, mientras el resto de los datos y los programas se mantienen en los dispositivos de almacenamiento masivo. De este modo, cuando se asigna una parte de la memoria principal se hace de una forma estructurada, siguiendo un determinado orden. La forma más común de administración de la memoria supone crear una memoria virtual; con este sistema, la memoria de la computadora aparece, para cualquier usuario del sistema, mucho mayor de lo que en realidad es. Sistema de entrada/salida (E/S) Este componente presenta al usuario la E/S de datos como una cuestión independiente del dispositivo; es decir, para los usuarios, todos los dispositivos tienen las mismas características y son tratados de la misma forma, siendo el sistema operativo el encargado de atender las particularidades de cada uno de ellos (como su velocidad de operación). Una técnica muy común, especialmente en salida, es el uso de "spoolers". Los datos de salida se almacenan de forma temporal en una cola situada en un dispositivo de almacenamiento masivo (el spool), hasta que el dispositivo periférico requerido se encuentre libre; de este modo se evita que un programa quede retenido porque el periférico no esté disponible. El sistema operativo dispone de llamadas para añadir y eliminar archivos del spool. Administrador de archivos Se encarga de mantener la estructura de los datos y los programas del sistema y de los diferentes usuarios (que se mantienen en archivos) y de asegurar el uso eficiente de los medios de almacenamiento masivo. El administrador de archivos también supervisa la creación, actualización y eliminación de los archivos, manteniendo un directorio con todos los archivos que existen en el sistema en cada momento y coopera con el módulo administrador de memoria durante las transferencias de datos desde y hacia la memoria principal. Si se dispone de un sistema de memoria virtual, existen transferencias entre la memoria principal y los medios de almacenamiento masivo para mantener la estructura de la misma. Sistemas Operativos – ISC. Javier Calvo Moreno Los archivos almacenados en los dispositivos de almacenamiento masivo tienen distintos propósitos. Algunos contienen información que puede ser compartida. Otros son de carácter privado, e incluso secreto. Por tanto, cada archivo está dotado de un conjunto de privilegios de acceso, que indican la extensión con la que se puede compartir la información contenida en el archivo. El sistema operativo comprueba que estos privilegios no sean violados. 8 Características de un sistema operativo Las características deseables más importantes de un sistema operativo son: Permitir la concurrencia de procesos, traslapándose el tiempo de entrada/salida (E/S) con el de cálculo y ocupando la memoria con varios programas. Posibilitar la ejecución de cualquier proceso en el momento que se solicite siempre y cuando haya suficientes recursos libres para él. Ser eficiente en cuanto a reducir: el tiempo medio que ocupa cada trabajo, el tiempo que no se usa la CPU, el tiempo de respuesta en sistemas multiacceso y el plazo entre dos asignaciones de CPU a un mismo programa. Ser eficiente en cuanto a aumentar la utilización de recursos en general, tales como memoria, procesadores, dispositivos de E/S, discos magnéticos, datos, etc. Ser fiable, es decir, un sistema operativo no debe tener errores y debe prever todas las posibles situaciones. Ser de tamaño pequeño. Posibilitar y facilitar en lo posible el "diálogo" entre computadora y usuario de la misma. Permitir compartir entre varios usuarios los recursos de hardware con que cuenta una computadora. Permitir a los usuarios compartir datos entre ellos, en caso necesario. Facilitar la E/S de los diferentes dispositivos conectados a una computadora. Funciones de un sistema operativo Sistemas Operativos – ISC. Javier Calvo Moreno Las funciones más importantes que debe cumplir un sistema operativo son las siguientes: 9 Aceptar los trabajos y conservarlos hasta su finalización. Detectar errores y actuar de modo apropiado en caso de que se produzcan. Controlar las operaciones de E/S. Controlar las interrupciones. Planificar la ejecución de tareas. Entregar recursos a las tareas. Retirar recursos de las tareas. Proteger la memoria contra el acceso indebido de los programas. Soportar el multiacceso. Proporcionar al usuario un sencillo manejo de todo el sistema. Aprovechar los tiempos muertos del procesador. Compartir los recursos de la máquina entre varios procesos al mismo tiempo. Administrar eficientemente el sistema de cómputo como un todo armónico. Permitir que los diferentes usuarios se comuniquen entre sí, así como protegerlos unos de otros. Permitir a los usuarios almacenar información durante plazos medianos o largos. Dar a los usuarios la facilidad de utilizar de manera sencilla todos los recursos, facilidades y lenguajes de que dispone la computadora. Administrar y organizar los recursos de que dispone una computadora para la mejor utilización de la misma, en beneficio del mayor número posible de usuarios. Controlar el acceso a los recursos de un sistema de computadoras. Clasificación Debido a la evolución de los sistemas operativos fue necesario realizar una clasificación; considerando las diferencias existentes entre sus componentes los podemos clasificar en: Sistemas operativos por lotes. Sistemas operativos multiprogramación. Sistemas operativos multiusuario. Sistemas operativos de tiempo compartido. Sistemas operativos de tiempo real. Sistemas operativos por lotes Los sistemas operativos por lotes requieren que la información esté reunida en bloque o "lote" (el programa, los datos, y las instrucciones). Los trabajos son procesados en el orden de admisión, según el modelo de "primero en llegar primero en ser atendido". En estos sistemas la memoria se divide en dos zonas. Una de ellas es ocupada por el sistema operativo, y la otra se usa para cargar programas transitorios para su ejecución. Cuando termina la ejecución de un programa se carga un nuevo programa en la misma zona de memoria. Sistemas Operativos – ISC. Javier Calvo Moreno Sistemas operativos multiprogramación Los sistemas de multiprogramación son capaces de soportar dos o más procesos concurrentes múltiples, permiten que residan al mismo tiempo en la memoria primaria las instrucciones y los datos procedentes de dos o más procesos. Estos sistemas implican la operación de multiproceso, para el manejo de la información. Se caracterizan principalmente por un gran número de programas activos simultáneamente que compiten por los recursos del sistema, como el procesador, la memoria , y los "dispositivos de E/S". Estos sistemas monitorean el estado de todos los programas activos y recursos del sistema. 10 Sistemas operativos multiusuario Los sistemas operativos multiusuario permiten acceder simultáneamente a un sistema de computadoras a través de dos o más terminales. Este tipo de sistema operativo es fundamental en el manejo de redes de computadoras actualmente. Sistemas operativos de tiempo co mpartido Los sistemas operativos de tiempo compartido tratan de proporcionar un reparto equitativo de los recursos comunes para dar la impresión a los usuarios de que poseen una computadora independiente. En estos sistemas el administrador de memoria proporciona aislamiento y protección de los programas, ya que generalmente no tienen necesidad de comunicarse entre ellos. El control de E/S se encarga de proporcionar o retirar la asignación a los dispositivos de forma que se preserve la integridad del sistema y se proporcione servicio a todos los usuarios. El administrador de archivos proporciona protección y control en el acceso de la información, dada la posibilidad de concurrencia y conflictos al tratar de acceder a los archivos. Sistemas operativos de ti empo real Estos sistemas tienen como objetivo proporcionar tiempos más rápidos de respuesta, procesar la información sin tiempos muertos. En estos sistemas el administrador de memoria es relativamente menos solicitado debido a que muchos procesos residen permanentemente en memoria. El administrador de archivos se encuentra normalmente en grandes sistemas de tiempo real y su objetivo principal es manejar la velocidad de acceso, más que la utilización eficaz del almacenamiento secundario. Definición de Sistema Operativo El sistema operativo es el programa (o software) más importante de un ordenador. Para que funcionen los otros programas, cada ordenador de uso general debe tener un sistema operativo. Los sistemas operativos realizan tareas básicas, tales como reconocimiento de la conexión del teclado, enviar la información a la pantalla, no perder de vista archivos y directorios en el disco, y controlar los dispositivos periféricos tales como impresoras, escáner, etc. Sistemas Operativos – ISC. Javier Calvo Moreno En sistemas grandes, el sistema operativo tiene incluso mayor responsabilidad y poder, es como un policía de tráfico, se asegura de que los programas y usuarios que están funcionando al mismo tiempo no interfieran entre ellos. El sistema operativo también es responsable de la seguridad, asegurándose de que los usuarios no autorizados no tengan acceso al sistema. 11 Clasificación de los Sistemas Operativos Los sistemas operativos pueden ser clasificados de la siguiente forma: Multiusuario: Permite que dos o más usuarios utilicen sus programas al mismo tiempo. Algunos sistemas operativos permiten a centenares o millares de usuarios al mismo tiempo. Multiprocesador: soporta el abrir un mismo programa en más de una CPU. Multitarea: Permite que varios programas se ejecuten al mismo tiempo. Multitramo: Permite que diversas partes de un solo programa funcionen al mismo tiempo. Tiempo Real: Responde a las entradas inmediatamente. Los sistemas operativos como DOS y UNIX, no funcionan en tiempo real. Cómo funciona un Sistema Operativo Los sistemas operativos proporcionan una plataforma de software encima de la cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones se programan para que funcionen encima de un sistema operativo particular, por tanto, la elección del sistema operativo determina en gran medida las aplicaciones que puedes utilizar. Los sistemas operativos más utilizados en los PC son DOS, OS/2, y Windows, pero hay otros que también se utilizan, como por ejemplo Linux. Cómo se utiliza un Sistema Operativo Un usuario normalmente interactúa con el sistema operativo a través de un sistema de comandos, por ejemplo, el sistema operativo DOS contiene comandos como copiar y pegar para copiar y pegar archivos respectivamente. Los comandos son aceptados y ejecutados por una parte del sistema operativo llamada procesador de comandos o intérprete de la línea de comandos. Las interfaces gráficas permiten que utilices los comandos señalando y pinchando en objetos que aparecen en la pantalla. Ejemplos de Sistema Operativo A continuación detallamos algunos ejemplos de sistemas operativos: Sistemas Operativos – ISC. Javier Calvo Moreno Familia Windows 12 Windows 95 Windows 98 Windows ME Windows NT Windows 2000 Windows 2000 server Windows XP Windows Server 2003 Windows CE Windows Mobile Windows XP 64 bits Windows Vista (Longhorn) Windows 7 (Seven) Familia Macintosh Mac OS 7 Mac OS 8 Mac OS 9 Mac OS X Familia UNIX AIX AMIX GNU/Linux GNU / Hurd HP-UX Irix Minix System V Solaris UnixWare Qué es un sistema de archivos? Aunque los discos rígidos pueden ser muy chicos, aún así contienen millones de bits, y por lo tanto necesitan organizarse para poder ubicar la información. Éste es el propósito del sistema de archivos. Recuerde que un disco rígido se conforma de varios discos circulares que giran en torno a un eje. Las pistas (áreas concéntricas escritas a ambos lados del disco) se dividen en piezas llamadas sectores (cada uno de los cuales contiene 512 bytes). El formateado lógico de un disco permite que se cree un sistema de archivos en el disco, lo cual, a su vez, permitirá que un sistema operativo (DOS, Windows 9x, UNIX, ...) use el espacio disponible en disco para almacenar y utilizar archivos. El sistema de archivos se basa en la administración de clústers, la unidad de disco más chica que el sistema operativo puede administrar. Sistemas Operativos – ISC. Javier Calvo Moreno Un clúster consiste en uno o más sectores. Por esta razón, cuanto más grande sea el tamaño del clúster, menores utilidades tendrá que administrar el sistema operativo... Por el otro lado, ya que un sistema operativo sólo sabe administrar unidades enteras de asignación (es decir que un archivo ocupa un número entero de clústers), cuantos más sectores haya por clúster, más espacio desperdiciado habrá. Por esta razón, la elección de un sistema de archivos es importante. 13 Sistemas de archivos y sistema operativo En realidad, la elección de un sistema de archivos depende en primer lugar del sistema operativo que esté usando. Generalmente, cuanto más reciente sea el sistema operativo, mayor será el número de archivos que admita. Por esto, se necesita contar con FAT16 en DOS y en las primeras versiones de Windows 95. Empezando por Windows 95 OSR2, usted puede elegir entre los sistemas de archivos FAT16 y FAT32. Si el tamaño de la partición es mayor a 2GB, se excluyen los sistemas de archivos FAT y usted necesitará usar el sistema FAT32 (o modificar el tamaño de la partición). Por debajo de este límite, se recomienda FAT16 para particiones con una capacidad menor a 500Mb. De lo contrario, es preferible usar FAT32. En el caso de Windows NT (hasta la versión 4) usted puede elegir entre el sistema FAT16 y NTFS. No se admite FAT32. Por lo general, se recomienda el sistema NTFS ya que brinda una mayor seguridad y un mejor rendimiento que el sistema FAT. Actualmente, Microsoft recomienda el uso de una partición de tipo FAT pequeña (de entre 250 y 500MB) para el sistema operativo, para poder iniciar el sistema desde un disquete DOS de arranque en caso de que ocurra una catástrofe, y el uso de una segunda partición para almacenar sus datos. En Windows NT5, hay muchas más opciones ya que acepta particiones FAT16, FAT32 y NTFS. Nuevamente, se recomienda el sistema de archivos más reciente (NTFS 5), ya que ofrece muchas más opciones que los sistemas FAT. Por las mismas razones mencionadas anteriormente, aún puede elegir una partición del tipo FAT. Sistema operativo Tipos de sistemas de archivos admitidos Dos FAT16 Windows 95 FAT16 Windows 95 OSR2 FAT16, FAT32 Windows 98 FAT16, FAT32 Windows NT4 FAT, NTFS (versión 4) Windows 2000/XP FAT, FAT16, FAT32, NTFS (versiones 4 y 5) Linux Ext2, Ext3, ReiserFS, Linux Swap (FAT16, FAT32, NTFS) MacOS HFS (Sistema de Archivos Jerárquico), MFS (Sistemas de Archivos Macintosh) OS/2 HPFS (Sistema de Archivos de Alto Rendimiento) SGI IRIX XFS Sistemas Operativos – ISC. Javier Calvo Moreno FreeBSD, OpenBSD UFS (Sistema de Archivos Unix) 14 Sun Solaris UFS (Sistema de Archivos Unix) IBM AIX JFS (Sistema Diario de Archivos) MS -DOS MS-DOS (siglas de MicroSoft Disk Operating System, Sistema operativo de disco de Microsoft) es un sistema operativo perteneciente a la familia DOS comercializado por Microsoft para el IBM PC. Comandos Comandos básicos Aquí se muestran algunos de los comandos que utilizaba MS-DOS, y que actualmente pueden ser utilizados desde la línea de comandos en sistemas operativos Windows. Para acceder a la ayuda de estas, MS-DOS, a partir de la versión 6.2 permite lo siguiente: comando_a_consultar /? (Ej.: copy /?). Pueden ser internas o externas. Comandos internos Sistemas Operativos – ISC. Javier Calvo Moreno 15 CD o CHDIR - Cambia el directorio actual. o CD nombre_directorio Cambia al directorio jerárquicamente inferior. o CD \*PATH - Especifica trayectorias, en las cuales el sistema operativo busca archivos ejecutables. Es un comando que se suele escribir en el Config.sys y en archivos de procesos por lotes. CLS - Limpia todos los comandos y toda la información que hay en pantalla, excepto la letra de la unidad usada (Por ejemplo C:\) COPY - Copiar un archivo de un directorio a otro COPY CON Realizar archivos extensión .bat DIR - Lista los directorios y archivos de la unidad o directorio actual. FOR - Repite un comando PROMPT- Cambia la línea de visualización de la orden. MD - Crea un nuevo directorio. RD o RMDIR- Elimina un directorio. REM - Permite insertar comentarios en archivos de proceso por lotes. REN o RENAME - Renombra archivos y directorios. SET - Asigna valores a variables de entorno. TIME - Visualiza o cambia la hora del reloj interno. TYPE - Muestra el contenido de un fichero. Se utiliza, principalmente, para ver contenidos de ficheros en formato texto. VER - Muestra la versión del Sistema Operativo. VOL - Muestra la etiqueta del disco duro y su volumen (si lo tiene). MEM - Muestra la cantidad de memoria RAM, la cantidad ocupada y la libre. Comandos externos ATTRIB - Sin parámetros, visualiza los atributos de los directorios y archivos. Con parámetros, cambia los atributos de directorios y archivos. Los atributos de los directorios, y los ficheros son: de lectura (r), de escritura (w), de archivo (a), oculto (h), de sistema (s). Parámetros: signos (más o menos) y letras r, w, a, y h "v". Ejemplo: Attrib +r *.* (atributo de sólo lectura, para todos los ficheros de ese directorio) APPEND - Sirve para especificar trayectorias para ficheros de datos. BACKUP - Ejecuta una copia de seguridad de uno o más archivos de un disco duro a un disquete. CHKDSK - Verifica si hay errores en el disco duro. (También se puede utilizar para corregirlos con el paramentro "/F") DELTREE - Borra un directorio sin importar que contenga subdirectorios con todos sus contenidos. DISKCOPY - Permite hacer una copia idéntica de un disquete a otro, pertenece al grupo de las órdenes externas. DOSKEY - Permite mantener residentes en memoria RAM las órdenes que han sido ejecutadas en el punto indicativo. FC - Compara ficheros. FORMAT - Permite crear la estructura lógica, en una unidad física de almacenamiento (discos duros, disquetes y unidades de almacenamiento masivo). Se pueden utilizar estos parámetros combinados. KEYB - Establece el idioma del teclado según el parámetro adicionado (Ejemplo: KEYB SP para el teclado español). LABEL - Muestra o cambia la etiqueta de la unidad de disco duro. MEM - Muestra la memoria RAM, el espacio ocupado y el espacio libre. MOVE - Mueve o cambia de posición un directorio y/o ficheros. También renombra subdirectorios. SUBST - Crea una unidad lógica virtual a partir de un directorio. TREE - muestra los directorios en forma de ARBOL Sistemas Operativos – ISC. Javier Calvo Moreno Uso de comodines 16 Comodines · * Este signo remplaza cadenas de caracteres. Es utilizado en el ejemplo, en el que remplaza el nombre de cualquier archivo solo especifica que se listen los archivos con el nombre [*] y con extensión [txt]. · ? Este otro signo remplaza pero solo un carácter. Podemos especificar mas signos de interrogación. Con lo que si ponemos dir s???*.* Esto nos listaría los directorios y archivos con un nombre que empiecen por s y otras 3 letras cualquier mas unos carácter cualquiera, a continuación él.* que hace que se listen archivos con cualquier extensión. Ayudas para el MSDOS MSDOS, cuenta con una ayuda que se ejecuta con el comando HELP. Lo malo es que hay versiones que no incorpora tal ayuda. La versión del WINDOWS no lo incorpora. También podemos obtener ayuda de un comando determinado, introduciendo el comando y a continuación /?. Por ejemplo: dir /? Esto nos sacara la ayuda del DOS sobre este comando. Comandos para la gestión de directorios Comando: MD Etimología: Viene de make directory. Función: Crear directorios Sintaxis: MD [unidad\ruta\]<nombre> Comando: RD Etimología: Viene de remove directory. Función: Borra un directorio (solo si este se encuentra vació). Sintaxis: RD [unidad\ruta\]<nombre> Comando: DELTREE Etimología: Anglicismo delete “eliminar/borrar” tree “árbol”. Función: Borrar directorios (estando o no estando vacíos). Sintaxis: DELTREE [unidad\ruta\]<nombre> Comando: DIR Sistemas Operativos – ISC. Javier Calvo Moreno Etimología: De directorio. 17 Función: Este comando procesa una visualización de todos los ficheros, directorios, de la ruta en la que nos encontramos. Mediante una serie de parámetros podemos modificar ese listado de visualización. Este comando funciona como un filtro. Sintaxis: DIR [unidad\directorio\fichero] Parámetros: podemos especificar unos parámetros para que se listen los archivos y directorios de una forma concreta: /P Con este parámetro podemos restringir la secuencia de listado y detenerla hasta que pulsemos una tecla. Al pulsar una tecla se procesara el siguiente bloque de listado y así sucesivamente. Este comando reparte internamente el numero de ficheros y directorios en bloques para luego ir sacándolos. /N Ordena por nombre /E Ordena por extensión /S Ordena por tamaño /D Ordena por fecha /G Ordena poniendo agrupados todos los directorios después de los ficheros. Comando: CD Etimología: De change dir (cambiar directorio) Función: Permite cambiar de un directorio activo a otro. Es por el cual podemos movernos en MDDOS. Sintaxis: CD [unidad:]\[ruta]\[directorio] Peculiaridades: Si deseamos retroceder un directorio no hace falta poner la ruta nos basta con poner cd.. Comando: TREE Etimología: Palabra inglesa tree (árbol). Función: Este comando nos mostrara la estructura o el árbol de directorios de la unidad especificada en función opcional de unos parámetros dados. Sintaxis: tree [unidad\ruta] [/f] [/a] Donde unidad/ruta podremos especificar la ruta de la cual deseamos obtener esta información. El parámetro /f hará que se muestren también los archivos dentro de esta estructura de directorios. Comando: MOVE Sistemas Operativos – ISC. Javier Calvo Moreno Etimología: Viene de move (mover) 18 Función: Este comando mueve ficheros de un directorio a otro. Este comando vendría hacer internamente una copia del archivo al directorio especificado a mover, luego borra el fichero de salida. Sintaxis: move [/y] <origen> <destino> Donde /y es un parámetro que poniéndolo el move moverá ficheros sin preguntar la confirmación de reemplazo a otros archivos que se puedan llamar de la misma forma al directorio de destino. En caso de no especificarse, MSDOS nos preguntara la confirmación de reemplazo de ficheros. A continuación debemos especificar el directorio de origen y el de salida o destino. Comandos para la gestión de archivos Comando: TYPE Etimología: Escribir. Función: Ver el contenido de archivos de texto, haciendo un listado (no permite el uso de comodin es). Sintaxis: TYPE [unidad:]\[ruta]\[directorio] \<archivo> Comando: PRINT Etimología: de imprimir Función: Imprime archivo de texto. Sintaxis: : PRINT [unidad:]\[ruta]\[directorio]\<archivo> Comando: COPY Etimología: de copiar. Función: Este comando permite la reproducción o copia de archivos o ficheros (es lo mismo). Sintaxis: copy <fichero-origen> <fichero-destino> Comando: MOVE Función: Este comando mueve ficheros de un directorio a otro. Este comando vendría hacer internamente una copia del archivo al directorio especificado a mover, luego borra el fichero de salida. Sistemas Operativos – ISC. Javier Calvo Moreno Sintaxis: move [/y] <origen> <destino> 19 Comando: REN o RENAME Etimología: Viene de la palabra inglesa rename (renombrar). Función: Su función es dar un nuevo nombre a un fichero. No se puede renombrar y que haya dos archivos con el mismo nombre, ni MSDOS ni Windows lo permiten dentro de un mismo directorio. Si los archivos llamados de forma igual se encuentran en directorios distintos si lo permiten. También podemos usar en este comando los comodines del dir . Sintaxis: rename <nombre-actual> <nombre-nuevo> Comando: DEL Etimología: Su nombre viene como siempre del ingles (delete) Función: Es el comando encargado de eliminar archivos. En este comando podemos usar los comodines que usábamos en el comando dir. Sintaxis: del [unidad:] \[ruta]\[directorio]\<archivo> Comando: ERASE Función: Exactamente igual que el anterior, por ello no le daré mas importancia. Sintaxis: erase [unidad:] \[ruta]\[directorio]\<archivo> Comando: FC Etimología: Como siempre referencia al ingles (normal en la informática ) file compare. Función: Sirve para comparar dos ficheros y verificar así que las copias son exactas. Sintaxis: FC fichero1 fichero2 Comando: UNDELETE Etimología: UN (recupera) DELETE (el borrado), traducción chapucera by Quasi. Función: Permite recuperar ficheros previamente borrados con la orden DEL. Posee tres parámetros /LIST (presenta una lista de archivos recuperables), /ALL (recupera todos los archivos sin pedir confirmaciones) y /DOS (crea una lista de archivos borrados por el dos y otra de archivos borrados por otro motivo). Sistemas Operativos – ISC. Javier Calvo Moreno Sintaxis: UBDELETE [parámetros]<fichero> 20 Comando: XCOPY Función: Con el COPY solo copiábamos archivos con este comando podemos copiar un directorio entero, con sus subdirectorios y archivos. Sintaxis: xcopy origen [destino] Donde origen es la ruta del directorio o archivo a copiar. Parámetros: En este comando puedes incluir unos parámetros o modificadores que tendrá en cuenta a la hora de ser ejecutado, estos son: /P : Pide confirmación de SI o NO antes de copiar cada archivo. /S : Indica que la copia debe hacerse extensiva a todos los subdirectorios. /E : Copia también los directorios vacíos. /W : Espera la confirmación antes de copiar los archivos. /V : Verifica la correccion de la copia. /D Obliga a hacer una copia selectiva solo de los ficheros de fecha igual o mayor a la especificada. Comando: DOSKEY Función: Este comando se encuentra residente en memoria y una vez activado, permite visualizar los comandos de MSDOS introducidos con anterioridad. Comando: VERIFY Función: Comando que indica al sistema que archivos son escritos correctamente. Sintaxis: verify (on/off) Comando: EDIT Función: En MSDOS podemos contar con un editor de texto, con una interface grafica para msdos . Con este editor de texto implementado en MSDOS podemos editar cualquier archivo que contenga texto. Sintaxis: edit [unidad:]\[ruta]\[directorio]\<archivo.ext (solo de texto)> Ejemplo: c:\>edit autoexec.bat Con esto se nos abriría el editor de texto del MSDOS con el archivo de autoexec.bat listo para editar, no metais la pezuña en este archivo si no conocemos su funcionamiento . Sistemas Operativos – ISC. Javier Calvo Moreno En caso de que el nombre de archivo pasado como parámetro al edit no exista, el edit abrirá un archivo en blanco almacenado con ese nombre pero de forma temporal. Así que si queréis tenerlo, debéis guardarlo con el edit en un directorio. 21 Comandos para gestiones en discos y disquetes Comando: FORMAT Etimología: Viene de formatear, anglicismo. Función: Formateado, o borrado completo de un disco o disquete. Sintaxis: format <unidad:> Parámetros: Permite los siguientes modificadores /Q: Realiza formato rápido. /Q y /U : El uso conjunto de estos dos parámetros asegura un formateado muy rápido. Peculiaridades: También existe para recuperar lo formateado el UNFORMAT. Comando: SYS Etimología: De system (sistema). Función: Crear un disco de sistema (un disco con los archivos de sistema) Sintaxis: sys unidad: Comando: CHKDSK Etimología: Deriva de las palabras (check disck), chequear disco. Función: Nos realiza un cheque de la unidad introducida como parámetro en el comando. Mostrándonos así el estado del disco o disquete. Sintaxis: chkdsk [unidad:] [fichero] Comando: DISKCOPY Etimología: Deriva de disk (disco) y copy (copiar) = copia de discos. Función: Copia el contenido total de un disco o disquete, sirve para hacer copias de seguridad, etc. Sintaxis: diskcopy <unidad_origen:> <unidad_destino:> Sistemas Operativos – ISC. Javier Calvo Moreno Comando: DISKCOMP 22 Función: Tras realizar una copia de disquetes podemos realizar una verificación, para ver si ha copiado todos los contenidos, comparando. Este comando compara discos o disquetes. Sintaxis: diskcomp <unidad1:> <unidad2:> Comando: LABEL Función: Es una orden que permite cambiar o borrar el nombre de la etiqueta que tiene asignado un disco o disquete cuando este es formateado. La etiqueta es simplemente un nombre asignado por el usuario para identificar el disco o disquete. Generalmente es bueno que dicho nombre haga alusión a su contenido. Sintaxis: label [etiqueta de volumen] Donde, poniendo solo label nos visualizaría el nombre de la etiqueta, actual. Y especificando ya ese parámetro nos lo podria directamente. Comando: VOL Función: Este comando nos muestra en pantalla, prácticamente la misma información que el anterior, haciendo la salvedad de que este también nos muestra el numero de serie que se le es asignado al disco o disquete. Este numero de serie no es modificable puesto que la etiqueta si lo es y ha de haber alguna forma con la que siempre el sistema pueda identificar un disco. Esto lo hace refiriéndose a ese numero de serie (no modificable). Sintaxis: vol Comando: DEFRAG Función: Defragmenta y obtimiza el disco, almacenando los ficheros en clusters secuenciales, lo que optimiza el rendimiento del sistema. Sintaxis: defrag Comando: SCANDISK Función: Comprueba la integridad de los datos almacenados basándose en el estado del disco que almacena estos datos. Sintaxis: scandisk Comando: MSBACKUP Función: Realiza copias de seguridad. Permite realizar una copia de seguridad de todos o parte de los archivos que se encuentran en el disco duro. Sintaxis: MSBACKUP [nombre del fichero y especificaciones] Comando: RESTORE Sistemas Operativos – ISC. Javier Calvo Moreno Función: Restablece los ficheros de los discos de seguridad. Es un comando complementario al anterior. 23 Sintaxis: RESTORE disk-1: disk-2: [archivos] Comandos para gestiones varias Comando: PROMPT Sint axis: prompt [ texto o parametros ] Definición: Este comando sirve para mostrar en pantalla un texto deseado. Mediante una serie de signos podemos hacer que sean restituidos por valores ya almacenados como la hora, la fecha, etc. Los que sabéis programar en scriptting veréis que el uso de estos signos es muy similar al uso de identificadores. Ejemplo: C:\>prompt El verdadero poder se encuentra en OrioN ScripT.$_ Hoy es dia $d y son las $._Telee una nueva orden $p$g . Signos devolutorios de valores: $ Este signo, es el que siempre se ha de colocar, una vez que es leído por el MSDOS, sabe que ha de sustituir la cadena de carácter que le sigue por un valor almacenado. $_ Procesa el efecto de retorno de carro, o lo que es lo mismo un salto de línea (intro). $b Procesa una canalización ( | ). $d Muestra en pantalla la fecha del sistema. $e Representa el código ascii 27, tecla escape. $g Muestra en pantalla el carácter “>”. $h Procesa un retroceso, la tecla back space. Elimina el carácter anterior. $l Muestra en pantalla el carácter, “<”. $n Visualización de la unidad de trabajo por defecto. $p Visualiza el directorio de trabajo incluyendo la unidad. $q Muestra el carácter “=”. $t Muestreo de la hora del sistema. $v Muestra la versión del MSDOS con la que estamos operando. Comando: CLS Sistemas Operativos – ISC. Javier Calvo Moreno Sintaxis: cls 24 Función: Sus iniciales vienen de clean screen (limpiar pantalla). Su uso es muy simple, se introduce el comando se pulsa intro, y se procesa un limpiada de pantalla. Solo queda el directorio en el que nos encontrábamos, situado en la parte superior de la pantalla. Comando: VER Función: Este comando nos muestra en pantalla la versión que estamos usando del MSDOS. Etimología: De versión en ingles. Sintaxis: ver Comando: DATE Etimología: De fecha en ingles Función: Nos muestra en pantalla la fecha almacenada por el sistema de forma diaria. En una línea posterior nos facilita la posibilidad de cambiar la configuración de la fecha del sistema. Sintaxis: [dd-mm-aa] Comando: TIME Etimología: Supongo que sabréis de donde viene jejeje. Función: Funciona de la misma forma que el comando anterior. La única diferencia es que el anterior muestra la fecha y este la hora, resulta bastante evidente, no . También nos permite la tarea de cambiar la hora en una línea posterior al muestreo de la hora actual almacenada por el sistema. Sintaxis: time Atributos de los ficheros Atributos Permiten asociar a los archivos unas características especiales (oculto, de sistema, de solo lectura, y de archivo). Estas características pueden estar activadas o desactivadas en los archivos a los que se refieren. Con este comando podrás visualizar y modificar atributos de ficheros. 1. Sistemas Operativos – ISC. Javier Calvo Moreno 2. 3. 4. 25 De solo lectura ( r ): Protege a un fichero de forma que solo puede ser leido y no modificado ni borrado. De archivo ( a ) : Sirve para saber si un determinado fichero ha sido o no modificado. Oculto ( h ): Sirve para esconder un fichero. De sistema ( s ) : Sirve para identificar los archivos propios del sistema, los cuales sirven para cargar el SO (sistema operativo). Comando: ATTRIB Para visualizar: Sintaxis: attrib /s Para modificar atributos: Sintaxis: attrib <fichero> <+/-><a/h/s/a/r> Para listar con el dir ficheros con atributos: Sintaxis: dir /a:h Donde dir es el comando de listado de archivos, /a es la salida al comando attrib que mirara solo los archivos :h con el modificador h (oculto). Redireccionamiento y filtros Dispositivos: CON: Bajo este nombre MSDOS identifica al teclado y al monitor (principales dispositivos de entrada y salida). Identifica con el mismo nombre al monitor y al teclado porque son dispositivos unidireccionales, lo que quiere decir que por ellos solo se puede realizar o la acción de entrada de datos o de salida, con lo cual no hay problemas a la hora de identificarlos con el mismo nombre. El nombre CON viene de “CONsola”. LPTn: Este identificativo se refiere a los puertos pararelos. El MSDOS consigue identificar hasta 3 puertos pararelos: LPT1, LPT2, LPT3. Estos puertos pararelos son bidireccionales. Y suelen estar conectados a ellos dispositivos como la impresora, generalmente este esta en el LPT1. A la impresora también se le designa PRN. COMn: Se emplea para identificar los puertos de comunicaciones. Los llamados puertos series, se denominan series, porque envía bit a bit de forma sucesiva, uno detrás de otro. Son dispositivos bidireccionales a los que se suelen conectar el raton, el MODEM, etc. MSDOS puede reconocer hasta 4 puertos serie: COM1, COM2, COM3, COM4. NUL: No identifica a ningún dispositivo en concreto. Pero se crea para representar a un dispositivo ficticio para así simular la trasferencia o recepción de información. Haber, en MSDOS no se trabaja solo con el monitor y el teclado como dispositivos de salida y entrada. MSDOS permite trabajar con otros dispositivos de entrada y salida como puede ser la impresora, etc. Esto se realiza gracias a los redireccionamientos del DOS. Con los cuales si queremos en vez de ver el resultado de un DIR en pantalla podemos redireccionar el comando y sacarlo por impresora, todo el listado. También podremos grabar ese dir en un fichero, etc. Sistemas Operativos – ISC. Javier Calvo Moreno Los redireccionamientos usan unos signos especiales con los que se identifican. 26 Operadores de redireccionamiento de salida: Es el signo de (mayor que): “>”. Este signo dirigirá el comando introducido en el DOS hacia un dispositivo de entrada o slaida. Por ejemplo, si ponemos en el DOS: a:\>dir>director.txt. Esto hará que salgan todo el listado de dir en el archivo especificado. Podemos hacer lo mismo pero en vez de director.txt ponemos el identificativo de la impresora LPT1 o PRN, de esta forma saldrá impreso el resultado del DIR. Operadores de redireccionamiento de entrada: Es el signo de (menor que): “<”. Indica al DOS que debe tomar los datos de entrada desde un fichero que se especifique (por supuesto debe existir dicho fichero) o de otro dispositivo, en lugar de tomarlos por teclado. MSDOS cuenta con 3 ordenes tomadas específicamente para este tipo de redireccionamientos, hablamos de: SORT (ordena los datos de entrada), MORE (visualiza el contenido de los datos de entrada fraccionando su presentación en pantalla completa), FIND (localiza una cadena de caracteres especificos dentro de los datos de entrada). Operadores de redireccionamientos de adicción a un fichero: Se usa el signo doble mayor que: “>>”. La diferencia entre este y el anterior de redireccionamiento a un fichero, radica que este redirecciona el resultado a un fichero y si este fichero contiene ya algo pues lo situá al final. Mientras que el anterior en caso de existir el fichero y de contener algo, lo borraba para meter los nuevos datos surjidos del redireccionamiento. Filtros MSDOS además de permitir redireccionar las ordenes a dispositivos de entrada y salida, también permite direccionar las ordenes a otras ordenes. Para ello cuenta con los FILTROS, para identificarlos usa el signo | (alt gr + 1). Los filtros con los que cuenta son: MORE, SORT, FIND. SORT: Este filtro ordena los datos de entrada. Por defecto los ordena según la primera letra de los datos de salida. Se refiere a la primera letra de cada fila de toda la columna. Sintaxis: SORT [/R] [/+numero] /R: Indica a MSDOS que debe invertir el orden de la ordenación, es decir que orden descendentemente, de mayor a menor. /+numero: Indica a MSDOS que en lugar de ordenar por el primer carácter (la primera columna), lo haga por el carácter que ocupe la posición que se le especifique. FIND: Este filtro localiza una cadena de caracteres dentro de un fichero, por tanto , es aconsejable que se emplee con un fichero de texto. Este filtro recibe como entrada datos dispuestos en filas y devuelve solo aquellas filas que contienen la secuencia de caracteres o cadena que se ha especificado en la orden. Sintaxis: FIND /V /C /N /I <cadena> [fichero] /V: Muestra las líneas que no contienen la cadena. /C: Muestra las líneas que contienen la cadena. /I: Omite mayusculas y minúsculas. /N: Muestra las líneas de texto con la cadena y los numeros de esas líneas Sistemas Operativos – ISC. Javier Calvo Moreno MORE: Permite obtener el resultado de una orden de forma paginada, si el resultado es mayor que la pantalla (mas de 25 lineas). Para así poder visualizarlo todo. 27 Historia de Windows La primera versión de Windows fue la 1.0, lanzada en noviembre de 1985, carecía de funcionalidades y consiguió un poco de popularidad. No era un sistema operativo en sí mismo, sino que era programa ejecutándose en el sistema MS-DOS. En noviembre de 1987 fue lanzada la versión 2.0 de Windows, y fue un poco más popular que su predecesora. La versión 2.03, lanzada en enero de 1988, cambió su interfaz de ventanas, haciéndose muy parecido al sistema operativo de las Apple (le trajo a Microsoft problemas legales). Microsoft Windows 3.0 fue lanzada en 1990, fue la primera versión en alcanzar éxito comercial; vendió dos millones de copias en seis meses. Tuvo mejoras en la interfaz de usuario y las capacidades de multitarea. Luego salió el 1 de marzo de 1992 la versión 3.1 con pequeños cambios. En julio de 1993, Microsoft lanzó Windows NT basado en un nuevo kernel. NT es considerado de la línea profesional de los sistemas operativos Windows. La línea de hogar y la línea profesional fueron fusionadas años más tarde con la llegada de Windows XP. Para agosto de 1995, Microsoft lanza Windows 95, que es considerado realmente un sistema operativo. De todas maneras seguía dependiendo del MS-DOS, por lo que muchos expertos no lo consideran todavía un sistema operativo. Windows 95 cambió completamente su interfaz y se hizo más fácil de usar. Luego, en junio de 1998, se lanzó Microsoft Windows 98, también con gran popularidad, pero con varios problemas de seguridad que necesitaron una Second Edition en 1999 para resolverlos. En febrero de 2000, se lanzó Windows 2000, perteneciente a la línea profesional sistemas de Microsoft. En tanto en la línea de hogar a Windows 98 le siguió Windows ME (Millennium Edition), lanzado en septiembre de 2000. Fue una de las versiones más criticadas del Windows por sus debilidades en la estabilidad y la compatibilidad. En octubre de 2001, Microsoft lanza Windows XP, la cual está basada en el kernel de Windows NT, pero que también incorpora características de la línea de hogar. Esta versión fue sumamente elogiada en revistas de computación, aunque de todas maneras necesitó dos Service Pack de actualización para lograr una seguridad robusta. Sistemas Operativos – ISC. Javier Calvo Moreno En abril de 2003, fue lanzado Windows Server 2003 en reemplazo de la línea de productos para servidores Windows 2000. Esta versión poseía muchas mejoras y una fuerte seguridad. Fue seguido de Windows 2003 R2 en diciembre de 2005. 28 La siguiente versión del sistema operativo fue Windows Vista, lanzada el 30 de noviembre de 2006 para clientes de negocios. En cambio la versión para consumidores fue lanzada el 30 de enero de 2007. Windows Vista trajo mejoras en la seguridad, características más avanzadas en sus gráficos con una interfaz opcional llamada Windows Aero, además de múltiples nuevas aplicaciones. TIMELINE WINDOWS SISTEMA DE ARCHIVOS DE WINDOWS (File System). En computación, un sistema de archivos es un método para el almacenamiento y organización de archivos de computadora y los datos que estos contienen, para hacer más fácil la tarea encontrarlos y accederlos. Los sistemas de archivos son usados en dispositivos de almacenamiento como discos duros y CD-ROM e involucran el mantenimiento de la localización física de los archivos. Más formalmente, un sistema de archivos es un conjunto de tipo de datos abstractos que son implementados para el almacenamiento, la organización jerárquica, la manipulación, el acceso, el direccionamiento y la recuperación de datos. Los sistemas de archivos comparten mucho en común con la tecnología de las bases de datos. Sistemas Operativos – ISC. Javier Calvo Moreno En general, los sistemas operativos tienen su propio sistema de archivos. En ellos, los sistemas de archivos pueden ser representados de forma textual (ej.: el shell de DOS) o gráficamente (ej.: Explorador de archivos en Windows) utilizando un gestor de archivos. 29 El software del sistema de archivos se encarga de organizar los archivos (que suelen estar segmentados físicamente en pequeños bloques de pocos bytes) y directorios, manteniendo un registro de qué bloques pertenecen a qué archivos, qué bloques no se han utilizado y las direcciones físicas de cada bloque. Los sistemas de archivos pueden ser clasificados en tres categorías: sistemas de archivo de disco, sistemas de archivos de red y sistemas de archivos de propósito especial. Ejemplos de sistemas de archivos son: FAT, UMSDOS, NTFS, UDF, ext2, ext3, ext4, ReiserFS, XFS, etc. Sistemas de archivos utilizados por los Windows • FAT: FAT12, FAT16 (usados en MS-DOS y Windows 1.0 hasta Windows 95). • FAT32 (estándar para Windows 98 y Windows ME). • NTFS (estándar para Windows NT, Windows XP, Windows 2000). • ISO 9660 (soportado desde Windows 95 en adelante). • UDF (soportado desde Windows 98 en adelante, con excepción del ME). FAT (File Allocation Table - Tabla de Ubicación de Ficheros). Sistema de archivos que utilizan las ediciones no empresariales de Microsoft Windows hasta Windows ME. Además es un sistema admitido casi por todos los sistemas operativos. El sistema de archivos FAT fue creado por Bill Gates y Marc McDonald en 1977. Existen las versiones FAT12 del año 1977, FAT16 del año 1988 y FAT32 del año 1996. Las implementaciones más extendidas de FAT tienen algunas desventajas; por ejemplo, la fragmentación excesiva de los datos. Cuando se borran y escriben nuevos archivos, suele dejar fragmentos dispersos por todo el soporte de almacenamiento. Esto complica el proceso de lectura y escritura, haciéndose cada vez más lento. Para agilizar la lectura/escritura se usa una herramienta de defragmentación, pero es un proceso demasiado largo. El sistema FAT tampoco fue diseñado para ser redundante ante fallos. También, a diferencia de otros sistemas, no posee permisos de seguridad para cada archivo, por lo tanto cualquier usuario puede acceder a cualquier fichero en el soporte. Es un formato sencillo, muy popular para disquetes, tarjetas de memorias, almacenamiento USB y dispositivos similares. El sistema de archivos FAT se compone de cuatro secciones: Sistemas Operativos – ISC. Javier Calvo Moreno *Sector de arranque. 30 *Región FAT: que contiene la tabla de asignación de archivos. *La región del directorio raíz. *La región de datos: donde se almacena el contenido de ficheros y carpetas. Actualmente el sistema FAT es reemplazado opcionalmente en Windows XP y superiores por el sistema NTFS. NTFs (New Technology File System). Es un sistema de archivos diseñado específicamente para Windows NT, y utilizado por las versiones recientes del sistema operativo Windows. Ha reemplazado al sistema FAT utilizado en versiones antiguas de Windows y en DOS. Fue creado para lograr un sistema de archivos eficiente y seguro y está basado en el sistema de archivos HPFS de IBM/Microsoft usado en el sistema operativo OS/2. También tiene características del filesystem HFS diseñado por Apple. NTFS permite definir el tamaño del clúster de forma independiente al tamaño de la partición. El tamaño mínimo del bloque es de 512 bytes. Este sistema también admite compresión nativa de archivos y encriptación. Es un sistema ideal para particiones de gran tamaño, pudiendo manejar discos de hasta 2 terabytes. Windows NT, 2000, 2003, XP y Vista soportan el sistema NTFS. Sus desventajas son: *Utiliza gran cantidad de espacio en disco para sí mismo. *No es compatible con sistemas operativos como DOS, Windows 95, 98 ni ME. *No puede ser usado en disquetes. *La conversión a NTFS es unidireccional, por lo tanto, no se puede volver a convertir en FAT al actualizar la unidad. Sus ventajas y mejoras con respecto al FAT son: *Compatibilidad mejorada con los metadatos. Sistemas Operativos – ISC. Javier Calvo Moreno *Uso de estructura de datos avanzadas (árboles-B), optimizando el rendimiento, estabilidad y aprovechando espacio en disco, pues acelera el acceso a los ficheros y reduce la fragmentación. 31 *Mejora de la seguridad *Listas de control de acceso *El registro de transacciones (journaling), que garantiza la integridad del sistema de ficheros. Existen tres versiones de NTFS: v1.2 en NT 3.51 y NT 4, v3.0 en Windows 2000 y v3.1 en Windows XP y Windows 2003 Server. Los detalles de la implementación son secretos de Microsoft. Herramientas de diagnóstico de Windows En el Escritorio, al hacer clic con el botón derecho del ratón en una unidad y dirigirse a Propiedades, la ficha "Herramientas" le permitirá acceder a tres herramientas: Desfragmentación (c:\windows\defrag.exe) Comprobación de errores (c:\windows\command\scandisk.exe) Copia de seguridad (c:\program files\accessoires\backup.exe) FORMATEO E INSTALACION DE WINDOWS. El formato de disco en informática es el proceso de preparación de un disco duro o de un medio externo para el vaciado del sistema de archivos. El formateo de una unidad implica la eliminación de los datos, debido a que se cambia la asignación de archivos a sectores, con lo que se pierde la vieja asignación que permitía acceder a los archivos. Cada sistema operativo tiene unos sistemas de archivos más habituales: * Windows: FAT, FAT16, FAT32, NTFS,EFS. * Linux: ext2, ext3, ext4, JFS, ReiserFS, XFS. * Mac: HFS, HFS+. Sistemas Operativos – ISC. Javier Calvo Moreno * Solaris: UFS, ZFS 32 LINUX LINUX (o GNU/LINUX, más correctamente) es un Sistema Operativo como MacOS, DOS o Windows. Es decir, Linux es el software necesario para que tu ordenador te permita utilizar programas como: editores de texto, juegos, navegadores de Internet, etc. Linux puede usarse mediante un interfaz gráfico al igual que Windows o MacOS, pero también puede usarse mediante línea de comandos como DOS. Linux tiene su origen en Unix. Éste apareció en los años sesenta, desarrollado por los investigadores Dennis Ritchie y Ken Thompson, de los Laboratorios Telefónicos Bell. Andrew Tanenbaum desarrolló un sistema operativo parecido a Unix (llamado Minix) para enseñar a sus alumnos el diseño de un sistema operativo. Debido al enfoque docente de Minix, Tanenbaum nunca permitió que éste fuera modificado, ya que podrían introducirse complicaciones en el sistema para sus alumnos. Un estudiante finlandés llamado Linus Torvalds, constatando que no era posible extender Minix, decidió escribir su propio sistema operativo compatible con Unix. En aquellos momentos el proyecto GNU (GNU's Not Unix), que Richard Stallman había iniciado hacía ya casi diez años, comprendía un sistema básico casi completo. La excepción más importante era el kernel o núcleo, que controla el hardware. Torvalds decidió aprovechar el sistema GNU y completarlo con su propio núcleo, que bautizó como Linux (Linux Is Not UniX). El sistema conjunto (herramientas GNU y núcleo Linux) forma lo que llamamos GNU/Linux. El núcleo de Linux Sistemas Operativos – ISC. Javier Calvo Moreno Una pregunta muy común es: ¿qué es el núcleo de Linux?. La respuesta es: Linux. En las líneas anteriores ya se da una primera definición del núcleo: el kernel o núcleo, que controla el hardware. Es decir, el núcleo de Linux, simplificando, es un conjunto de drivers necesarios para usar el ordenador. Relativamente, poco hardware se escapará a un kernel actualizado. 33 Sistema de archivos Linux Ext 2 ext2 (second extended filesystem o "segundo sistema de archivos extendido") es un sistema de archivos para el kernel Linux. Fue diseñado originalmente por Rémy Card. La principal desventaja de ext2 es que no implementa el registro por diario (en inglés Journaling) que sí implementa su sucesor ext3, el cual es totalmente compatible. ext2 fue el sistema de ficheros por defecto de las distribuciones de Linux Red Hat Linux, Fedora Core y Debian hasta ser reemplazado recientemente por su sucesor ext3. El sistema de ficheros tiene un tipo de tabla FAT de tamaño fijo, donde se almacenan los i-nodos. Los inodos son una versión muy mejorada de FAT, donde un puntero i-nodo almacena información del archivo (ruta o path, tamaño, ubicación física). En cuanto a la ubicación, es una referencia a un sector del disco donde están todos y cada una de las referencias a los bloques del archivo fragmentado. Estos bloques son de tamaño especificable cuando se crea el sistema de archivos, desde los 512 bytes hasta los 4 kB, lo cual asegura un buen aprovechamiento del espacio libre con archivos pequeños. Los límites son un máximo de 2 TB de archivo, y de 4 TB de partición. Estructuras de datos ext2 El espacio en ext2 está dividido en bloques, y los bloques organizados en grupos, análogamente los grupos de cilindro del sistema de archivos Unix. Esto se hace para reducir la fragmentación externa y reducir al mínimo el número de búsquedas de disco cuando se lee una gran cantidad de datos consecutivos. Cada bloque contiene un superbloque grupo, el grupo de bloques de mapa de bits, mapa de bits i-nodo, seguidos por los bloques de datos reales. El superbloque contiene información importante que es crucial para el arranque del sistema operativo, con lo que las copias se realizan en cada bloque de grupo de cada bloque en el sistema de archivos. Sin embargo, sólo la primera copia de la misma, que se encuentra en el primer bloque del sistema de archivos, se utiliza en el arranque. El grupo descriptor almacena el valor del bloque de mapa de bits, mapa de bits inodo y el comienzo de la tabla de i-nodos por cada bloque de grupo y éstos, a su vez, se almacena en un grupo descriptor tabla. Dentro de cada inodo existe la siguiente información: Sistemas Operativos – ISC. Javier Calvo Moreno 34 Número de inodo Tipo de fichero Propietario de dicho fichero Permisos del fichero Fecha de creación del mismo Límites del sistema de archivos La razón de algunos límites en el sistema de archivos ext2 son el formato de archivo de los datos y el kernel del sistema operativo. Mayormente estos factores se determinará una vez que cuando el sistema de archivos es creado. El tamaño de bloque de 8 KB sólo son posibles en arquitectura alfa por defecto. También hay muchos programas que no puede manejar archivos de más de 2 GB. El límite de subnivel de directorios es de unos 32768. Si el número de archivos en un directorio superior a 10000 a 15000 archivos, el usuario normalmente sera advertido de que las operaciones pueden durar mucho tiempo. El límite teórico a la cantidad de archivos en un directorio es de 1,3 × 1020, aunque este no es relevante en situaciones practicas. EXT 3 ext3 (third extended filesystem o "tercer sistema de archivos extendido") es un sistema de archivos con registro por diario (journaling). Es el sistema de archivo más usado en distribuciones Linux, aunque en la actualidad está siendo remplazado por su sucesor, ext4. La principal diferencia con ext2 es el registro por diario. Un sistema de archivos ext3 puede ser montado y usado como un sistema de archivos ext2. Otra diferencia importante es que ext3 utiliza un árbol binario balanceado (árbol AVL) e incorpora el asignador de bloques de disco Orlov. Ext3 en Windows Aunque Windows no tiene un soporte nativo para ext2 ni ext3, pueden instalarse drivers para poder acceder a ese tipo de sistemas de archivos. Se puede instalar en todos los sistemas de windows con arquitectura x86. Este driver hace que se puedan montar las particiones sin tener que usar programas aparte. Nos muestra el sistema de archivos como si fuese una partición más dentro de windows. Para bajarse el driver: Sistemas Operativos – ISC. Javier Calvo Moreno Otra opción es usar un programa para poder ver y copiar los archivos que hay en una partición con ext3 y ext2 pero no monta la partición. El programa es Explore2fs y nos permite: 35 Lectura ext2 Lectura ext3 Arrastrar y soltar Soporte de disquetes de 1.44Mb LS120 Floppy Disk Support* Soporte de discos ZIP & Jazz Soporte de discos USB & CF Soporte de CDROM Exporta archivo como binario Exporta archivo como texto Exportar directorio Ver y ejecutar archivos Soporte para discos duros grandes Soporte para archivos grandes LVM2, detección de ReiserFS Soporte Unicode UTF8 Está disponible para las versiones de windows: * Windows 95 * Windows 98 * Windows 98SE * Windows ME * Windows NT 4.0 * Windows 2000 * Windows XP * Windows XP SP2 * Windows Server 2003 Swap La swap es un espacio reservado en tu disco duro para poder usarse como una extension de memoria virtual de tu sistema. Es una técnica utilizada desde hace mucho tiempo, para hacer creer a los programas que existe mas memoria RAM de la que en realidad existe. Es el propio sistema operativo el que se encarga de pasar datos a la swap cuando necesita más espacio libre en la RAM y viceversa. En Linux, la memoria total disponible por el sistema está formada por la cantidad de memoria RAM instalada + la swap disponible. El acceso a la swap (disco duro) es más lento que el acceso a la memoria RAM, por lo que si nuestro ordenador esta muy cargado de trabajo y hace un uso intensivo de la swap, la velocidad del sistema disminuirá. Un uso muy intensivo y continuado de la swap es un indicativo de que necesitamos más memoria en nuestro sistema para que funcione desahogado con el uso que le estamos dando. En linux generalmente se usa como minimo una partición dedicada a swap (aunque también se puede tener un fichero swap). Distribuciones de Linux Sistemas Operativos – ISC. Javier Calvo Moreno Linux es un sistema de libre distribución por lo que podeis encontrar todos los ficheros y programas necesarios para su funcionamiento en multitud de servidores conectados a Internet. La tarea de reunir todos los ficheros y programas necesarios, asi como instalarlos en tu sistema y configurarlo, puede ser una tarea bastante complicada y no apta para muchos. Por esto mismo, nacieron las llamadas distribuciones de Linux, empresas y organizaciones que se dedican a hacer el trabajo "sucio" para nuestro beneficio y comodidad. 36 Una distribución no es otra cosa, que una recopilación de programas y ficheros, organizados y preparados para su instalación. Estas distribuciones se pueden obtener a traves de Internet, o comprando los CDs de las mismas, los cuales contendrán todo lo necesario para instalar un sistema Linux bastante completo y en la mayoría de los casos un programa de instalación que nos ayudara en la tarea de una primera instalación. Casi todos los principales distribuidores de Linux, ofrecen la posibilidad de bajarse sus distribuciones, via FTP (sin cargo alguno). Existen muchas y variadas distribuciones creadas por diferentes empresas y organizaciones a unos precios bastantes asequibles (si se compran los CDs, en vez de bajársela via FTP), las cuales deberiais poder encontrar en tiendas de informática ó librerías. En el peor de los casos siempre podeis encargarlas directamente por Internet a las empresas y organizaciones que las crean. A veces, las revistas de informática sacan una edición bastante aceptable de alguna distribución. A continuación podeis encontrar informacion sobre las distribuciones más importantes de Linux (aunque no las únicas). UBUNTU Distribución basada en Debian, con lo que esto conlleva y centrada en el usuario final y facilidad de uso. Muy popular y con mucho soporte en la comunidad. El entorno de escritorio por defecto es GNOME. REDHAT ENTERPRISE Esta es una distribución que tiene muy buena calidad, contenidos y soporte a los usuarios por parte de la empresa que la distribuye. Es necesario el pago de una licencia de soporte. Enfocada a empresas. FEDORA Esta es una distribución patrocinada por RedHat y soportada por la comunidad. Facil de instalar y buena calidad. Sistemas Operativos – ISC. Javier Calvo Moreno DEBIAN 37 Otra distribución con muy buena calidad. El proceso de instalacion es quizas un poco mas complicado, pero sin mayores problemas. Gran estabilidad antes que últimos avances. OpenSuSE Otra de las grandes. Facil de instalar. Version libre de la distribucion comercial SuSE. SuSE LINUX ENTERPRISE Otra de las grandes. Muy buena calidad, contenidos y soporte a los usuarios por parte de la empresa que la distribuye, Novell. Es necesario el pago de una licencia de soporte. Enfocada a empresas. SLACKWARE Esta distribución es de las primeras que existio. Tuvo un periodo en el cual no se actualizo muy a menudo, pero eso es historia. Es raro encontrar usuarios de los que empezaron en el mundo linux hace tiempo, que no hayan tenido esta distribucion instalada en su ordenador en algun momento. GENTOO Esta distribución es una de las unicas que incorporaron un concepto totalmente nuevo en Linux. Es una sistema inspirado en BSD-ports. Podeis compilar/optimizar vuestro sistema completamente desde cero. No es Sistemas Operativos – ISC. Javier Calvo Moreno recomendable adentrarse en esta distribucion sin una buena conexion a 38 internet, un ordenador medianamente potente (si quereis terminar de compilar en un tiempo prudencial) y cierta experiencia en sistemas Unix. KUBUNTU Distribución basada en Ubuntu, con lo que esto conlleva y centrada en el usuario final y facilidad de uso. La gran diferencia con Ubuntu es que el entorno de escritorio por defecto es KDE. MANDRIVA Esta distribución fue creada en 1998 con el objetivo de acercar el uso de Linux a todos los usuarios, en un principio se llamo Mandrake Linux. Facilidad de uso para todos los usuarios. COMANDOS LINUX – MODO CONSOLA Hay cientos de comandos en Linux más sus opciones, con el tiempo y práctica llegas a conocer bastantes, a continuación recopilo una lista de varios de los mas usados (según mi opinión), tan solo el nombre del comando y su descripción, no opciones, si lo que requieres es una explicación mas extensa de algunos de estos comandos, entonces usa la opción --help que la mayoría de los comandos tienen o usa man comando desde la línea de comandos. Sistemas Operativos – ISC. Javier Calvo Moreno Comandos LINUX 39 1 adduser Ver useradd. 2 alias Crea atajos de comandos, lista los alias actuales. 3 apt-get Herramienta de actualizacón/instalación remota de paquetes en sistemas basados en debian. 4 arp Permite obtener/manipular la lista de direcciones MAC/Ip que el sistema ve. 5 at Programa posterior. 6 awk Análisis y procesamiento de patrones en archivos y listados. 7 basename Permite eliminar la ruta del nombre de un archivo. 8 bc 9 biosdecode Información sobre el BIOS. trabajos, comandos, scripts para Calculadora y lenguaje matemático, muy potente. su ejecución Sistemas Operativos – ISC. Javier Calvo Moreno 40 10 bzip2 Compresor / descompresor de archivos. 11 cal Despliega un calendario. 12 cat Muestra el contenido de archivos y concatena archivos. 13 cd Cambiar de directorio. 14 cfdisk Herramienta de particionamiento de discos, usada en sistemas debian principalmente. 15 chage Permite cambiar la información (expiración, caducidad, etc) de la contraseña de un usuario. 16 chattr Cambia atributos extendidos de archivos y directorios 17 chgrp Cambia el grupo de un archivo(s) o carpetas(s). 18 chkconfig Controla/consulta el modo en que los servicios se ejecutan o no al inicio del sistema. 19 chmod Cambia los permisos de un archivo(s) o carpetas(s). 20 chown Cambia el propietario de un archivo(s) o carpetas(s). 21 chroot Ejecuta comandos de root en un shell restringido a un directorio y sus subdirectorios. 22 chsh Cambia tu shell por defecto o shell de login. 23 clear Limpia la terminal. 24 cmp Compara dos archivos byte por byte. 25 crontab Administra archivos cron para los usuarios y root. 26 curl Permite descargar o transferir url's. 27 cut Remueve secciones (columnas principalmente) de cada línea de un archivo o archivos. 28 date Muestra/establece la fecha y hora actual. 29 dd Convierte y copia archivos y sistemas de archivos. Sistemas Operativos – ISC. Javier Calvo Moreno 41 30 ddate Muestra la fecha en formato del calendario Discordante. 31 df Muestra el uso de espacio de discos duros o particiones. 32 diff Busca y muestra diferencias entre archivos. 33 dig Utilería para consultas a servidores DNS. 34 dmesg Muestra los mensajes del arranque del sistema (boot). 35 dmidecode Lista hardware del equipo directamente del BIOS. (también: lshw) 36 dos2unix Convierte archivos de formato MS-DOS a formato Unix/Linux. 37 du Muestra el uso de espacio de archivos y directorios. 38 echo Imprime una línea de texto, variables, o contenido a un archivo. 39 edquota Administra el control de cuotas de disco de usuario y grupos. 40 egrep Es igual que el comando 'grep -E', para uso de expresiones regulares. 41 eject Desmonta y expulsa un medio removible, como cdroms. 42 env Ejecuta un programa en un entorno modificado. 43 ethtool Permite desplegar o cambiar valores de una tarjeta de red. 44 exit Sale del shell o terminal actual. 45 export Exporta el valor de una variable. 46 expr Evaluador de expresiones matemáticas. 47 fc Lista, edita y reejecuta comandos previamente ejecutados. 48 fdisk Herramienta para particionar discos, común a casi todas las distros. 49 file Determina el tipo de archivo. 50 find Búsqueda de archivos, multitud de opciones de búsqueda. Sistemas Operativos – ISC. Javier Calvo Moreno 42 51 finger Muestra información sobre los usuarios del sistema. 52 fortune Imprime un adagio al azar. 53 free Muestra el espacio usado y libre de memoria RAM y Swap. 54 fsck Herramienta para verificar/reparar sistemas de archivos. 55 gawk Análisis y procesamiento de patrones en archivos y listados. (versión gnu) 56 gcc Compilador de C y de C++ de GNU. 57 gedit Editor de textos de gnome. 58 gpasswd Permite la administración del archivo /etc/group 59 gpg Herramienta de encriptación y de generación de certificados de seguridad (opengpg). 60 grep Busca patrones de cadenas dentro de archivos. 61 groupadd Crea un nuevo grupo en el sistema. 62 groupdel Elimina un grupo en el sistema. 63 groupmod Modifica un grupo en el sistema. 64 groups Imprime los grupos a los que pertenece un usuario. 65 gzip Comprime/expande archivos. 66 halt Apaga el equipo. 67 hdparm Establece y muestra características sobre los discos duros. 68 head Despliega las primera líneas de un archivo. 69 help Ayuda sobre los comandos internos de bash. 70 history Muestra el historial de comandos del usuario. 71 host Utileria de consulta a sevidores DNS. 72 hostname Despliega el nombre del equipo. Sistemas Operativos – ISC. Javier Calvo Moreno 43 73 htpasswd Administra archivos de usuario/contraseña para autentificación básica de Apache. 74 hwclock Muestra/Establece la fecha/hora (Fecha/Hora del sistema con date) 75 id Muestra el UID (User ID) y GID (Group ID) del usuario 76 ifconfig Muestra/Configura las interfaces de red del sistema. 77 init Control de inicialización de un nivel de ejecucción. 78 insmod Inserta módulos en el kernel. 79 ipcalc Realiza cálculos simples sobre direcciones IP. 80 ipcount Identificación de rangos de red, cálculo de IP's. 81 iptab Muestra una tabla de direcciones IP de acuerdo al prefijo CIDR 82 iptables Herramienta de configuración del firewall de Linux. 83 iptraf Analizador de tráfico de red en modo de texto. 84 iwconfig Configura una tarjeta de red inalámbrica. 85 iwlist Obtiene información detallada de una tarjeta inalámbrica. 86 jobs Muestra los background. 87 kate Editor de textos de KDE. 88 kill Termina procesos, mas correctamente envía señales a procesos. 89 killall Termina procesos del mismo nombre o conjunto. 90 last Muestra información de los últimos usuarios logueados. 91 lastb Muestra información loguearse. 92 less Muestra el contenido de un archivo, permite búsquedas y movimento hacía atrás y adelante. trabajos del de usuario los del bios en últimos o hardware. suspensión intentos o fallidos en de Sistemas Operativos – ISC. Javier Calvo Moreno 44 93 ln Crea enlaces (accesos directos) suaves y duros de archivos y directorios. 94 locale Información específica sobre las variables de entorno locales. 95 locate Indexa y busca archivos. Mas seguro utilizar slocate. 96 losetup Define y controla dispositivos del tipo 'loop'. 97 lpq Muestra los documentos para imprimir en la cola de impresión. 98 lpr Añade un documento a la cola de impresión. 99 ls Lista archivos y directorios. 100 lshw Lista hardware del equipo directamente del BIOS. (también: dmidecode) 101 lsmod Muestra el estatus de los módulos en el kernel. 102 lsof Muestra archivos abiertos de un programa en ejecucción, o de un usuario, proceso, etc. 103 lspci Lista los dispositivos pci del sistema. 104 lsusb Lista los dispositivos usb del sistema. 105 man Muestra el manual del comando indicado. 106 mc Manejador de archvivos con soporte de mouse en modo de texto, no todas las distro lo tienen. 107 mcedit Editor de textos de mc. 108 md5sum Comprueba (y genera) archivos con firma de certificación md5. 109 mkdir Crea directorios. 110 mkfs Construye un sistema de archivos de Linux. 111 mkpasswd Generador de contraseñas. (Paquete del programa 'expect'). 112 modinfo Muestra información acerca de los módulos del kernel. 113 modprobe Herramienta que añade/remueve módulos del kernel. Sistemas Operativos – ISC. Javier Calvo Moreno 45 114 more Paginador similar a less pero menos funcioanal, ya que sale avanza y no retocede. 115 mount Monta dispositvos de almacenamiento en particiones indicadas. 116 mtools Conjunto de utilidades para acceder a discos DOS desde Linux. 117 mv Mueve archivos y directorios. 118 netstat Herramienta de red que muestra conexiones, tablas de ruteo, estadísticas de interfaces, etc. 119 nice Ejecuta un programa con una prioridad de ejecucción distinta a la normal. 120 nohup Ejecuta un programa inmune a los hangups y sin salida a una terminal. 121 openssl Control, administración, seguridad. 122 passwd Cambia la contraseña del usuario indicado. 123 ping Manda un echo_request (solicitud de eco) a un equipo en al red. 124 pkill Manda señales a procesos basado en sus atributos. 125 pr Formatea o convierte archivos de texto para imprimirlos. 126 ps Muestra los procesos del sistema o del usuario o ambos. 127 pstree Muestra los procesos en forma de árbol. 128 pwconv Agrega o establece la protección shadow el archivo /etc/passwd. 129 quota Permite ver el uso de cuotas por usuario. generación de certificados 130 quotacheck Crea, verifica, administra sistemas de cuotas de disco 131 quotaoff Desactiva el control de cuotas de discos. 132 quotaon Activa el control de cuotas de discos para usuarios y grupos. 133 rdesktop Abre terminales gráficas ha?ia equipos Windows. de Sistemas Operativos – ISC. Javier Calvo Moreno 46 134 reboot Reinicia el equipo. 135 renice Cambia la prioridad de un proceso o programa en ejecucción. 136 repquota Reporte de uso de cuotas de disco. 137 rev Invierte las líneas de un archivo. 138 rm Borra o elimina archivos. 139 route Muestra/altera la tabla de ruteo IP. 140 rpm Programa para la instalación/actualización/eliminación paquetes, distros basadas en redhat. 141 runlevel Muestra el nivel de ejecución actual y anterior del sistema. 142 scp Copia archivos entre equipos, parte del paquete openssh (protocolo de comunicación encriptado). 143 screen Administrador de terminales virtuales. 144 sed Editor en línea que filtra y transforma archivos. 145 service Ejecuta/detiene servicios en modo manual. 146 set Muestra o establece el entorno de variables para el usuario actuual. 147 sha1sum Comprueba (y genera) archivos con firma de certificación sha1. 148 shopt Habilita o deshabilita variables opcionales del comportamiento del shell. 149 shred Elimina archivos de manera segura e irrecuperable. 150 shutdown Apaga o reinicia el equipo. 151 sort Ordena líneas de archivos y listas 152 ss Utileria similar a netstat pero más básica, listados rápidos de sockets establecidos. 153 ssh Programa de login remoto seguro, programa del paquete openssh (protocolo de comunicación encriptado). de Sistemas Operativos – ISC. Javier Calvo Moreno 47 154 startx Inicia una sesión X. 155 su Cambia del usuario actual al indicado. 156 sudo Permite indicar que usuario ejecuta que comandos de root. 157 sync Forza bloques en memoria a discos, actualiza el superbloque. 158 tac Igual que cat, muestra y/o concatena archivos pero al revés. 159 tail Muestra la parte final de un archivo. 160 tar Herramienta empaquetadora/compresora de archivos. 161 testparm Revisa archivos smb.conf de samba por errores o correciones. 162 time Devuelve el tiempo en que se ejecutó el comando o programa indicado. 163 top Muestra los procesos del sistema de manera interactiva y continua. 164 touch Crea archivos vacios, cambia fechas de acceso y/o modificación de archivos. 165 tput Cambia valores o capacidades de la terminal, en base a terminfo. 166 tty Imprime el nombre de la terminal en la que se esta. 167 umask Establece una máscara de permisos para cuando se crean directorios y archivos. 168 umount Desmonta sistemas de archivos. 169 unalias Elimina alias de comandos, creados con el comando alias. 170 uname Despliega información del sistema. 171 uniq Omite o reporta sobre líneas repetidas en un archivo o listado. 172 up2date Herramienta de actualización/instalación remota de paquetes, (usada en redhat, centos). 173 uptime Muestra que tanto tiempo lleva prendido el equipo. Sistemas Operativos – ISC. Javier Calvo Moreno 48 174 urpmi Herramienta de actualización/instalación remota de paquetes, distros basadas en rpm (usada en mandriva). 175 useradd Añade usuarios. 176 userdel Elimina usuarios. 177 usermod Modifica información de usuarios. 178 vi Editor visual de pantalla, editor de textos, que encuentras en todas las distros Linux. 179 vim Igual que el vi pero mejorado. 180 visudo Editor para el archivo de configuración /etc/sudoers de sudo. 181 vmstat Reporta estadísticas sobre la memoria virtual. 182 vmstat Proporciona información sobre la memoria virtual. 183 w Muestra quien esta conectado al sistema y que esta haciendo. 184 wall Manda un mensaje a todas las terminales. 185 warnquota Configura /etc/warnquota.conf como complemento de mensajes para cuotas de disco. 186 wc Cuenta palabras, líneas, caracteres de un archivo o listado. 187 wget Descargador de archivos desde Internet, no interactivo. 188 whatis Descripción corta, en una línea de un comando o programa. 189 whereis Localiza el binario, fuentes y/o librerias, y documentación de un comado. 190 which Muestra la ruta completa de un comando. 191 who Muestra quien esta conectado al sistema. 192 xhost Control de acceso para sesiones X. 193 xkill Mata o termina a un cliente X, es decir, a un programa gráfico. 194 yes Imprime una cadena repetidamente hasta que sea terminado o Sistemas Operativos – ISC. Javier Calvo Moreno matado el comando. 49 195 yum Herramienta de actualización/instalación remota de paquetes, distros basadas en rpm (usada en fedora, redhat y derivados). 196 zcat Descomprime / muestra archivos comprimidos con gunzip (es idéntico a utilizar gunzip -c) 197 zless Permite mostrar el contenido de archivos comprimidos. 198 zmore Permite mostrar el contenido de archivos comprimidos. EL FUTURO DE LOS SISTEMAS OPERATIVOS Los sistemas operativos online, también llamados Web OS y que se separan radicalmente del concepto tradicional de sistema operativo. Los límites entre un verdadero sistema operativo y el conjunto de aplicaciones que representan una plataforma WebOS se mantienen difusos, según el diseño del que se hable en un momento determinado, pero en general, vamos a tratar a todos como si representaran un modelo genuino de soporte de software vital para lograr la comunicación eficaz entre la máquina y el usuario. Sistemas Operativos – ISC. Javier Calvo Moreno El futuro viene marcado por la frase "en la nube" 50 La característica principal estos sistemas radica en que la plataforma interactúa con el usuario a través del navegador Web y no depende del sistema operativo. Su objetivo clave se dirige a conseguir un funcionamiento basado en “la nube”, es decir, en relacionarse con el exterior mediante la interfaz del navegador y donde todo se realiza de forma remota a través de la conexión a Internet. El poder de procesamiento es ejercido por el servidor del otro lado y el usuario sólo recibe los resultados en su terminal. El potencial de este tipo de sistemas puede llegara ser enorme, tanto en compatibilidad como en potencia de cálculo. Sucede que actualmente se encuentran en fase de desarrollo y no hay acuerdo en la dirección que deben tomar estos sistemas operativos. Cada equipo trata de imponer su filosofía y los diseños se diversifican sin encontrar un conjunto pionero que logre avanzar en la dirección más eficiente.