Introducción a Sistemas Operativos Un Sistema Operativo es el que hace que el ser humano se ponga en contacto con el Hardware. 1ª Evaluación: Informática Básica y MS−DOS BIT.− Binary Dygit CPU.− Unidad Control de Procesos ! Unidad de Control + Unidad Arigmeticologica BIOS.− Sistema Básico de Entrada y Salida (el primer programa real) KNOPIS.− Lynux desde el CD−ROM Sistema Operativo: es un programa o conjunto de programas que actúan como intermediario entre el usuario y el hardware del Ordenador, gestionando los recursos del sistema informático y optimizando su uso. El S.O. presenta al usuario una maquina virtual que es más fácil de utilizar y programar que el hardware que está por debajo. El Sistema Operativo es el primer programa que se carga en el Ordenador y es el responsable en la forma en la que se utilice esto. El mismo equipo hardware trabajará de una forma o otra según el Sistema Operativo que se instale en el. Software + Hardware + Usuario = Sistema Informático Funciones del Sistema Operativo. 1º Control de la ejecución de programas: Acepta los trabajos y administra como se realizan estos, y les asigna los recursos. 2º Administración de periféricos: coordina y maneja los distintos dispositivos conectados a la maquina. 3º Gestión de permisos y usuarios: Adjudica permisos a los usuarios afín de evitar conflictos entre los distintos trabajos. 4º Control de concurrencia: Establece prioridades entre los distintos procesos que desean utilizar el mismo recurso. 5º Control de errores: Controla la posible perdida de información, así como los problemas que pueda producir el hardware. 6º Administración de memoria: Asigna y gestiona la memoria del sistema a los distintos procesos. 7º Control de seguridad: proporciona seguridad para la información almacenada y para la seguridad de los usuarios del sistema. Los 5 niveles teóricos den un Sistema Operativo Solo se pueden comunicar con los de arriba y abajo Nivel 1 − Gestión del Procesador 1 En este nivel se encuentra la parte del Sistema Operativo encargada de la gestión de la CPU. Nivel 2 − Gestión de Memoria Nivel encargado de repartir la memoria disponible entro los distintos procesos. Nivel 3 − Gestión de Procesos Este nivel encargado de la creación y destrucción de procesos, intercambio, detección y arranque de mensajes. Nivel 4 − Gestión de Dispositivos Realiza la gestión de las entradas y salidas en función de los dispositivos existentes. Nivel 5 − Gestión de la Información Se encarga de la gestión de los nombres lógicos y la protección de la información, realizando funciones de creación y destrucción de ficheros, lectura, escritura y protección de accesos. La Evolución Histórica La Evolución Histórica de los Sistemas Operativos está ligada a la Evolución de la maquina. En 1920 se fundó IBM ENIAC: Electronic Numerical Integrated Calculator Generaciones de los Ordenadores 1ª Generación de Ordenadores (1940 − 1960) En 1941 se empezó a construir ENIAC, pesaba 30 toneladas, terminó de construirse en 1946. No habían programas, cambiaban los circuitos según la función que querían que realizara, los datos se introducían con clavijas. En 1954 se diseño un ordenador teórico, pero no se pudo hacer por la tecnología que se disponía, se llamaba EDVA. En 1951 el primer ordenador comercial, UNIVAK, con 1 K de memoria, Entre 1953 y 1957 IMB lanzo la serie 701 consiguieron vender 18 ordenadores. Los ordenadores de la primera generación, funcionaban a base de válvulas. 2ª Generación de Ordenadores (1960−1965) Se cambio las válvulas por los transistores, hacían lo mismo, pero el tamaño era mucho más reducido, lo que hacia que ocuparan menos los ordenadores los transistores se inventaron en 1947 por BELL. Se destaca el ordenador llamado ATLAS, fabricado en 1962, se fabrico en una universidad Inglesa, sin usar las válvulas. 3ª Generación de Ordenadores (1965−1975) Se cambian los transistores por los circuitos, en un circuito caben unos 200 transistores, ocupando mucho menos. IBM fabrica el 360 con el Sistema Operativo O.S. que significa: Operative Sistem 4ª Generación de Ordenadores (1975−1990) Toda la CPU va en un chip, ese es el salto a la cuarta generación, en vez de memorias de ferritas se cambia a la memoria por semiconductores. Intel creo el primer Micro Procesador entre 1979/80. 5ª Generación de Ordenadores (1990−.) Muchas marcas distintas que fabrican microprocesadores hacen que el usuario tenga mejores ordenadores a 2 precios muy bajos. La competencia hace que aumente la Potencia la venta de Ordenadores y la Investigación sobre estos. Generaciones de Sistemas Operativos 0 Generación de Sistemas Operativos En las primeras maquinas no habían sistemas operativos del 40 al 50, todo se tenia que hacer en binario. 1ª Generación de Sistemas Operativos (1950−1960) El Sistema Operativo funciona entre programa y programa, le daba todo el control al programa. IBM − 701 ese proceso se llama proceso por lotes. 2ª Generación de Sistemas Operativos (1960−1970) Lenguaje de programación FORTRAM, lo usaban las universidades, S.O. multiprogramados, podían ejecutar varios programas a la vez. También usaban varios procesadores a la vez, estaban todos los programas en memoria a la vez. 3ª Generación de Sistemas Operativos (1970−1980) La familia de la 3ª generación empieza con los circuitos integrados, misma técnica de programación y Sistema Operativo, Cada parte de la CPU se encargaba de cosas distintas, Apareció la técnica SPOOLING, era el encargado de guardar en un disco intermedio de memoria. Otra técnica, el tiempo compartido, trabaja compartiendo el tiempo de los usuarios, en vez de los programas. Aparece un nuevo Sistema Operativo, que se llama MULTICS, a partir de ahí se desarrolla UNICS y después de ahí el UNIX, que de ahí viene el LYNUX. UNIX se desarrolla en el lenguaje de programación C, los laboratorios Bell. 4ª Generación de Sistemas Operativos (1980−.) Microsoft lanza el MS−DOS en el año 80, 81, 82, Intel crea el microprocesador 8086 por petición de IBM, pero el 8086 era muy caro, y decidieron hacer una línea de PC más baratos 8088. Para IBM. Microsoft compro Microsoft lo retoco y lo vendió a IBM para que lo usaran como S.O. pero con otro nombre, PC−DOS, luego Microsoft retoco el MS−DOS y fue sacando versiones mas avanzadas. Después llego Windows, el 3.11 fue el primero que tenia opción de utilizar una red, pero realmente usabas el MS−dos, el gran salto fue el W95, que aunque era un MS−Dos maquillado era un espacio visual. Después salio el Windows 98 que era un W95 mejorado. Y después de XP, a partir del N3 no se usa el MS−DOS. Clasificación de Sistemas Operativos Clasificación por su estructura interna: Los monolíticos.− Un único programa compuesto de rutinas múltiples, que pueden ser llamadas por el programa principal o pueden ser llamados entre si S.O. Por Capas.− Diseñado en una estructura jerárquica que se divide en distintos niveles. Maquina Virtual.− crea una copia virtual del hardware de la maquina, se utiliza en multiusuario y en monousuario. Cliente−Servidor.− Los procesos pueden ser del servidor o del cliente, el Sistema Operativo se encarga de que estén comunicados, es muy flexible. Por el modo de Explotación: 3 S.O. Por Lotes.− Los trabajos se agrupan en bloques semejantes sin que exista interacción entre el usuario y los procesos mientras estos se ejecutan. Lo resultados no se obtienen de forma inmediata, solo se obtienen cuando se acaba de procesar todo el lote. Tiempo Compartido.− Se divide el tiempo de uso de la CPU para que parezca que se están ejecutando a la vez. Se encarga de distribuir los procesos en función de un tiempo asignado de utilización del procesador, hasta que finalice el proceso. Es transparente al usuario. Tiempo Real.− El tiempo de respuestas es inmediato para la solicitud de ejecución de un proceso, son sistemas muy complejos diseñados para aplicaciones muy específicas. Por los servicios que Ofrecen: Nº de Usuarios: Monousuario.− soportan un solo usuario a la vez, sin importar el número de procesadores, procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Multiusuario.− Dan servicio a varios usuarios a la vez, ya sea mediante varias terminales o por medio de sesiones remotas en una red. No importa el número de procesadores ni el de procesos que cada usuario puede ejecutar simultáneamente. Nº de Tareas: Monotarea.− el Sistema Operativo solo puede ejecutar una tarea a la vez por usuario. Si el sistema es multiusuario solo uno de estos usuarios puede estar haciendo una tarea a la vez. Multitarea.− Puede ejecutar varias tareas de manera concurrente compartiendo el tiempo de uso del procesador entre las diferentes tareas, Nº de Procesadores: Monoprocesador.− Solo puede manejar un procesador Multiprocesador.− Puede manejar 2 o más procesadores, los usa de manera simultanea, distribuyendo la carga de trabajo. Dos maneras de hacerlo: − Simétrica: que se envía un proceso indistintamente a un procesador. − Asimétrica: uno de los procesadores se convierte en el procesador maestro y el resto son esclavos, el procesador maestro envía los procesos a los procesadores esclavos. Por la forma de ofrecer los servicios: Sistema Centralizado: un ordenador central hace todos los procesos, un gran ordenador que realiza todo el procesamiento y los usuarios se conectan al mediante terminales tontos, es decir, sin capacidad de procesar. Sistema en Red: comunica varios ordenadores entre si afín de compartir los recursos y la información del sistema, cada ordenador posee su propio sistema operativo y su sistema de ficheros local. Sistemas Distribuidos: es una variante del sistema en red, pero integrando los recursos en una maquina virtual, de manera que el usuario accede de forma transparente sin saber donde se encuentran los recursos. 4 Componentes del Sistema Operativo KERNEL.− Es el núcleo del Sistema Operativo que interactúa de forma directa con el hardware de la maquina, entre las funciones principales se encuentran las siguientes. − Gestión de memoria − Comunicación entre procesos − Control de interrupciones − Manejo de errores − Control de procesos − Control de Periféricos. Procesos.− Cada proceso se compone de un código que se ejecuta y de una estructura de datos. Ambos cargados en memoria, la estructura de datos sirven para identificar cada proceso y permite controlar los aspectos de su ejecución y contiene la siguiente información: − Programa: objeto pasivo − Proceso: objeto activo en el cual el Sistema Operativo asignara recursos y controlara su ejecución. * Programa en ejecución = Proceso − Estado del proceso: − En ejecución: el procesador esta ejecutando instrucciones de ese proceso en un momento dado. − Preparado: El proceso esta preparado para ser ejecutado y esta esperando su turno. − Bloqueado: el proceso esta detenido en espera de un suceso para continuar su ejecución. − Identificación: a cada proceso se le asigna un código identificador que se utilizara para identificarlo en el Sistema Operativo. − Prioridad: a cada proceso se le asigna una prioridad para obtener los recursos del Sistema Operativo. − Zona de Memoria Asignada: cada proceso posee una zona de memoria asignada que no puede ser interferida por otro proceso. 4 transiciones de los procesos: Transición 1.− entre la ejecución y el bloqueado, ocurre cuando el proceso en transición necesita algún elemento o señal para continuar ejecutándose. Transición 2.− cuando pasa ha preparado, pasa cuando ha agotado su tiempo de ejecución y debe dejar paso al siguiente proceso. Transición 3.− de preparado a ejecución, ocurre cuando al proceso se le asigna un nuevo intervalo de tiempo y toma posesión del procesador Transición 4.− de bloqueado a preparado, ocurre cuando el proceso bloqueado recibe el elemento o señal que 5 esperaba y puede continuar ejecutándose, pasando a preparado para competir por el procesador. Planificación del Sistema Operativo.− El Sistema Operativo se encarga de compartir el procesador entre los distintos procesos. Mediante los algoritmos de planificación, el sistema decide que proceso ha de ejecutarse y los estados por los que debe pasar. Estos algoritmos buscan de la manera más eficiente los siguientes objetivos: 1.− Equildad (igualdad).− el planificador de asignar el tiempo de utilización del procesador de la manera más justa posible. 2.− Eficiencia.− debe mantener al procesador ocupado el mayor tiempo posible. 3.− Tiempo de Respuesta bajo.− debe minimizar el tiempo de respuesta para los usuarios. 4.− Alto Rendimiento.− debe maximizar el número de procesos que se ejecutan en un periodo de tiempo. Existen multitud de algoritmos pero destacamos 3: Algoritmo FIFO.− First In First Out − Los procesos se ejecutan según su orden de llegada. El primero en entrar no libera los recursos hasta que termina. Es el más sencillo pero el más ineficaz. Algoritmo de Rueda.− Round Robin − asigna rotativamente el mismo tiempo de ejecución (quantum) a los diferentes procesos en forma rotatoria. Es de los mas sencillo, justo y de un uso más extendido. Algoritmo por prioridades.− asigna los tiempos de ejecución según una lista de prioridades. El tiempo de ejecución será mayor para los procesos de mayor prioridad. Es uno de los más complejos y eficaces. Ejercicios: FIFO Round Robin Prioridades Ejercicio 1.− Supongamos que un procesador tiene que ejecutar 3 procesos. Cada uno de ellos utiliza unos determinados tiempos de procesador, 6 para el proceso A, 4 para el proceso B y 10 para el proceso C. Si el primer proceso que se lanza es A, el segundo es B y el tercero es C. ¿Cómo se iran ejecutando los procesos mediante el algoritmo FIFO? ¿Y mediante el Round Robin? Ejercicio 2.− Si asignamos la mayor prioridad al proceso C, luego al B y por ultimo al A. ¿Cuál seria el resultado? Bloqueos.− En los sistemas de tiempo compartido se pueden presentar problemas a la hora de competir los recursos del sistema. El sistema operativo debe ofrecer mecanismos para sincronizar la ejecución de los procesos. Para ello una solución son los semáforos, rutinas de software que logran la exclusión mutua en el uso de los recursos. No obstante la apropiación de un recursos puede producir problemas como el bloqueo, que se produce cuando un proceso determinado espera un evento que solo puede ser provocado por otro proceso. Este segundo proceso también permanece esperando y ninguno de ellos realiza ninguna acción hasta que el otro libere algún recurso, entrando en un bucle de espera sin fin. (Dead Lock). 6 Algunas técnicas para evitar bloqueos son las siguientes: Asignación de recursos en orden lineal.− los recursos tienen asignado un valor y los procesos solo hacen uso de recursos con valores mayores al que se le asignan al proceso. Asignación Todo−Nada.− El proceso pide todos los recursos que va a utilizar de una vez y el sistema se los asigna si puede dárselos todos. Algoritmo Banquero.− utiliza una tabla de recursos. Cuando un proceso pide un recurso, se mira en la tabla si esta disponible, si no lo esta se hace esperar al proceso. Gestión de Memoria.− La memoria principal es un recurso que debe ser gestionado con sumo cuidado, el administrador de memoria es la parte del Sistema Operativo encargada de reservar espacio en memoria para os procesos y liberarla cuando han finalizado, también se encarga del intercambio de datos entre la memoria y los dispositivos de entrada−salida, también se encarga de la protección de datos y el uso de la comparición de memoria. RAM= Memoria de Acceso Aleatoria ROM= Memoria de solo lectura Existen diferentes métodos de Administración de memoria, destacamos 3: Memoria Virtual.− Método que consiste en permitir que el tamaño del programa y el tamaño de los datos que el programa utiliza sean mayores que la cantidad de memoria física disponible. El sistema operativo deja en Memoria Principal (RAM) las partes del programa que se están utilizando y el resto lo almacena en disco mediante una zona de intercambio. (Swap). Ha eso se le denomina hacer Swaping. Paginación.− metodo que consiste en dividir la memoria en zonas de tamaño fijo llamadas frames y los programas, partes del mismo tamaño llamadas páginas. Segmentación.− tecnica similar a la paginación pero definiendo los bloques de la memoria de tamañp variable. Gestion de perifericos.− se dibiden en dos: Tipo Bloque.− trabaja con información dividida en bloques de tamaño fijo. Entre ellos se encuentran los discos duros y la memoria Tipo Carácter.− trabajan con grupos de bytes sin importar su longitud. Entre ellos se encuentran el teclado, el raton e impresoras. Los perifericos de entrada−salida poseen una parte mecanica y una parte electronica. La parte mecanica es el dispositivo en si mismo. Cuando se realiza el acceso a un dispositivo se hace a traves de su parte electronica llamada controladora de dispositivo. La mayoria de las controladoras de bloques permiten la tecnica DMA! Direct Memmory Acces o Acceso Directo a la Memoria. Mediante esta tecnica se pretende descargar trabajo del procesador en las operaciones de entrada−salida. El driver es la parte software que comunica el periferico y el procesador. Es el encargado de indicar los comandos que tiene que ejecutar y planificar que se ejecuten de forma adecuada. 7 Gestion de Datos.− para poder manejar la información que después debe ser procesada, esta debe almacenarse en soportes externos mediante ficheros. Un fichero es un conjunto de datos estructurados que se usan mediante un determinado programa. El Sistema Operativo gestiona cada fichero almacenado indicando su nombre, tamaño, tipo, lugar donde se encuentra, etc Ha esto se le denomina sistema de ficheros. Los sistemas de ficheros manejan dos tipos fundamentales de objetos. Los ficheros regulares, que contienen la información y los directorios que son ficheros que contienen referencias a otros ficheros regulares a otros directorios. La utilización de directorios permite una mayor organización de los ficheros dentro del disco. En casitodos los sistemas de ficheros existe un directorio principal llamado Raiz (Root). Que es el directorio que contiene todos los demas ficheros y directorios. A partir de el se crea una estructura jerarquica en forma de arbol invertido de ficheros y directorios. Las caracteristicas de los nombres de los ficheros dependen de los Sistemas Operativos. En general utilizan nombres de ficheros con partes separadas por un punto. La primera parte es el nombre en si y la segunda se denomina extensión de fichero, que normalmente indica el tipo de fichero que es. (Ms−Dos, Windows, Linux NO). Existe una información adicional al fichero denominadas atributo, que caracteriza a cada fichero indicando que tipo de operaciones o usuarios pueden interactuar con él. Estos atributos varian de un Sistema Operativo a otro. Cada sistema Operativo utiliza su propio sistema de ficheros. Entre los mas extendidos tenemo los siguientes: − FAT − File Allocation Table FAT 16 − MS−DOS, Windows 95, Windows NT FAT 32 − Windows 95 OSR2, Windows 98, Windows 98 SE, Windows XP, Windows 2000, Windows 2003 − NTFS − New Tecnology File System − aporta seguridad y aprovecha mejor el espacio de los ficheros. NTFS − Windows NT, Windows XP, Windows 2000, Windows 2003. MS−DOS Microprocesadores INTEL 8080 − 8 Bits Palabra del ordenador de 8bits 8086 ! 16 bits ! Bus externo 16 bits 8088 ! 16 bits ! Bus externo 8 bits CP/M Digital Research era la empresa encargada de crear el sistema operativo para esos dos procesadores de Intel. El CP/M86 era el Sistema Operativo del procesador del 8086. 8 Tim Patterson (Seattle Computer) crea el Q−DOS, que significa Rapido y sucio Sistema Operativo. Este sistema operativo tiene unas 4000 lineas de codigo. Bille Gates le compra a Tim Patterson su sistema operativo, lo retoco un poco, y se lo vendio a IBM para que lo pusieran con el nombre de PC−DOS pero él seguia teniendo los derechos del sistema operativo con el nombre MS−DOS. Aquí empezó el imperio Microsoft. Distintas versiones de MS−DOS: Año 1983 1983 Version 2.01 2.11 1984 3.0 1985 1986 3.1 3.2 1987 3.3 1988 4.0 1988 1991 4.0.1 5.0 1993 6.0 1993 1994 6.2 6.22 Descripción y Novedades. En esta podemos usar discos. Se pueden usar discos de mas de 10 mb. Permite usar red (lan) Disquetes de 720 KB FD 3.5´´ 1´44Mb permite hacer unidades sencillas en las particiones logicas del disco duro Le instalaron shell. Deja hacer particiones de 32 Mb o mayores. Deja usar memoria EMS (Memoria Expandida) Arregla los fallos de la 4.0 Consigue liberar mas memoria para los programas (mediante trucos) Diseñado para soportar el Windows 3.11. Optimiza la memoria automáticamente. Config.sys Autoexe.bat Ya se puede leer CD−ROM y podia comprimir el Disco Duro. No habia perdida de datos en la compresión de disco. Mejoraba un poco mas la compresión del disco. Estructura interna de MS−DOS.− Fichero o archivo; File; es un cojunto de información, la información puede estar en forma de datos o de programa y tendra que estar almacenada. Tipos de Ficheros: De texto: estan en un codigo (ASCII) American Standard. De Programa: que forman parte del Sistema Operativo De programa de usuario: son los programas comerciales. Los nombres de fichero en MS−DOS pueden tener hasta 8 caracteres y/o digitos, y para formarlo se puede utilizar cualquier combinación de letras o de numeros. Normalmente se pone un nombre que ayude a saber que contiene el fichero. No se pueden utilizar como parte del nombre: Punto ( . ) Comillas ( ) Dos Puntos ( : ) Tubería ( | ) 9 Corchetes [ ] Más ( + ) Punto y Coma ( ; ) Mayor/menor ( >/< ) Igual ( = ) Coma ( , ) Luego tambien tiene tres digitos más para la extensión. Los nombres de los directorios siguen las mismas normas que los programas; DOS comprende diferentes componentes que son responsables de determinadas areas funcionales. Las tres partes mas importantes son: • La BIOS (del MS−DOS, No la ROM BIOS • El núcleo del Dos (Kernel) • Procesador de comandos o Interprete de Comandos. Estan puestas en el disco en distintos ficheros La Bios.− IO.SYS en los primeros ordenadores de IBM se llamaba IBMOI.SYS. Contiene los drivers y controladores de los siguientes elementos o dispositivos: • teclado y pantalla (CON) • impresora (PRN) • puerto de serie (AUX) • Dispositivo Virtual (NUL) • Reloj del Sistema ($Clock) • Disco Duro y Diquets (Disk) El Kernel.− esta en un fichero llamado MS−DOS.SYS dentro de el esta el DOS−API (Aplication Programing Interface) Interprete de Comandos.− Comand.com lleva dentro de si los comandos basicos del MS−DOS. Tanto el IO.SYS y el MS−DOS.SYS estan protegidos y ocultos y solo se puede leer. El comand.com no se puede borrar pero si leer. El comand.com acepta tres tipos de ordenes. Es el encargado de ejecutar los ficheros ejecutables, (.exe y .com) tambien puede ejecutar los .bat Comandos internos: dir, copy, BAT : Ficheros de texto ASCII pero que se pueden ejecutar. El Arranque de MS−DOS El primer sector de la primera pista de un disco duro es el sector de arranque. En los discos se llama Master Boot Record. 1º − El primer fichero que busca la ROM−BIOS es el IO.SYS 2º − Cuando lo encuentra lo carga y va a buscar el MS−DOS.SYS 3º − La ROM−BIOS se copia en la memoria RAM (porque la RAM es mas rapida que la ROM) 4º − Busca el CONFIG.SYS 10 5º − Se carga el AUTOEXE.BAT Diagrama de flujo.− nos explica la ejecución de un programa. Diagrama de flujo del Arranque de MS−DOS Comandos del MS−DOS 1.− DATE [DD−MM−AA] 1980−2099 •− .. // 2. TIME [HORAS[:MINUTOS[:SEGUNDOS[:CENTÉSIMAS]]][A|P] UNO U OTRO 3. VER: Sacar por pantalla la versión de MS−DOS que está ejecutándose 4. CLS: Limpiar pantalla 5. PROMPT [TEXTO][VALOR] Serie de caracteres que determinan la información que aparecerá en el indicador del sistema según los siguientes valores. $Q: = $L: < $$: PESETAS $B: | $T: HORA $_: RETORNO DE CARRO (SALTO) $D: FECHA $E: SÍMBOLO ESC 27 (!) $P: UNIDAD Y RUTA ACTUAL $H: BORRA 1CARÁCTER HACIA IZQ $V: VERSIÓN $N: UNIDAD ACTUAL $G: > Comandos de mantenimiento de disco • Format: Da formato a un disco Antes de V.5 UNIDAD: [/V[:ETIQUETA][/Q][/U][/T:PISTAS/N;SECTORES][/S][/C] DESPUÉS UNIDAD: [/V[:ETIQUETA]][/Q][/U][/F:TAMAÑO][/S][/C] 11 /V verifica /Q formateo rápido: Puedes recuperar pero no busca sectores corruptos /U formateo incondicional: no se puede recuperar nada /T:PISTAS/N:SECTORES: no se utiliza, es por pistas (80 pistas/18 sectores) pistas sector /C: comprueba los datos dañados. Avisa pero no repara Comandos para manejar el disco Unidad física: lo que hay Particiones de disco: unidades lógicas Cada una de las unidades presentes en la composición de 1 ordenador Representación que MS−DOS realiza de 1 unidad física. A cada unidad física le corresponde 1 o más unidades lógicas. En Linux, Unix: 3 unidades físicas; 1 lógica Unidad activa; aquella sobre la que se está situado en el momento de ejecutar 1 orden, 1 mandato. Directorios: zona del disco donde se organiza el almacenamiento de ficheros. Tienen 8 dígitos y nombre de extensión. Directorio raíz; directorio principal del disco. Se crea al dar formato al disco. No se puede borrar. Subdirectorio: 1 directorio dentro de otro C:\>UNO\DOS Directorio activo en el que nos encontramos Trayectoria o ruta (path) designa la posición de fichero o directorio en 1 unidad y consta de 3 partes: Nombre de unidad Cadena de directorios separa por \ Nombre de fichero completo Comandos que trabajan con directorios MKDIR [UNIDAD:][RUTA] MD [UNIDAD:][RUTA] CREAR 12 Especifica unidad en la que se crea. Nombre y ubicación de 1 directorio. Longitud máxima de la ruta=63 CHDIR CD CAMBIA DE DIRECTORIO CHDIR [UNIDAD:][RUTA] CD [UNIDAD:][RUTA] RMDIR [UNIDAD:][RUTA] RD [UNIDAD:][RUTA] BORRA DIRECTORIO Tiene que estar vacío. No puede borrar directorio si se está dentro. La raíz no se puede borrar |MORE: Para pasar página a página TREE [UNIDAD][RUTA] [/F][/A] DELTREE [/Y][UNIDAD:][RUTA] DIR [UNIDAD:] [RUTA] [NOMBREDEFICHERO] [/P] [/W] [/A[[:]INDICADORES][/O[[:ORDENDECLASIFICACIÓN]][/S][/B][/L][/C] [NOMBREDEFICHERO]: SÓLO TE SACA SI ESTA [/P]: PASA PÁGINA A PÁGINA [/W]: [/A]: Presenta sólo número de ficheros y directorios que tengan los indicadores especificadores H: muestra los ficheros ocultos −H: todos menos los ocultos S: motraría los de sistema −S: todos menos los de sistema D: muestra directorios −D: todos menos directorios, sólo ficheros A: los ficheros con modificador de lectura, escritura −A: los que no tengan R: ficheros de sólo lectura 13 −R: todos los demás [/O]: Para verlo ordenado. Por defecto el que se escribe antes. Se ve orden alfabético y de tipo dir/fic N: Ordena por orden alfabético por nombre A−Z −N: Z−A E: Alfabético, por la extensión −E: Decreciente D: Por fecha más anterior −D: Por fecha más reciente S: Por tamaño desde el más pequeño −S: Por tamaño desde el más grande G: agrupa primero directorios, después ficheros −G: agrupa primero ficheros C: ordena por razón de compresión, primero el más comprimido −C: menos comprimido % de compresión [/S]: Búsqueda del fichero especificado a través de los subdirectorios del directorio activo [/B]: Sólo nombres de ficheros ¿??????? [/L]: Nombres en minúsculas [/C]: Vemos porcentaje de compresión Comodines (*) (?) El asterisco, sirve como una cadena entera: pepe.*, todos los ficheros que se llamen pepe, con cualquier extensión a*.txt, todos los ficheros que empiecen por a El símbolo de interrogación sirve como un carácter: Pepe?.txt: cualquier fichero que tenga una letra después de pepe Para que, por defecto, cada vez que utilicemos un dir, el ordenador haga un dir/o, hay que ir a la variable de entorno: 14 Set dircmd=/o intro COPY [/Y|−Y][/A|/B][ ORIGEN[/A|/B][+...]][DESTINO [/A|/B][/V] COPY CON [UNIDAD:][RUTA] /Y: No pregunta al machacar /−Y: Sí que pregunta para machacar /A: Código ASCII /B: Código binario. Se pone en lenguaje máquina COPY/A ORIGEN DESTINO: Considera al fichero como ASCII y copia los datos que preceden al primer carácter de fin de fichero. Copy no copia el primer carácter de fin de fichero ni el resto del fichero COPY/B ORIGEN DESTINO: copia el fichero completo, incluyendo cualquier carácter de fin de fichero. COPY ORIGEN /A DESTINO: Agrega 1 carácter de fin de fichero como último carácter de fichero COPY ORIGEN /B DESTINO: No lo agrega COPY P1.TXT+P2.TXT+P3.TXT P4.TXT Los ficheros que se suman tienen k existir y seguardan en el último, pero si...?????? entonces se guarda en P1 /V: verificación: Compara ambos disquetes. Verifica si la copia es correcta o no C:\> COPY CON PP.TXT CONSOLA = TECLADO +MONITOR Crea un archivo con lo que se escriba SET COPYCMD=/V: Por defecto pone la verificación Curiosidades: Copy no copia ficheros de longitud 0 COPY/B PP.TXT+: vuelve a copiar el fichero ERASE [UNIDAD:][RUTA]NOMBREDEFICHERO [/P] DEL /P: Pide confirmación a la hora de borrar un fichero XCOPY: Copia ficheros y directorios XCOPY ORIGEN [DESTINO][/A|/M][/D:FECHA][/P][/S[/E]][/V][/W] 15 Origen: posición y nombre del fichero que se quiere copiar. Puede indicar unidad y ruta Destino: especifica destino de fichero que se quiere copiar /A: Copia sólo los ficheros de origen que tengan establecidos indicadores de lectura/ escritura. Este modificador no cambia el indicador de lectura/ escritura de origen. /M: Lo mismo, pero desactiva los indicadores de lectura/ escritura origen /D: fecha: copia sólo ficheros de origen que hayan sido modificados en o después de la fecha especificada. /P: Solicita que se confirme para crear cada fichero destino /S: copia directorios y subdirectorios a menos que estén vacíos /E: copia los subdirectorios vacíos /V: Comprueba cada fichero al escribirlo en 1 destino /W: Presenta el siguiente mensaje y efectua una pausa en espera de respuesta antes de empezar a copiar Presione cualquier tecla para comenzar a crear los archivos Hay que especificar si el destino es fichero o directorio Si destino con tiene 1 directorio existente y no termina con 1 contrabarra, xcopy presentara un mensaje con el siguiente formato ¿Especifica destino un nombre de archivo o de directorio destino (A=archivo, D=directorio)? Los ficheros nuevos los crea con indicador de lectura (+A) Da errores?????????????? TYPE [UNIDAD:][RUTA]NOMBREDEFICHERO: Te deja verlo, no modificarlo VOL [UNIDAD:]: Presenta la etiqueta de volumen y el número de serie DISKCOPY [UNIDAD1[UNIDAD2:]][/V][/M]: Para copiar diskettes extraíbles /V: Verifica y compara /M: hace el archivo temporal en la RAM. Sin esto lo hace en el disco duro Conviene hacer defragmentación cada cierto tiempo DISKCOMP [UNIDAD1:[UNIDAD2]]: Compara todo CHKDSK [UNIDAD:][[RUTA]NOMBREFICHERO][/F][/V]: Comprobación de si todo es correcto /F: Repara los errores del disco 16 /V: Te dice lo que hace Redireccionamiento: cambio de salida o entrada de datos a otro dispositivo de la pantalla o teclado Redireccionamiento de entrada < Redireccionamiento de salida > Redireccionamiento de adición >> Añade la salida de 1 mandato al contenido de 1 fichero Filtros: Permiten desviar la salida de un mandato de MS−DOS a otro mandato Comandos MORE MORE<[UNIDAD:][RUTA]NOMBREFICHERO NOMBRECOMANDO|MORE Para pasarlo todo paginado SORT SORT[/R][/+N][<][UNIDAD1:][RUTA1]NOMBREFICHERO1 [>[UNIDAD2:] [RUTA2][NOMBREFICHERO2] [COMANDO| ]SORT[/R][/+N][>UNIDAD:][RUTA][NOMBREFICHERO] Presenta unos datos de entrada que saca por pantalla ordenados SORT<DESORDEN.TXT>ORDEN.TXT DIR/O: DIR|SORT>PRN =SORT<DIR>PRN /R: Invierte el orden de la ordenación /+N: Indica la posición desde la que ordena RENAME [UNIDAD:][RUTA]NOMBREFICHERO1 NOMBREFICHERO2 Renombra ficheros MOVE [/Y|/−Y][UNIDAD:][RUTA]NOMBREFICHERO[,[UNIDAD:][RUTA] NOMBREFICHERO [...]]DESTINO Mueve el fichero al destino seleccionado. Con el Y no pide confirmación para mover ficheros.Con el −Y fuerza a que se pida confirmación. Se fija en el COPYCMD. Tiene errorlevel 17 ATTRIB [+R|−R][+A|−A][+S|−S][+H|−H][[UNIDAD:][RUTA]NOMBREFICHERO] [/S] Si está sólo, muestra atributos y nombres de fichero. Si se le pone atributo entonces cambia el atributo +R: lectura +H: oculta fichero +S: sistema +A: lectura/escritura /S: Procesa ficheros del directorio actual y de todos los subdirectorios LABEL [UNIDAD:][ETIQUETA] Cambia etiquetas. Sin nada, te dice la anterior. Solo sin etiqueta FIND [/V][/C][/N][/I]CADENA[[UNIDAD:][RUTA]NOMBREFICHERO [...]] Encuentra unos caracteres dentro de un nombre de fichero o más Cadena: Especifia el grupo de caracteres que queremos buscar y va entre comillas /V: Presenta todas las líneas que no contengan esa cadena /C: Presenta el número que indica cuantas líneas tienen la cadena /N: Precede cada línea con el número de línea del fichero /I: Especifica que no se haga distinción entre mayúsculas y minúsculas DOSKEY: Crea macros y graba los comandos utilizados. Permite recuperar y editar mandatos introducidos a través del teclado y crear macros DOSKEY [/REINSTALL][/BUFSIZE=TAMAÑO] [/MACROS][/HISTORY] [/INSERT|/OVERSTRIKE] [MACRO=[TEXTO]] Macro=texto: crea macros, ?????, ajusta /REINSTALL: Instala una nueva copia del programa doskey aunque ya haya una instalada. Si ya existe una, se limpiaría el buffer /Bufusize=tamaño: Específica el tamaño Bufffer en el que DOSKEY almacenará los comandos o macros 512 bytes es por defecto 256 bytes es lo mínimo /Macros: Presenta una lista de macros instaladas en la RAM en ese momento 18 /History: Presenta por pantalla la lista de comandos almacenados en la memoria RAM /Insert: corre espacios /Overstrike: sobrescribe !: Muestra orden anterior !: Muestra orden posterior RePag: Lleva a la primera orden seleccionada AvPag: Lleva a la última orden seleccionada ctrl.−derecha: 1 palabra a la derecha ctrl.−izqda: 1 palabra a la izquierda INICIO: Principio de la línea FIN: Final de la línea ESC: Deja en blanco línea Borrar−Suprimir: encima del cursor F7: Muestra numerdas tods las órdenes almacenadas F8: Busca en el almacen todas las ordenes cuyos primeros caracteres coincidan con los tecleados F9: Pide el número de orden de la instrucción y la saca por pantalla ALT+F10: Limpia todos los comandos metidos Caracteres especiales usados en la macro para DOSKEY: >=$G: Redirige la información de salida >>=$G$G: Añade en el fichero que se solicita $L=< |=$B: Envia la información de salida de 1 macro hacia 1 comando $T: Separa comandos. Es como el punto y aparte $$: Para meter un dólar $1−$9: Representan cualquier información para la línea de comandos que se desea especificar al ejecutar la macro (Parámetros). $*: Representa toda la información para la línea de comandos que se desea especificar al introducir el nombre 19 de la macro C:\>DOSKEY LEER=TYPE $1 C:\>LEER PP.TXT EDIT (Editor de texto de MS−DOS): EDIT [UNIDAD1:][RUTA:[NOMBREFICHERO]] Comandos de movimiento ctrl.+s: izquierda ctrl.+d: derecha ctrl.+a o izquierda: Palabra a palabra izquierda ctrl. +f o derecha: Palabra a palabra derecha ctrl. +e: arriba ctrl. +x: abajo ctrl. q s: inicio ctrl. q d: fin ctrl. + enter????????????????? Mayúscula supr.: ctrl. X: cortar ctrl. insert: ctrl. C: copiar Mayúscula insert: ctrl. V: Pegar ctrl. QE: Al prinicipio de la página ctrl. QX: Al final F6: Siguiente pantalla Alt+: Ajusta ventana Alt−: Ajusta ventana INS/OVERSTRIKE: INS CTRL. V????????????????????? INICIO CONTROL N: Deja línea en blanco arriba Seleccionar texto 20 Mayúscula !!!! Mayúscula ctrl.: ¿???????????????? Toda la pantalla Mayúscula RePag: Toda la línea hasta pantalla Fichero interno May Control Inicio: Desde donde estás Cortar al portapapeles CY??????????? Desde donde estamos hasta fin: Control Q+X Buscar cadenas ctrl. q+f: Selecciona la pantalla ctrl. +F3: Repite la última búsqueda Mayúscula suprmir: Pasa a portapeles, borrando Retroceso o control + h: borra a la izquierda+Suprimir o control y ctrl. + t: Borra la palabra F!: Ayuda de comandos o menús Mayúscula + F!: Introducción FICHEROS BATERÍA O DE PROCESO POR LOTES Se utiliza edit para crearlos: BAT Comandos dentro de un fichero batería REM [COMENTARIO]: Para comentar ( no se usa <, >, |) ECHO: Muestra u oculta el texto de programas de procesamiento por lotes cuando el programa se está ejecutando ECHO [ON|OFF]: Especifica si será activada o desactivada la característica de presentar los comandos en la pantalla. Para ver el estado actual se utiliza solo ECHO [MENSAJE]: Para escribir una línea determinada Para impedir que MS−DOS presenta 1 línea determinada hay que insertar el símbolo @ en el comando. @echo: No se ve ECHO Hola Mundo 21 ECHO ON @ECHO HOLA @ECHO . @ECHO MUNDO El punto sólo deja 1 línea en blanco PAUSE: Suspende la ejecución de un programa de procesamiento por lotes mostrando un mensaje que indica al usuario que pulse cualquier tecla para continuar Parámetros de entrada: COPY %1 %2 Copiar PP.TXT PP2.TXT %0: Coge el nombre de fichero: Saca el nombre???????????? %1...% Shift: Mueve todo un lugar IF [NOT] ERRORLEVEL: Número comando IF [NOT] cadena1== cadena2 comando IF [NOT] EXIST NOMBREFICHERO comando 1.− Para ver los errores que tiene 2.− Compara dos cadenas y dependiendo ejecuta 3.− Por si existe 1 También pide opción de menú El comando if no puede utilizarse directamente para averiguar la existencia de 1 directorio pero el dispositivo NULL (NUL) sí existe en cada directorio del disco duro. Comprobamos de esa forma con la ruta GOTO (Salto obligatorio) GOTO etiqueta: Salto a la línea de la etiqueta : ETIQUETA Sin espacios en blanco En las etiquetas sólo funcionan los 8 primeros caracteres 22 CHOICE [/C[:]TECLAS][/N][/S][/T[:]C,NN][TEXTO] Realiza 1 solicitud y aguarda hasta que el usuario elija entre 1 conjunto específico de teclas. Texto: El que deseais que salga /C:TECLAS: Especifica teclas permitidas en el símbolo del sistema. Sólo si no es sí o no. /N: Evita que CHOICE presente el símbolo del sistema. C:> /S: Indica que CHOICE deberá distinguir entre minúsculas y mayúsculas [/T[:C,NN]: hace que CHOICE efectua una pausa durante el número de segundos especificados antes de conmutar a una tecla determinada /c:123/t:3,20: Elige una por el paso del tiempo Se ejecutrara el comando que hay detrás del errorlevel si el código de salida es mayor o igual al especificado detrás de errorlevel Entre 2 errorlevel más de 1 instrucción no va Comando FOR Desde dentro el batería FOR %% variable in (conjunto) DO comando [parámetros] Desde el prompt %variable FOR %I in (PP.TXT CARTA.DOC DATOS.*) DO TYPE %I I toma el valor del conjunto. Los lee todos Definición: Para ejecutar un mandato sobre el conjunto de ficheros que cumplen 1 determinado patrón o plantilla CALL [UNIDAD:][RUTA]NOMBREFICHERO[PARÁMETROS] Permite llamar a 1 proceso por lotes desde otro sin detener la ejecución del primero P1.BAT −−−−−−−−−− P2.BAT −−−−−−−−−− −−−−−−−−−− CALL P2.BAT <>| LA TUBERÍA???????????????????'' Recursividad; cuando 1 programa se llama a sí mismo. Como un bukle pero arreglar para k salga 23 PATH [[UNIDAD:]RUTA[;...]] [/PATH: ON|/PATH:OFF][/E] Muestra o establece una ruta de búsqueda para los ficheros ejecutables PATH=C:\DOS PATH=C:\ALUMNOS\1J\BATERIA PATH=C:\DOS;C:\ALUMNOS\1J\BATERIA SOLO 127; PARA COGER MÁS %PATH% PATH= %PATH%;C:\ALUMNOS\1J\BATERIA PATH; Desmonta todo lo que había SET cambia sólo variables de entorno Path aplica los directorios especificados a la petición de fichero que especifica la ruta, por defecto. [/E]: Guarda 1 copia de la lista de directorios añadidos en la variable de entornos append APPEND [[UNIDAD:]RUTA[;...]][/X[:ON\OFF]] X:on: Aplica los directorios especificados a las búsquedas de ficheros y a la ejecución de aplicaciones. Haría lo de append y path OFF: Aplica los directorios especificados sólo a las peticiones de ficheros de aperturas de fichero Off por defecto SHIFT: Mueve el valor de cada parámetro a la variable anterior @ECHO OFF ECHO EL PRIMER NOMBRE ES %1 SHIFT ECHO EL SEGUNDO NOMBRE ES %1 SHIFT ECHO EL TERCER NOMBRE ES %1 @ECHO OFF SET FICHTEMP=%TEMP%\TEMPORAL.TXT IF EXIST *.COM DIR/B> %FICHTEMP% 24 IF EXIST *.EXE DIR/B>>%FICHTEMP% IF EXIST *.BAT DIR/B>>%FICHTEMP% TYPE %FICHTEMP%|SORT|MORE DEL %FICHTEMP% SET FICHTEMP= MODIFICADORES MEJOR AL FINAL DISCOS EN MS−DOS 5 ¼ DD 5 ¼ DD 3.5 DD 3.5 HD TAMAÑO 360 K 1.2M 720 K 1.44M PISTAS/CARA 40 80 80 80 SECTORES/PISTA 9 15 9 18 Estructura lógica de 1 diskette Dividido en sectores Sectores del diskette (512 bytes) En el 1 está la FAT1 (9 sectores) En el 2 está la FAT2 (9 sectores) copia En el 0 el arranque En el 19 el Directorio raiz A partir del 33 los datos El sistema de arranque • Nombre y versión del sistema operativo • Tipo de disco • Número de caras del disco • Número de sectores por pista • Número de bytes por sector • Número total de sectores • Número de sectores en cada cluster • Número de FATS • Número de entradas máximas en el directorio raiz • Número de sectores ocupados por cada FAT • Número de serie del disco • Etiqueta del disco 25 Si el disco es de arranque además se le mete un programa que va al sector de datos y comprueba si ahí está el IO.SYS y el MS−DOS.SYS En disco de 1.44 m: 1 cluster = 1 sector En disco de 5 y ¼ y 3 ½ DD: 1 cluster = 2 sectores El cluster 0 y 1 no se pueden usar porque están reservados al sistema operativo. En 1 cluster sólo puede haber 1 fichero. 24 4 3 2 1 Preparado Bloqueado En Ejecución MEMORIA PROCESADOR Controladora de Disco Controladora de Impresora Disco Duro Impresora Procesos Memoria DMA Disco RAIZ Subdirectorios Ficheros Regulares 26 − EXT2 − EXT3 − Reiser GNU/Linux − todos aportan seguridad, el Reiser es el mejor de los 3 que puede utilizar linux. Nombre . Extensión Hasta 8 digitos 3 digitos Punto de separación INICIO Arranque del sistema ROM ejecuta rutina de chequeo ROM lee el IPL en el sector de arranque Carga del IO.SYS Carga del MSDOS.SYS Buscar el Config.sys Existe Config.sys Configurar Sistema Cargar Comand.com Buscar Autoexec.bat Existe Autoexec.bat Ejecutar Autoexec.bat Pide fecha y hora FINAL Símbolo del sistema Si Si No 27 No 28