Informática Básica¶
Introducción.¶
Unidades de medida utilizadas en informática¶
En informática se utilizan continuamente dos unidades de medida, son el bit y el byte. Su significado es el siguiente:
- El bit1 es la unidad mínima de información. Sólo tiene dos valores posibles: el \(0\) y el \(1\). Los ordenadores trabajan con números binarios, ya que es fácil representar mediante circuitos eléctricos el \(1\) como tensión alta y el \(0\) como tensión baja.
- El byte es una unidad de información compuesta por \(8\) bits. La capacidad de almacenamiento del ordenador (memorias RAM y ROM, unidades de disco, etc.) se mide siempre en múltiplos de bytes.
Normalmente los ordenadores trabajan con grandes cantidades de datos, por lo que es necesario definir múltiplos de las medidas anteriores que hagan más cómoda la representación de dichas cantidades. Estos múltiplos son:
- kilo, \(K\), representa \(2^{10}=1024\) unidades. Por ejemplo, \(2Kb\) son \(2\) kilobytes o, lo que es lo mismo, \(2048\) bytes.
- mega, \(M\), representa \(2^{20}\) unidades.
- giga, \(G\), representa \(2^{30}\) unidades.
- tera, \(T\), representa \(2^{40}\) unidades.
Elementos que componen un ordenador personal¶
Los componentes básicos de un ordenador personal son los siguientes:
- El microprocesador o CPU2 se encarga de realizar operaciones con los datos y de controlar todos los procesos que se ejecuten. Cuenta con un sistema de almacenamiento primario llamado memoria caché, esta memoria caché es la más rápida de todos los tipos de memoria, y normalmente, se encuentra en un chip3 distinto del que contiene la CPU. El microprocesador contiene también la ALU4, donde se realizan los cálculos, y la unidad de control.
- La RAM5 es una memoria volátil que contiene los datos y las instrucciones de las aplicaciones.
- La ROM6 contiene una serie de rutinas básicas que permiten que el procesador se comunique con los periféricos del ordenador. Estas rutinas, junto con unos parámetros que se guardan en el CMOS forman la BIOS7.
- El CMOS8 es un chip de memoria RAM cuyo contenido no se pierde, ya que está continuamente alimentado por una pila. Contiene cierto tipo de información básica para el sistema, como tipo de disco duro y disquetes, memoria instalada, número de puertos, etc.
- El reloj del sistema almacena la hora y fecha y se encarga de que todas las operaciones que se ejecuten en el microprocesador lo hagan de forma sincronizada. Emite unos pulsos que dictan el ritmo del microprocesador.
- Los dispositivos de almacenamiento son sistemas no volátiles que sirven para guardar datos, son los discos duros, disquetes, cintas, etc.
Sistemas Operativos¶
Un sistema operativo es una colección de programas que se usa para controlar todas las operaciones del ordenador. Estos programas trabajan sin que lo note el usuario interpretando los caracteres introducidos por teclado, grabando en el disco o presentando los datos por pantalla. El sistema operativo es el responsable de encontrar y organizar los datos en el disco. El sistema operativo actúa como un puente entre las aplicaciones y el ordenador.
Directorios y Ficheros¶
Directorios¶
En los sistemas basados en un disco duro, es conveniente organizar los programas y datos en áreas llamadas directorios. Cada disco (incluso los disquetes) tiene un directorio especial llamado directorio raíz; este es el directorio principal de cada disco y sirve de punto de inicio para organizar la información del disco. Es posible crear directorios dentro de otros directorios, es lo que se llama subdirectorios, en realidad cada directorio del disco es un subdirectorio del raíz. Por tanto, una representación gráfica de la organización de los directorios del disco se llama árbol de directorios.
Todos los directorios, salvo el raíz, contienen dos subdirectorios especiales. Estos ficheros son . y .. El subdirectorio . es el directorio actual y el directorio .. es el directorio padre del actual.
DOS nos muestra en cada momento en que directorio nos encontramos, el
llamado directorio de trabajo. Por ejemplo si vemos en pantalla
C:\DOS >
quiere decir que nos encontramos en el directorio DOS de la
unidad C: (la barra \
representa el directorio raíz).
Ficheros¶
Los sistemas basados en disco almacenan trozos de información en grupos
llamados ficheros o archivos. El sistema reconoce y diferencia los
distintos ficheros por su nombre. Hay que señalar que un directorio no
es más que un tipo especial de fichero. El nombre de un fichero (o de un
directorio) está formado por un máximo de 8 caracteres, y opcionalmente
por una extensión que tiene un máximo de tres caracteres. El nombre del
fichero y la extensión se separan por un punto. Es conveniente utilizar
en los nombres de fichero y extensiones sólo caracteres del alfabeto
inglés9, números o el guión bajo (`_'
). Un nombre correcto para
un fichero es por ejemplo chami.zo
.
Comandos básicos de subdirectorio¶
Los comandos que afectan únicamente a un subdirectorio son los siguientes:
- cd o chdir cambia el subdirectorio de trabajo. Por ejemplo
cd c:\dos
cambia al directorioC:\DOS
.
- md o mkdir crea un subdirectorio. Por ejemplo,
c:\dos\pp
crea el directorioPP
debajo delDOS
de la unidad C.
- rd o rmdir borra subdirectorios. Para poder borrar un subdirectorio éste no debe contener archivos ni ningún otro subdirectorio que dependa de él.
- tree visualiza el árbol de directorios. Con el parámetro /f muestra los ficheros que contiene cada directorio.
- deltree elimina un subdirectorio con todos los ficheros y subdirectorios que contenga. OjO. No debe utilizarse este comando si no se está seguro de lo que se está haciendo.
Comandos básicos de fichero¶
Los comandos de fichero son los que afectan a uno o varios ficheros.
- copy copia ficheros de un subdirectorio a otro. Por ejemplo,
copy c:\dos\elefan.te d:\mio\hormi.ga
copia el ficheroelefan.te
del directoriodos
de la unidadC
al directoriomio
de la unidadD
, y lo llamahormi.ga
.
- del o erase borra ficheros de un directorio.
- dir visualiza la relación de ficheros que contiene un subdirectorio.
- edit permite crear y modificar ficheros de texto.
- move traslada un fichero a otro subdirectorio. Actúa como
copy
, pero borrando el fichero de origen.
- ren o rename cambia el nombre de un fichero.
- type visualiza el contenido de un fichero de texto.
Ejercicios¶
Los ficheros de configuración config.sys y autoexec.bat¶
Hacer un fichero bat que muestre cada parámetro que se le da en una línea distinta.
@echo off :Inicio if "%1"=="" goto fin echo %1 shift goto inicio :fin
Construir los ficheros autoexec.bat y config.sys en un disquete de sistema con las siguientes características:
config.sys:
- habilite la memoria superior, de forma que el sistema operativo se cargue en HMA,
- el shell sea el command.com del disquete y permanezca residente con 256 bytes para el entorno,
- se establezcan un máximo de 4 bloques para control de ficheros,
- haya 32 buffers, 0 de ante-lectura,
- permita abrir simultáneamente un máximo de 16 archivos,
- cargue el controlador de dispositivo para utilizar secuencias escape para emular ciertos tipos de terminal.
autoexec.bat:
- establezca un prompt Standard,
- defina como ruta de búsqueda A:\(\backslash\) y C:\(\backslash\)DOS,
- disponga el teclado en español con página de códigos 437,
- permita el histórico de comandos
- muestre la versión del DOS y dónde está cargada.
rem config.sys device=a:\himem.sys /verbose dos=high shell=a:\command.com /p /e:256 fcbs=4 buffers=32,0 files=16 device=a:\ansi.sys
@echo off rem autoexec.bat prompt $p$g path=a:\;c:\dos keyb sp,437 doskey ver /r
Se dispone de un 386DX con 4 Megas de RAM y se desea poder utilizar para poder ejecutar cualquier aplicación MS-DOS y Windows 3.11; no se desea utilizar la memoria expandida, pero sí tener la mayor cantidad de memoria convencional disponible. Crear los ficheros config.sys y autoexec.bat adecuados para configurar el ordenador.
rem config.sys device=c:\dos\himem.sys device=c:\dos\emm386.exe noems dos=high,umb rem los demás controladores se cargarán con devicehigh en vez de con device
rem autoexec.bat rem todos los comandos residentes se cargarán con lh
Hacer un config.sys tal que:
-
Se utilicen 2 Megas de XMS y el resto en EMS.
-
Se cargue el dos en memoria alta, utilizando los bloques de memoria superior.
-
Se utilice 10 buffers de memoria intermedia.
-
Establezca como país España y como página de códigos 437
-
Se permita abrir un máximo de 20 ficheros simultáneamente.
-
Indique que el procesador de comandos va a ser el command.com.
-
Desactive F8 y F9 en el arranque.
-
Se cargue ansi.sys en memoria superior.
-
Cree un disco virtual de 2 Megas en XMS.
-
Se cargue setver en memoria superior.
rem config.sys device=himem.sys /verbose device=c:\dos\emm386.exe 2048 /verbose dos=high,umb buffers=10 country=034,437,c:\dos\country.sys files=20 shell=command.com /p switches=/n devicehigh=c:\dos\ansi.sys device=c:\dos\ramdrive.sys 2048 /e devicehigh=c:\dos\setver.exe
Suponiendo cargado el controlador display.sys, crear un autoexec.bat tal que:
-
Desactive el eco.
-
Cargue el caché de disco.
-
Establezca el indicativo de sistema típico.
-
Declare la ruta de búsqueda de ejecutables como los directorios c:\(\backslash\)dos y c:\(\backslash\)windows.
-
Se añada a la ruta de búsqueda existente el directorio c:\(\backslash\)dbase.
-
Se establezca como directorio temporal c:\(\backslash\)dos.
-
Se prepare la página de códigos 850 y se seleccione.
-
Establezca el teclado español.
-
Cargue las extensiones de CD-Rom, supuesto que el dispositivo se llama MSCD001.
-
Se cargue el controlador de ratón, supuesto que el controlador están en el directorio c:\(\backslash\)genius y se llama gmouse.com.
-
Active el histórico de comandos.
-
Muestre la versión del DOS.
@echo off c:\dos\smartdrv /x prompt $p$g path=c:\dos;c:\windows set path=%path%;c:\dbase set temp=c:\dos mode con codepage prepare=((850) c:\dos\ega.cpi) mode con codepage select=850 keyb sp mscdex /d:mscd001 c:\genius\gmouse doskey ver /r
Ficheros de proceso por lotes¶
Crear un archivo de proceso por lotes que:
-
borre la pantalla,
-
muestre por pantalla mediante una única línea los parámetros 2\(º\) y 13\(º\) que se le pasen.
@echo off cls set x=%2 for %%r in (1 2 3 4) do shift echo 2º Parámetro: %x%, 13º parámetro: %9 set x=
Realizar un fichero .BAT que admitirá dos parámetros:
-
El nombre de un fichero de datos que será generado conteniendo una lista de archivos.
-
Una especificación de fichero que será el criterio para la lista.
El archivo general deberá contener la siguiente información y estructura:
- La fecha actual es
fecha
- La hora actual es
hora
- Directorio de
directorio
- Especificación de ficheros:
especificación
- Línea en blanco
- Fin de fichero
Notas:
- Se presentarán errores del tipo
“Faltan parámetros”
o“Falta el segundo parámetro”
si tal suceso es cierto.
- Si el fichero a generar ya existe, se advertirá al usuario y se le dará la opción de poder sobreescribirlo o abandonar la ejecución del bat.
- Cuando se trate de sobreescribir el fichero, deben tenerse en cuenta la posibles trabas que puedan surgir, y subsanarlas.
- Se mostrará un mensaje de error pertinente si realmente no se puede
modificar el fichero ya existente (p.e.:
está en un CD ROM
).
- También se mostrará un mensaje de error si no pudiera crearse el archivo.
@echo off rem Utilizo a:\enter.rob, que es un fichero con un carácter enter rem comprobaciones if "%1"=="" goto nopar if "%2"=="" goto nopar2 if not exist %1 goto crear echo El fichero %1 ya existe. echo S.- SOBREESCRIBIR EL FICHERO echo A.- TERMINAR choice "Qué desea hacer? Introduzca opción:" /c:SA if errorlevel 2 goto fin rem Se comprueban los atributos del fichero, rem intentando cambiarlos. Si no se puede se tendrá un errorlevel. attrib -r -h -s %1 if errorlevel 1 goto nopuedo goto salida :crear rem Creación del fichero rem Comprobamos si se puede crear, intentando copiar otro fichero copy a:\enter.rob %1>nul if not exist %1 goto nocreo :salida rem salida por fichero echo.|date|find "L">%1 rem con > sobreescribimos el fichero, rem a partir de ahora usamos >> para añadir rem con find escogemos la primera línea de la fecha rem con echo. redirigimos el enter que espera date echo.|time|find "L">>%1 dir %2|find "Directorio">>%1 echo Especificación de ficheros:%2>>%1 echo. >>%1 rem lista de ficheros dir %2 /o-s|find "/"|find /v "<" >>%1 rem con find escogemos nombres de archivos y directorios (tienen /) rem quitamos (parám. /v de find) los directorios (tienen <) rem ordenamos por tamaño con el parámetro /o-s de dir echo.>>%1 echo Fin de fichero.>>%1 goto fin rem Errores :nopar echo Faltan parámetros goto fin :nopar2 echo Falta el segundo parámetro goto fin :existe echo El fichero %1 ya existe goto fin :nopuedo echo No se puede sobreescribir el fichero %1 goto fin :nocreo echo No se puede crear el fichero %1 goto fin rem Final :fin
Crear un fichero bat que reciba un número indeterminado de argumentos, y para cada uno de ellos visualice por pantalla el argumento seguido del mensaje de si es un directorio o un fichero.
@echo off :inicio if "%1"=="" goto fin if exist %1\nul goto direc if not exist %1 goto nohay echo %1 es un fichero goto siguiente :nohay echo %1 no existe goto siguiente :direc echo %1 es un directorio :siguiente shift goto inicio :fin
Arranques múltiples¶
Hacer un menú de arranque en config.sys y autoexec.bat que haga 3 configuraciones de memoria distintas.
rem config.sys [menu] menuitem=simple, Arranque con mínimos. menuitem=xms, Arranque con gestión de memoria XMS. menuitem=umb, Arranque con XMS y UMBs, pero sin EMS. menuitem=todo, Arranque con XMS y UMBs, y EMS. menucolor=15,1 rem Texto blanco sobre fondo azul menudefault=umb,5 rem Se arranca umb si no se ha elegido nada en 5 segundos [simple] files=24 buffers=32,0 fcbs=4,2 country=034,437,c:\dos\country.sys shell=c:\command.com /p /e:256 [xms] device=c:\dos\himem.sys /verbose dos=high include=simple [umb] include=xms device=c:\dos\emm386.exe noems /verbose dos=umb [todo] include=xms device=c:\dos\emm386.exe ram /verbose dos=umb
@echo off rem autoexec.bat rem configuración común path c:\dos lh keyb sp goto %config% rem permite acceder a distintas etiquetas según el menú elegido :simple :xms prompt $p$g goto fin :todo lh smartdrv /x set path=%path%;c:\windows :umb lh doskey :fin ver /r
Crear config.sys y autoexec.bat de forma que se presenten dos posibles arranques: uno mínimo y uno máximo. El arranque mínimo debe habilitar memorias extendida y expandida, acceso a CD Rom, caché de disco, histórico de comandos, añadiendo el path dos y windows. El menú completo además debe permitir conmutar entre las páginas de código 437 y 850.
rem config.sys [menu] menuitem=simple, Arranque con mínimos. menuitem=todo, Arranque con XMS, EMS y CD ROM. menuitem=pagina, Como el anterior, permitiendo permutar entre las páginas de código 437 y 850 menucolor=2,0 rem letras verdes sobre fondo negro menudefault=simple,5 [simple] device=c:\dos\himem.sys /verbose dos=high files=20 buffers=32 country=034,437,c:\dos\country.sys shell=c:\command.com /p /e:512 [todo] include=simple device=c:\dos\emm386.exe ram /verbose dos=umb devicehigh=c:\dos\ansi.sys devicehigh=c:\dos\toshv218.sys /d:mscd000 /v rem controlador de CD, donde toshv218.sys es el nombre del controlador lastdrive=h [pagina] include=todo device=c:\dos\display.sys con=(ega,437,2)
@echo off rem autoexec.bat rem configuración común path c:\dos goto %config% rem permite acceder a distintas etiquetas según el menú elegido :pagina mode con codepage prepare=((850) c:\dos\ega.cpi) mode con codepage select=850 nlsfunc rem permite cambiar la tabla de códigos activa con el comando chcp :todo lh mscdex /d:mscd000 /v rem Es mejor cargar el CD antes del smartdrive lh smartdrv /x set path=%path%;c:\windows lh doskey :simple lh keyb sp
Crear los ficheros de configuración necesarios para tener un arranque con 3 opciones. La primera opción debe permitir el teclado y formato de pantalla en español. La segunda opción es para un usuario español que quiere tener la página 437 en hardware y tener preparada la 850. Y la tercera opción es para un usuario danés, que no quiere tener una página de códigos especificada por hardware, pero quiere tener acceso a las páginas 865 y 850, presentando la 865 por pantalla.
rem config.sys [menu] menuitem=espa, Español. menuitem=espa2, Español, con páginas de código 437 y 850. menuitem=danes, Danés. menucolor=2,0 rem letras verdes sobre fondo negro menudefault=espa,5 [common] device=c:\dos\himem.sys /verbose device=c:\dos\emm386.exe ram /verbose dos=high,umb files=20 buffers=32 shell=c:\command.com /p /e:512 [espa] country=034,437,c:\dos\country.sys [espa2] include=espa devicehigh=c:\dos\display.sys con=(ega,437,1) rem Utiliza la página 437 y prepara otra [danes] country=049,,c:\dos\country.sys devicehigh=c:\dos\display.sys con=(ega,,2) rem No utiliza ninguna página y prepara 2 @echo off rem autoexec.bat rem configuración común path c:\dos goto %config% rem permite acceder a distintas etiquetas según el menú elegido :espa2 lh nlsfunc c:\dos\country.sys mode con codepage prepare=((850) c:\dos\ega.cpi) rem permite cambiar la tabla de códigos activa para todos los dispositivos rem mediante el comando chcp rem si sólo se quisiese cambiar la consola se haría mode con cp select :espa lh smartdrv /x lh doskey lh keyb sp,437,c:\dos\keyboard.sys goto fin :danes lh nlsfunc c:\dos\country.sys mode con codepage prepare=((865,850) c:\dos\ega.cpi) rem permite cambiar la tabla de códigos activa con el comando chcp keyb dk,,c:\dos\keyboard.sys rem carga el teclado danés chcp 865 rem elige como página de códigos la 865 (para todos los dispositivos) :fin
-
la palabra bit viene del inglés bi**nary dig**t, dígito binario ↩
-
CPU, del inglés Central Processing Unit, unidad central de proceso. ↩
-
Un chip es un conjunto de circuitos digitales integrados en un bloque o pastilla. ↩
-
Arithmetical Logical Unit, unidad aritmético–lógica. ↩
-
Random Access Memory, memoria de acceso aleatorio. ↩
-
Read Only Memory, memoria de sólo lectura. ↩
-
Basic Input/Output System, sistema básico de entrada/salida. ↩
-
Complementary Metal–Oxide Semiconductor, pues eso ;-) ↩
-
Dan problemas las letras acentuadas, caracteres como ‘[‘ o ‘+’ (aunque otros caracteres “extraños” no presenten problemas) o la letra ñ :( ↩