jueves, 22 de abril de 2010
/mnt/cdrom/19971125/webs/xingzangwushuxuexiao.cn/html/zhongwen/xingzhang/lishi.htmlRequeriría de mucha memoria y de un buen rato de tecleado. Por suerte, existe otra forma de especificar los nombres de archivo, la que se conoce como nombre de camino relativo. Se llama así pues se especifica el camino en forma relativa al directorio actual. Por ejemplo, si estoy en el directorio de trabajo de rmg y quiero ver una foto que rmg tiene entre sus monos, se puede especificar de estas dos formas:/home/rmg/monos/fotos/lr1.jpgomonos/fotos/lr1.jpgUn punto único (.) se utiliza para referirse al directorio actual. Por ejemplo, el nombre de camino./prog/cuentases el nombre de camino del archivo cuentas del directorio prog del directorio actual. Los dos puntos (..) especifican el directorio padre del directorio actual, que es el siguiente de más alto nivel en el árbol de directorios. Si estamos en el directorio/home/lgm/software/ch-city/El directorio padre sería software, quien tiene como padre a lgm, quien a su vez tiene como padre a home, el que es hijo del directorio raíz ([/]). Este último es el único directorio sin padre, y [/../] es un sinónimo de [/]. El doble punto se utiliza para especificar cosas más abajo en el sistema de directorios. Por ejemplo, si estamos en /home/lgm/disk/, el nombre de camino relativo ../../rmg/recetas/curanto.txt apunta al archivo cuya ruta completa (o nombre de camino completo) es /home/rmg/recetas/curanto.txt.
5. DIRECTORIOSEl UNIX al estar estructurado en árbol se forma una jerarquía de directorios que para un sistema seria:/ Raíz del sistema de archivo./bin Programas esenciales en forma ejecutable/dev Archivos de dispositivos./etc Sistemas diversos./etc/motd Mensaje del dia al inicio de sesión./etc/passwd Archivos de contraseñas./lib Bibliotecas esenciales, etc./tmp Archivos temporales, desaparecen cuando se reanuda el sistema./unix Forma ejecutable del sistema operativo./usr Sistemas de archivos del usuario./usr/adm Administración del sistema, información contable, etc./usr/bin Binarios del usuario./usr/dict Diccionario ( words ) y soporte de spell ( 1 ) etc. Los directorios se crean mediante la llamada al sistema mkdir y se pueden eliminar mediante rmdir. El directorio actual se cambia mediante chdir.Los directorios son la base del sistema jerárquico de archivos de Unix. Son grupos de archivos que sirven para clasificarlos y organizarlos de acuerdo a las necesidades de los usuarios. Un directorio puede contener otros directorios y archivos, y así sucesivamente. En teoría, no existe limitación del número de archivos y directorios que se puedan crear en un directorio, con excepción del tamaño del dispositivo donde se almacena. El sistema de directorios y archivos se puede graficar en lo que se conoce como estructura de árbol. / .---.---.---.---.---.---+---.---.---.---.---.---.---. | | | | | | | | | | | | | | | boot | etc | lib | opt | root | tmp | varbin dev home mnt proc sbin usr | | | .------^--.----.-----. .----.-----| httpd lgm memo rmg log run spool .------+-----. | | |cgi-bin html logs | pubwww | | .-----^--+------.------. | GNUstep monos pubwww recetas .------.--------^-. | disk escritos software .---^---. | | dibujos fotos .--^--. .--^----. tbr sds ch-city utilsEste diagrama representa parte de un sistema de directorios y archivos típico, donde la raíz del árbol se encuentra en la parte superior. Se le llama directorio raíz o símplemente raíz y se denomina con el símbolo / (slash). De ella se ramifican todos los demás directorios del sistema. Por ejemplo, dentro del directorio home, que es un subdirectorio de la raíz, hay cuatro subdirectorios, httpd, lgm, memo y rmg, los que a su vez contienen otros subdirectorios. El directorio donde cada usuario se encuentra al iniciar la sesión se llama HOME o directorio de trabajo. Cada usuario tiene un único directorio de trabajo, desde el cual se puede mover hacia arriba y abajo en el árbol de directorios. Generalmente el directorio de trabajo es un subdirectorio del directorio /home, y tiene como nombre el nombre de presentación del usuario.Nótese que pueden haber varios archivos con nombres iguales en distintos directorios, pero no dentro de un mismo directorio. Recuérdese que se considera la diferencia entre mayúsculas y minúsculas en la distinción de nombres de archivo.¿Cómo se distinguen los archivos uno de otro? En Unix se pueden especificar nombres de archivo incluyendo los directorios en que están ubicados. Este tipo de nombre se llama nombre de camino o nombre de ruta, pues describe el camino a seguir para llegar al archivo. Son de dos tipos:• Nombres de camino completos o absolutos. • Nombres de camino relativos. Los nombres de camino completos son los que van desde la raíz hasta un archivo. Por ejemplo:• / • /bin/sh • /home/lgm/software/ch-city/COPYING • /home/rmg/GNUstep/Library/WindowMaker/Backgrounds/termopilas.png • /etc/httpd/conf/httpd.conf • /usr/local/bin/0verkill • /var/log/messages Los nombres de archivos y directorios se separan con slashes. En los nombres de camino completos, el primer / corresponde al directorio raíz. Especificar un nombre de camino completo elimina toda ambigüedad, ya que no pueden existir dos archivos con el mismo nombre de camino completo, pero puede ser molesto para el usuario. En la mayoría de los sistemas, es común mantener cinco, diez, más incluso, niveles de directorio y, especificar un nombre de camino como este:
4. NODO-I:Un archivo posee varios componentes: un nombre, contenido e información administración como permiso y fechas de modificación. La información administrativa esta almacenada en el “ nodo-i ”( en ingles muchas veces se usa inodo ( sin guión) en vez de i-nodo), junto con datos esenciales para el sistema tales como su longitud, la región del disco en la que se encuentra almacenado el contenido del archivo y otros elementos.Existen tres fechas en un i-nodo: la fecha en la que se hizo la ultima modificación ( escrita ) al contenido del archivo, la fecha en la que dicho contenido fue usado ( leído o ejecutado ) por ultima vez y la fecha en la que el i-nodo fue alterado por ultima vez, por ejemplo, para definir los permisos.El nombre de archivo en un directorio se llama liga ( link) ya que une un nombre en la jerarquía de directorio al nodo-i y, en consecuencia, a los datos. El mismo numero-i puede aparecer en mas de un directorio.Por lo tanto el nodo-i es un registro que almacena información sobre el archivo determinado y contiene: Identificación de usuario y de grupos de archivos. Instantes del ultimo acceso y de la ultima modificación. Contador con él numero de HORD-LINK al archivo. El tipo de archivo. 15 apuntadores a bloques de disco.Los primeros 12 bloques apuntan a bloques directos, o sea que se puede referenciar inmediatamente a 12 directorios de bloques de datos de archivos ( ya que existe una copia del nodo-i en memoria principal, mientras el archivo esta abierto ).Los siguientes tres apuntan a bloques indirectos ( del tamaño del bloque grande): El primero es la dirección de un bloque indirecto simple ( bloques de direcciones de bloques de datos) El segundo apunta a un bloque indirecto doble ( bloque de direcciones de bloques que apuntan a bloques de datos) El tercero apunta a un bloque indirecto triple ( no se lo necesita)
3. PERMISOSCada archivo tiene un conjunto de permisos asociados con él, los cuales determinen que hacerse con el archivo y quien puede hacerlo.Existe un usuario especial en cada sistema UNIX, llamado superusuario, quien puede leer o modificar cualquier archivo en el sistema. La clase de acceso especial root posee privilegios de superusuario: esta la emplean los administradores del sistema cuando llevan a cabo el mantenimiento del mismo. Existe también un comando llamado su que otorga un status de superusuario si se conoce la contraseña de root. Por eso no es recomendable guarda ningún material confidencial en el sistema de archivos.Si el usuario requiere mayor seguridad, puede cambiar los datos en un archivo de manera que ni aun el superusuario puede leerla ( o al menos entenderla) usando el comando crypt.Cuando un usuario entra en sesión, teclea un nombre y después confirma que efectivamente es esa persona tecleando una contraseña ( password ) El nombre es la identificación para iniciar la sesión del usuario, o login-id. Pero el sistema en realidad reconoce al usuario por medio de un número, llamado su “ identificación ( o identificación) de usuario ” o uid.El sistema de archivos y por tanto el sistema UNIX en general determinan lo que el usuario hacer mediante los permisos otorgados a su uid y a su group-id.El archivo es texto ordinario, pero las definiciones de los campos y los separadores son una convención reconocida por los programas que usan la información del archivo.Existen tres tipos de permisos para cada archivo: leer ( es decir, examinar su contenido ), escribir ( es decir, cambiar su contenido ) y ejecución ( es decir, ejecutarlo como un programa ). Además, se puede aplicar un permiso diferente a cada persona. Como dueño de un archivo, el lector posee un conjunto de permisos de lectura, escritura y ejecución. Su grupo tiene otro conjunto. Los demás tienen un tercer conjunto.El bit de set-uid es una idea simple pero elegante que resuelve varios problemas de seguridad.Es particularmente serio para un programa con atributo set-uid ya que root tiene permisos de acceso a cualquier archivo en el sistema. ( Algunos sistemas UNIX apagan el bit-uid cuando un archivo se modifica, para reducir el peligro de una falla de seguridad )Existen llamadas al sistema que crean y borran archivos, y solo a través de ellas es posible cambiar el contenido de un directorio. Sin embargo, la idea de los permisos aun se aplica.Los permisos para borrar archivos son independientes del archivo mismo. Si el usuario tiene permiso de escritura en un directorio, puede borrar archivos de el, aun los que estén protegidos contra escritura.
El sistema de archivos de Unix; esta basado en un modelo arborescente y recursivo, en el cual los nodos pueden ser tanto archivos como directorios, y estos últimos pueden contener a su vez directorios o subdirectorios. Debido a esta filosofía, se maneja al sistema con muy pocas órdenes, que permiten una gran gama de posibilidades. Todo archivo de Unix está controlado por múltiples niveles de protección, que especifican los permisos de acceso al mismo. La diferencia que existe entre un archivo de datos, un programa, un manejador de entrada/salida o una instrucción ejecutable se refleja en estos parámetros, de modo que el sistema operativo adquiere características de coherencia y elegancia que lo distinguen. La gestión de archivos viene implementada por mecanismos propios de UNIX. Esta aproximación tiene consecuencias directas sobre la seguridad del sistema.$ file /bin /bin/de /usr/ src/ cmd/ de.c/ usr/ man/ man1/ de.1 /bin : directory /bin/ de : pure executable /usr/ src/ cmd/ de.c : c program text /usr/ man /,an.1/ de.1 : roff, nroff, or eqn input text Estos son cuatro archivos típicos, relacionados todos con el editor : el directorio en el cual este se encuentra (/ bin), el programa mismo en su forma ejecutable o binaria (/ bin/ ed) , el o conjunto de instrucciones en C que definen el programa (/ usr/ src/ cmd/ de.c) y el manual (/ usr/ man/ man1/ de.1).Para determinar los tipos, File no puso atención a los nombres (aunque podría hacerlo), ya que las convenciones con los nombres, por el echo mismo de no ser mas que convenciones, no son confiables. Por ejemplo, los archivos con sufijo .c son programas fuentes en C, pero nada impide al usuario crear un archivo .c con un contenido arbitrario. En vez de eso, el comando file lee unos cuantos cientos de bytes al principio del archivo y busca indicios que indiquen el tipo de archivo en cuestión.Algunas veces los indicios para identificar un archivos son obvios. Un programa ejecutable se marca con un “numero mágico” binario al principio. El comando od sin ninguna opción vacía el archivo en palabras de 16 bits (o dos bytes) y hacen visible el numero mágico : $ od /bin /de0000000 000410 025000 000462 011444 000000 000000 000000 0000010000020 170011 016600 000002 005060 177776 010600 162706 0000040000040 016616 000004 005720 010066 000002 005720 001376 020076 El valor octal 410 “marca” un programa ejecutable puro, un programa cuyo código puede ser compartido por varios procesos. (los números mágicos específicos son dependientes del sistema). El patrón de bits representado por 410 no es un texto en ASCII, por lo que este valor no podría ser generado inadvertidamente por un programa tal como un editor. Sin embargo, el lector puede crear un archivo así ejecutando un programa propio, y el sistema entenderá la convención de que tales archivo son programas en binario.Para archivos de texto, los indicios que indicar el tipo de archivo en cuestión pueden encontrarse mas escondidos en el. Por ejemplo, el comando file buscará palabras como #include para identificar programas fuente en C, o líneas que comiencen con un punto para identificar entradas para nroffo o troff.
2. SISTEMA DE ARCHIVOS UNIX:Todo en el sistema UNIX son archivos. El sistema de archivos es indispensable para el éxito y utilidad del sistema UNIX.Un archivo es una secuencia de bytes. (Un byte es un pequeño trozo de información, normalmente compuesto por 8 bits. Para nuestro propósito, un byte es equivalente a un carácter.) El sistema no impone estructura alguna a los archivos, ni asigna significado a su contenido; el significado de los byte depende únicamente de los programas que interpretan el archivo. Además, esto es cierto no solo para archivos en disco sino también para dispositivos periféricos. Cintas magnéticas, mensajes de correo, caracteres de teclados, salidas de impresoras, datos que fluyen en interconexiones, cada uno de estos archivos no es mas que un secuencia de bytes desde el punto de vista del sistema y sus programas.Cada byte de un archivo contiene un numero de tamaño suficiente para representar un carácter. El código empleado en la mayoría de los sistemas UNIX es ASCII (“Código Norteamericano Estándar para Intercambio de Información”), Pero algunas computadoras, entre las que sobresalen las IBM, usan un código llamado EBCDIC (“Código Extendido de Intercambio Decimal Codificado en Binario”).Los programas obtienen los datos de un archivo por medio de una llamada al sistema (una rutina del núcleo) llamada read . Cada vez que se invoca a read , esta regresa la siguiente porción de un archivo, la siguiente línea de texto tecleada en la terminal , por ej. read también indica cuantos bytes trae el archivo, por lo que al final del archivo es identificado en el momento en que read dice “ se traen cero bytes”. Si se hubieran quedado algunos bytes en el archivó, read los hubiera leído. En realidad , tiene sentido no representar el final de un archivo con algún valor en especial, ya que, como se menciono anteriormente , el significado de los bytes depende de como se vaya a interpretar el archivo. Pero todos los archivos tienen un final, y como todos los archivos deben accesarse por medio de read , regresar un cero es una manera de representar el final de un archivo ( independientemente de cualquier representación ) sin introducir ningún carácter especial.Cuando un programa lee de la terminal el núcleo envía al programa cada una de las líneas de entrada solo cuando se teclea su carácter de nueva-linea (es decir, cuando se oprime RETURN ). Por lo tanto si se comete un error mecanografico, uno puede corregirlo si es que se lo detecta antes de teclear el carácter de nueva-linea. Si no es así la línea ya ha sido leída por el sistema y no podrá corregirse. ¿ Que hay en un archivo ? El formato de un archivo depende de los programas que lo usen ; existe gran variedad de estos de archivos, debido a que también existen muchos programas. Sin embargo, puesto que los tipos de archivos no son determinados por el sistema de archivos, el núcleo no puede decirnos cual es el tipo de un archivo: no lo conoce.
1. ¿QUÉ ES UNIX?El sistema operativo UNIX surgió en los laboratorios de la AT&T Bell como un proyecto de algunos programadores que querían hacer un SO para ellos mismos.Aunque nunca hayamos usado UNIX, casi todos los sistemas de la actualidad tienen conceptos tomados de él incluyendo al DOS, OS/2, NT, etc.UNIX es algo así como el latín de los sistemas operativos. Uno de los factores que motivan el que hoy se escuche más acerca de este sistema operativo es la aparición del LINUX ,un clon de UNIX freeware.La palabra UNIX es una marca registrada ,que fue pasando de manos con el tiempo y actualmente esta en poder de Novell. Sin embargo,muchas empresas diseñaron sistemas UNIX compatibles. Cuando se habla de compatibilidad entre UNIX , generalmente se habla de compatibilidad nivel código fuente.O sea que se puede tomar un programa escrito en C para una plataforma, compilarlo y usarlo en otra. Los sistemas operativos ”a lo UNIX” son: SCO UNIX,BSD UNIX ,AIX DE IBM, UnixWare de Novell Linux. UNIX es un muy buen SO y se puede usar para casi todo, pero el ámbito en donde se destaca es en redes. Y esto incluye Internet .Como Internet en sus comienzos estuvo lejos del publico en general, y mas cerca de los investigadores, fue natural que la plataforma de elección fuera UNIX.Y es así como todos los conceptos que giran en torno a Internet, sus protocolos, sus servicios, tienen alguna relación con UNIX.La interfase gráfica que se usa en el ambiente UNIX se llama Xwindows, y es muy poderosa .Esta diseñada para trabajar en cualquier sistema operativo y cualquier computadora para funcionar sobre una red con las aplicaciones corriendo en una maquina remota.La forma de moverse dentro de UNIX es parecida a DOS. Los comando más comunes son: Pwd..........para averiguar cual es el directorio actualIs..............para pedir un listado del directorio actualcd.............para cambiar el directoriomkdir.......para crear un directoriocat............para ver un archivoecho.........imprime una cadena de caracterescp.............copia un archivomv............mueve o renombra un archivo
6.Tipos de Sistemas Operativos:El sistema de E/SConsiste en un sistema de almacenamiento temporal (caché), una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.Sistema de archivosLos archivos son colecciones de información relacionada, definidas por sus creadores. Éstos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos, etc. El SO es responsable de:•Construir y eliminar archivos y directorios.•Ofrecer funciones para manipular archivos y directorios.•Establecer la correspondencia entre archivos y unidades de almacenamiento.•Realizar copias de seguridad de archivos.Existen diferentes Sistemas de Archivos, es decir, existen diferentes formas de organizar la información que se almacena en las memorias (normalmente discos) de los ordenadores. Por ejemplo, existen los sistemas de archivos FAT, FAT32, EXT2, NTFS...Desde el punto de vista del usuario estas diferencias pueden parecer insignificantes a primera vista, sin embargo, existen diferencias muy importantes. Por ejemplo, los sistemas de ficheros FAT32 y NTFS , que se utilizan fundamentalmente en sistemas operativos de Microsoft, tienen una gran diferencia para un usuario que utilice una base de datos con bastante información ya que el tamaño máximo de un fichero con un Sistema de Archivos FAT32 está limitado a 4 gigabytes sin embargo en un sistema NTFS el tamaño es considerablemente mayor.Sistemas de protecciónMecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO se encarga de:•Distinguir entre uso autorizado y no autorizado.•Especificar los controles de seguridad a realizar.•Forzar el uso de estos mecanismos de protección.Sistema de comunicacionesPara mantener las comunicaciones con otros sistemas es necesario poder controlar el envío y recepción de información a través de las interfaces de red. También hay que crear y mantener puntos de comunicación que sirvan a las aplicaciones para enviar y recibir información, y crear y mantener conexiones virtuales entre aplicaciones que están ejecutándose localmente y otras que lo hacen remotamente.Programas de sistemaSon aplicaciones de utilidad que se suministran con el SO pero no forman parte de él. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendo algunas de las tareas que realizan:•Manipulación y modificación de archivos.•Información del estado del sistema.•Soporte a lenguajes de programación.•Comunicaciones.
domingo, 21 de febrero de 2010
5.Multiprocesamiento
Multiprocesamiento o multiproceso es tradicionalmente conocido como el uso de múltiples procesos concurrentes en un sistema en lugar de un único proceso en un instante determinado. Como la multitarea que permite a múltiples procesos compartir una única CPU, múltiples CPUs pueden ser utilizados para ejecutar múltiples hilos dentro de un único proceso.
El multiproceso para tareas generales es, a menudo, bastante difícil de conseguir debido a que puede haber varios programas manejando datos internos (conocido como estado o contexto) a la vez. Los programas típicamente se escriben asumiendo que sus datos son incorruptibles. Sin embargo, si otra copia del programa se ejecuta en otro procesador, las dos copias pueden interferir entre sí intentando ambas leer o escribir su estado al mismo tiempo. Para evitar este problema se usa una variedad de técnicas de programación incluyendo semáforos y otras comprobaciones y bloqueos que permiten a una sola copia del programa cambiar de forma exclusiva ciertos valores.
Multiprocesamiento o multiproceso es tradicionalmente conocido como el uso de múltiples procesos concurrentes en un sistema en lugar de un único proceso en un instante determinado. Como la multitarea que permite a múltiples procesos compartir una única CPU, múltiples CPUs pueden ser utilizados para ejecutar múltiples hilos dentro de un único proceso.
El multiproceso para tareas generales es, a menudo, bastante difícil de conseguir debido a que puede haber varios programas manejando datos internos (conocido como estado o contexto) a la vez. Los programas típicamente se escriben asumiendo que sus datos son incorruptibles. Sin embargo, si otra copia del programa se ejecuta en otro procesador, las dos copias pueden interferir entre sí intentando ambas leer o escribir su estado al mismo tiempo. Para evitar este problema se usa una variedad de técnicas de programación incluyendo semáforos y otras comprobaciones y bloqueos que permiten a una sola copia del programa cambiar de forma exclusiva ciertos valores.
4.Multiprogramación
Se denomina multiprogramación a la técnica que permite que dos o más procesos ocupen la misma unidad de memoria principal y que sean ejecutados al "mismo tiempo" (pseudo-paralelismo, en una única CPU sólo puede haber un proceso a la vez) en la unidad central de proceso o CPU.
Aporta las siguientes ventajas:
•La ya mencionada, varios procesos en ejecución.
•Permite el servicio interactivo simultáneo a varios usuarios de manera eficiente.
•Aprovecha los tiempos que los procesos pasan esperando a que se completen sus operaciones de E/S
•Aumenta el uso de la CPU.
•Las direcciones de los procesos son relativas, el programador no se preocupa por saber en dónde estará el proceso dado que el sistema operativo es el que se encarga de convertir la dirección lógica en física.
Un proceso entra a ejecutarse y llega al momento en que tiene que hacer espera por un dispositivo de entrada y/o salida por ejemplo, el CPU estará ocioso mientras espera que el proceso pueda usar el dispositivo para así finalmente ejecutarse. Los sistemas de multiprogramación evitan eso ya que durante ese tiempo de esperar pasan a ejecutar otro proceso teniendo así al computador ocupado.
Se denomina multiprogramación a la técnica que permite que dos o más procesos ocupen la misma unidad de memoria principal y que sean ejecutados al "mismo tiempo" (pseudo-paralelismo, en una única CPU sólo puede haber un proceso a la vez) en la unidad central de proceso o CPU.
Aporta las siguientes ventajas:
•La ya mencionada, varios procesos en ejecución.
•Permite el servicio interactivo simultáneo a varios usuarios de manera eficiente.
•Aprovecha los tiempos que los procesos pasan esperando a que se completen sus operaciones de E/S
•Aumenta el uso de la CPU.
•Las direcciones de los procesos son relativas, el programador no se preocupa por saber en dónde estará el proceso dado que el sistema operativo es el que se encarga de convertir la dirección lógica en física.
Un proceso entra a ejecutarse y llega al momento en que tiene que hacer espera por un dispositivo de entrada y/o salida por ejemplo, el CPU estará ocioso mientras espera que el proceso pueda usar el dispositivo para así finalmente ejecutarse. Los sistemas de multiprogramación evitan eso ya que durante ese tiempo de esperar pasan a ejecutar otro proceso teniendo así al computador ocupado.
3.Memoria (informática)
En informática, la memoria (también llamada almacenamiento) se refiere a los componentes de una computadora, dispositivos y medios de almacenamiento que retienen datos informáticos durante algún intervalo de tiempo. Las memorias de computadora proporcionan unas de las principales funciones de la computación moderna, la retención o almacenamiento de información. Es uno de los componentes fundamentales de todas las computadoras modernas que, acoplados a una unidad central de procesamiento (CPU por su sigla en inglés, central processing unit), implementa lo fundamental del modelo de computadora de Von Neumann, usado desde los años 1940.
En la actualidad, memoria suele referirse a una forma de almacenamiento de estado sólido conocido como memoria RAM (memoria de acceso aleatorio, RAM por sus siglas en inglés random access memory) y otras veces se refiere a otras formas de almacenamiento rápido pero temporal. De forma similar, se refiere a formas de almacenamiento masivo como discos ópticos y tipos de almacenamiento magnético como discos duros y otros tipos de almacenamiento más lentos que las memorias RAM, pero de naturaleza más permanente. Estas distinciones contemporáneas son de ayuda porque son fundamentales para la arquitectura de computadores en general.
Además, se refleja una diferencia técnica importante y significativa entre memoria y dispositivos de almacenamiento masivo, que se ha ido diluyendo por el uso histórico de los términos "almacenamiento primario" (a veces "almacenamiento principal"), para memorias de acceso aleatorio, y "almacenamiento secundario" para dispositivos de almacenamiento masivo. Esto se explica en las siguientes secciones, en las que el término tradicional "almacenamiento" se usa como subtítulo por conveniencia.
Almacenamiento primario
La memoria primaria está directamente conectada a la CPU de la computadora. Debe estar presente para que la CPU funcione correctamente. El almacenamiento primario consiste en tres tipos de almacenamiento:
•Los registros del procesador son internos de la CPU. Contienen información que las unidades aritmético-lógicas necesitan llevar a la instrucción en ejecución. Técnicamente, son los más rápidos de los almacenamientos de la computadora, siendo transistores de conmutación integrados en el chip de silicio del microprocesador (CPU) que funcionan como "flip-flop" electrónicos.
•La memoria caché es un tipo especial de memoria interna usada en muchas CPU para mejorar su eficiencia o rendimiento. Parte de la información de la memoria principal se duplica en la memoria caché. Comparada con los registros, la caché es ligeramente más lenta pero de mayor capacidad. Sin embargo, es más rápida, aunque de mucha menor capacidad que la memoria principal. También es de uso común la memoria caché multi-nivel - la "caché primaria" que es más pequeña, rápida y cercana al dispositivo de procesamiento; la "caché secundaria" que es más grande y lenta, pero más rápida y mucho más pequeña que la memoria principal.
Almacenamiento secundario
La memoria terciaria es un sistema en el que un brazo robótico montará (conectará) o desmontará (desconectará) un medio de almacenamiento masivo fuera de línea (véase el siguiente punto) según lo solicite el sistema operativo de la computadora. La memoria terciaria se usa en el área del almacenamiento industrial, la computación científica en grandes sistemas informáticos y en redes empresariales. Este tipo de memoria es algo que los usuarios de computadoras personales normales nunca ven de primera mano.
Almacenamiento fuera de línea
El almacenamiento fuera de línea es un sistema donde el medio de almacenamiento puede ser extraído fácilmente del dispositivo de almacenamiento. Estos medios de almacenamiento suelen usarse para transporte y archivo de datos. En computadoras modernas son de uso habitual para este propósito los disquetes, discos ópticos y las memorias flash, incluyendo las unidades USB. También hay discos duros USB que se pueden conectar en caliente. Los dispositivos de almacenamiento fuera de línea usados en el pasado son cintas magnéticas en muchos tamaños y formatos diferentes, y las baterías extraíbles de discos Winchester.
Almacenamiento de red
El almacenamiento de red es cualquier tipo de almacenamiento de computadora que incluye el hecho de acceder a la información a través de una red informática. Discutiblemente, el almacenamiento de red permite centralizar el control de información en una organización y reducir la duplicidad de la información. El almacenamiento en red incluye:
•El almacenamiento asociado a red es una memoria secundaria o terciaria que reside en una computadora a la que otra de éstas puede acceder a través de una red de área local, una red de área extensa, una red privada virtual o, en el caso de almacenamientos de archivos en línea, internet.
•Las redes de computadoras son computadoras que no contienen dispositivos de almacenamiento secundario. En su lugar, los documentos y otros datos son almacenados en un dispositivo de la red.
En informática, la memoria (también llamada almacenamiento) se refiere a los componentes de una computadora, dispositivos y medios de almacenamiento que retienen datos informáticos durante algún intervalo de tiempo. Las memorias de computadora proporcionan unas de las principales funciones de la computación moderna, la retención o almacenamiento de información. Es uno de los componentes fundamentales de todas las computadoras modernas que, acoplados a una unidad central de procesamiento (CPU por su sigla en inglés, central processing unit), implementa lo fundamental del modelo de computadora de Von Neumann, usado desde los años 1940.
En la actualidad, memoria suele referirse a una forma de almacenamiento de estado sólido conocido como memoria RAM (memoria de acceso aleatorio, RAM por sus siglas en inglés random access memory) y otras veces se refiere a otras formas de almacenamiento rápido pero temporal. De forma similar, se refiere a formas de almacenamiento masivo como discos ópticos y tipos de almacenamiento magnético como discos duros y otros tipos de almacenamiento más lentos que las memorias RAM, pero de naturaleza más permanente. Estas distinciones contemporáneas son de ayuda porque son fundamentales para la arquitectura de computadores en general.
Además, se refleja una diferencia técnica importante y significativa entre memoria y dispositivos de almacenamiento masivo, que se ha ido diluyendo por el uso histórico de los términos "almacenamiento primario" (a veces "almacenamiento principal"), para memorias de acceso aleatorio, y "almacenamiento secundario" para dispositivos de almacenamiento masivo. Esto se explica en las siguientes secciones, en las que el término tradicional "almacenamiento" se usa como subtítulo por conveniencia.
Almacenamiento primario
La memoria primaria está directamente conectada a la CPU de la computadora. Debe estar presente para que la CPU funcione correctamente. El almacenamiento primario consiste en tres tipos de almacenamiento:
•Los registros del procesador son internos de la CPU. Contienen información que las unidades aritmético-lógicas necesitan llevar a la instrucción en ejecución. Técnicamente, son los más rápidos de los almacenamientos de la computadora, siendo transistores de conmutación integrados en el chip de silicio del microprocesador (CPU) que funcionan como "flip-flop" electrónicos.
•La memoria caché es un tipo especial de memoria interna usada en muchas CPU para mejorar su eficiencia o rendimiento. Parte de la información de la memoria principal se duplica en la memoria caché. Comparada con los registros, la caché es ligeramente más lenta pero de mayor capacidad. Sin embargo, es más rápida, aunque de mucha menor capacidad que la memoria principal. También es de uso común la memoria caché multi-nivel - la "caché primaria" que es más pequeña, rápida y cercana al dispositivo de procesamiento; la "caché secundaria" que es más grande y lenta, pero más rápida y mucho más pequeña que la memoria principal.
Almacenamiento secundario
La memoria terciaria es un sistema en el que un brazo robótico montará (conectará) o desmontará (desconectará) un medio de almacenamiento masivo fuera de línea (véase el siguiente punto) según lo solicite el sistema operativo de la computadora. La memoria terciaria se usa en el área del almacenamiento industrial, la computación científica en grandes sistemas informáticos y en redes empresariales. Este tipo de memoria es algo que los usuarios de computadoras personales normales nunca ven de primera mano.
Almacenamiento fuera de línea
El almacenamiento fuera de línea es un sistema donde el medio de almacenamiento puede ser extraído fácilmente del dispositivo de almacenamiento. Estos medios de almacenamiento suelen usarse para transporte y archivo de datos. En computadoras modernas son de uso habitual para este propósito los disquetes, discos ópticos y las memorias flash, incluyendo las unidades USB. También hay discos duros USB que se pueden conectar en caliente. Los dispositivos de almacenamiento fuera de línea usados en el pasado son cintas magnéticas en muchos tamaños y formatos diferentes, y las baterías extraíbles de discos Winchester.
Almacenamiento de red
El almacenamiento de red es cualquier tipo de almacenamiento de computadora que incluye el hecho de acceder a la información a través de una red informática. Discutiblemente, el almacenamiento de red permite centralizar el control de información en una organización y reducir la duplicidad de la información. El almacenamiento en red incluye:
•El almacenamiento asociado a red es una memoria secundaria o terciaria que reside en una computadora a la que otra de éstas puede acceder a través de una red de área local, una red de área extensa, una red privada virtual o, en el caso de almacenamientos de archivos en línea, internet.
•Las redes de computadoras son computadoras que no contienen dispositivos de almacenamiento secundario. En su lugar, los documentos y otros datos son almacenados en un dispositivo de la red.
2.Proceso (informática)
Un proceso es un programa en ejecución, los procesos son gestionados por el sistema operativo y están formados por:
•Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.
•Su estado de ejecución en un momento dado, esto es, los valores de los registros de la CPU para dicho programa.
•Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.
•Otra información que permite al sistema operativo su planificación.
Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un proceso consta de uno o más hilos, la memoria de trabajo (compartida por todos los hilos) y la información de planificación. Cada hilo consta de instrucciones y estado de ejecución.
Los procesos son creados y destruidos por el sistema operativo, así como también este se debe hacer cargo de la comunicación entre procesos, pero lo hace a petición de otros procesos. El mecanismo por el cual un proceso crea otro proceso se denomina bifurcación (fork). Los nuevos procesos pueden ser independientes y no compartir el espacio de memoria con el proceso que los ha creado o ser creados en el mismo espacio de memoria.
En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La diferencia estriba en que un proceso solamente puede crear hilos para sí mismo y en que dichos hilos comparten toda la memoria reservada para el proceso.
Método
Dos o más procesos pueden cooperar mediante señales de forma que uno obliga a detenerse a los otros hasta que reciban una señal para continuar.
•Se usa una variable de tipo Semáforo para sincronizar los procesos.
•Si un proceso está esperando una señal, se suspende (Hold) hasta que la señal se envíe (SIGNAL).
•Se mantiene una cola de procesos en espera en el semáforo.
•La forma de elegir los procesos de la cola en ESPERA es mediante una política FIFO (First In First Out) también llamada FCFS (First Come First Served), Round Robin, etc.
La sincronización explícita entre procesos es un caso particular del estado "bloqueado". En este caso, el suceso que permite desbloquear un proceso no es una operación de entrada/salida, sino una señal generada a propósito por el programador desde otro proceso.
Un proceso es un programa en ejecución, los procesos son gestionados por el sistema operativo y están formados por:
•Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.
•Su estado de ejecución en un momento dado, esto es, los valores de los registros de la CPU para dicho programa.
•Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.
•Otra información que permite al sistema operativo su planificación.
Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un proceso consta de uno o más hilos, la memoria de trabajo (compartida por todos los hilos) y la información de planificación. Cada hilo consta de instrucciones y estado de ejecución.
Los procesos son creados y destruidos por el sistema operativo, así como también este se debe hacer cargo de la comunicación entre procesos, pero lo hace a petición de otros procesos. El mecanismo por el cual un proceso crea otro proceso se denomina bifurcación (fork). Los nuevos procesos pueden ser independientes y no compartir el espacio de memoria con el proceso que los ha creado o ser creados en el mismo espacio de memoria.
En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La diferencia estriba en que un proceso solamente puede crear hilos para sí mismo y en que dichos hilos comparten toda la memoria reservada para el proceso.
Método
Dos o más procesos pueden cooperar mediante señales de forma que uno obliga a detenerse a los otros hasta que reciban una señal para continuar.
•Se usa una variable de tipo Semáforo para sincronizar los procesos.
•Si un proceso está esperando una señal, se suspende (Hold) hasta que la señal se envíe (SIGNAL).
•Se mantiene una cola de procesos en espera en el semáforo.
•La forma de elegir los procesos de la cola en ESPERA es mediante una política FIFO (First In First Out) también llamada FCFS (First Come First Served), Round Robin, etc.
La sincronización explícita entre procesos es un caso particular del estado "bloqueado". En este caso, el suceso que permite desbloquear un proceso no es una operación de entrada/salida, sino una señal generada a propósito por el programador desde otro proceso.
1.Sistema operativo:
Un Sistema operativo (SO) es un programa informático que actúa de interfaz entre los dispositivos de hardware y el usuario.1 Es responsable de gestionar, coordinar las actividades y llevar a cabo el intercambio de recursos de un computador. Actúa como estación para las aplicaciones que se ejecutan en la máquina. Uno de los más prominentes ejemplos de sistema operativo, es el núcleo Linux,2 el cual junto a las herramientas GNU, forman las llamadas distribuciones GNU/Linux.
Nótese que es un error común muy extendido, denominar al conjunto completo de herramientas sistema operativo, pues este, es sólo el núcleo y no necesita de entorno operador para estar operativo y funcional.3 Este error de precisión, es debido a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores 4 se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más intuitivo de manejar.5 (Véase AmigaOS, beOS o MacOS como los pioneros6 de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters7 por su capacidad como trazadores y animadores o tituladores de vídeo en un entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D con programas como Imagine8 o Scala multimedia, entre muchos otros.)9
Uno de los propósitos de un sistema operativo como programa estación principal, consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con éstos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (Teléfonos móviles, reproductores de DVD, computadoras, radios, etc.)
Un Sistema operativo (SO) es un programa informático que actúa de interfaz entre los dispositivos de hardware y el usuario.1 Es responsable de gestionar, coordinar las actividades y llevar a cabo el intercambio de recursos de un computador. Actúa como estación para las aplicaciones que se ejecutan en la máquina. Uno de los más prominentes ejemplos de sistema operativo, es el núcleo Linux,2 el cual junto a las herramientas GNU, forman las llamadas distribuciones GNU/Linux.
Nótese que es un error común muy extendido, denominar al conjunto completo de herramientas sistema operativo, pues este, es sólo el núcleo y no necesita de entorno operador para estar operativo y funcional.3 Este error de precisión, es debido a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores 4 se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más intuitivo de manejar.5 (Véase AmigaOS, beOS o MacOS como los pioneros6 de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters7 por su capacidad como trazadores y animadores o tituladores de vídeo en un entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D con programas como Imagine8 o Scala multimedia, entre muchos otros.)9
Uno de los propósitos de un sistema operativo como programa estación principal, consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con éstos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (Teléfonos móviles, reproductores de DVD, computadoras, radios, etc.)
Suscribirse a:
Entradas (Atom)
