domingo, 17 de abril de 2011

30. en linux.¿cual es la funcion de las particiones: /(raiz); /boot y swap?

/ (RAIZ)

Esta es la partición más importante. No solo contiene los datos más importantes
para el sistema, sino que también oficiará de punto de montaje para otras
particiones. Las necesidades para la partición raíz en términos de tamaño son muy
limitadas, 300MB es suficiente. Sin embargo, si planea instalar aplicaciones
comerciales, que generalmente residen en /opt, necesitará incrementar dicho
tamaño. Otra opción es crear una partición separada para /opt.

/BOOT

crea arranques del sistema.

SWAP
 no es más que un espacio en el disco duro (una partición, aunque también puede ser un archivo) que actúa como si fuera memoria RAM, pero es bastante más lenta, claro está. También se le denomina memoria virtual, y Linux no es el único sistema operativo o, mejor dicho, núcleo, que hace uso de esta técnica. No vamos a entrar en detalles sobre su funcionamiento, pero podemos decir, a modo de ayuda para formarse una idea, que cuando el sistema necesita más memoria libre de la que tiene disponible, guarda unos cuantos datos en el espacio swap del disco y utiliza el que ocupaban en la RAM, volviendo a recuperar los datos guardados cuando los necesite, aún a costa de sustituirlos por otros. Si tuviésemos realmente muy poca memoria RAM la lentitud del sistema puede llegar a ser exasperante, o incluso algo más.

29. ¿cuales son los tipos de archivos admitidos para: DOS, windows 95, windows 98, windows xp, windows 7, linux, macOS, OS/2, sun solaris e IBM AIX.?

Como sabemos que cada sistema operativo maneja diferentes sistemas de archivo podran ver en la siguiente tabla el sistema de archivo que admite cada sistema operativo:

 


Sistema operativo
Tipos de sistemas de archivos admitidos
Dos
FAT16
Windows 95
FAT16
Windows 95 OSR2
FAT16, FAT32
Windows 98
FAT16, FAT32
Windows NT4
FAT, NTFS (versión 4)
Windows 2000/XP
FAT, FAT16, FAT32, NTFS (versiones 4 y 5)
Linux
Ext2, Ext3, ReiserFS, Linux Swap (FAT16, FAT32, NTFS)
MacOS
HFS (Sistema de Archivos Jerárquico), MFS (Sistemas de Archivos Macintosh)
OS/2
HPFS (Sistema de Archivos de Alto Rendimiento)
SGI IRIX
XFS
FreeBSD, OpenBSD
UFS (Sistema de Archivos Unix)
Sun Solaris
UFS (Sistema de Archivos Unix)
IBM AIX
JFS (Sistema Diario de Archivos)

Coexistencia de varios sistemas de archivos

Cuando coexisten varios sistemas operativos en la misma máquina, la elección de un sistema de archivos es un gran problema. Debido a que el sistema de archivos está estrechamente ligado al sistema operativo, cuando existen varios sistemas operativos, usted debe elegir un sistema de archivos para cada uno, teniendo en cuenta que es posible que deba acceder a los datos de un sistema operativo desde otro. Una solución sería la de usar particiones FAT para todos los sistemas, asegurándose de que las particiones no sean mayores a 2 GB. La solución más apropiada sería la de utilizar, para cada SO, una partición cuyo sistema de archivos sea el que mejor se adapte a ésta y utilizar una partición FAT16 dedicada para que los diferentes sistemas operativos compartan datos.

28. ¿cual es la diferencia entre GNU Hurd y GNU mach

GNU mach  es el microkernel o micronucleo en el que esta  basado el sistema GNU Hurd

GNU Mach no es el microkernel más avanzado del planeta, ni es el más rápido o más pequeño, pero tiene un rico conjunto de interfaces y algunas características que lo hacen útil como base del sistema de Hurd, por ejemplo
  1.  que es un software libre completamente;asi que cualquiera puede usarlo, modificarlo y redistribuirlo bajo las condiciones de la licesia publica genera. GNU (GLP).
  2. fue construido para sobrevivir.   una gran parte del código del sistema operativo se mantiene fuera de GNU Mach, y mientras que el código puede ir a través de un rediseño completo, el código de el microkernel puede permanecer relativamente estable.
  3. Es escalable.    La transparencia de redes a nivel del IPC hace que los recursos del sistema disponibles a través de límites de la máquina (con la NORMA IPC, que actualmente no están disponibles en GNU Mach).
  4. existe.   El microkernel Mach es un software real que funciona en este momento. No se trata de una investigación o una propuesta. Usted no tiene que esperar a todos antes de poder empezar a utilizar y el desarrollo de la misma. Mach se ha utilizado en muchos sistemas operativos en el pasado, generalmente como la base para un solo servidor UNIX. En el sistema GNU, Mach es la base de un sistema operativo funcional multi-servidor, el Hurd.

27. ¿por que linux es llamado GNU/linux?

La mayoría de las distribuciones de sistemas operativos basados en Linux como núcleo son básicamente versiones modificadas del sistema operativo GNU.

En un mundo alternativo, en el cual no existiese nada como el sistema GNU/Linux, y probablemente ningún sistema operativo libre. Nadie intentó desarrollar un sistema operativo libre en los años 80 excepto el Proyecto GNU y, más adelante, Berkeley CSRG; al cual el Proyecto GNU le pidió específicamente que comenzara a liberar su código. Linus Torvalds fue influenciado parcialmente por una charla sobre GNU en Finlandia en 1990. Es posible que aún sin esta influencia él podría haber escrito un núcleo similar a Unix, pero probablemente no hubiese sido software libre. Linux se hizo libre en 1992 cuando Linus lo publicó bajo la GPL de GNU.
Aún si Torvalds hubiese publicado Linux bajo alguna otra licencia de software libre, un núcleo libre por su cuenta no hubiera sido una gran diferencia para el mundo. La importancia de Linux vino de su inclusión en un entorno más grande, un sistema operativo libre completo: GNU/Linux.

26. ¿cual es la diferencia entre software libre, software gratuito y software de dominio publico?

SOFTWARE LIBRE.

“Software Libre” se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, cambiar
y mejorar el software. De modo más preciso, se refiere a cuatro libertades de los usuarios del software:
• La libertad de usar el programa, con cualquier propósito (libertad 0).
• La libertad de estudiar cómo funciona el programa, y adaptarlo a tus necesidades (libertad 1). El acceso al
código fuente es una condición previa para esto.
• La libertad de distribuir copias, con lo que puedes ayudar a tu vecino (libertad 2).
• La libertad de mejorar el programa y hacer públicas las mejoras a los demás, de modo que toda la comunidad
se beneficie. (libertad 3). El acceso al código fuente es un requisito previo para esto.
Un programa es software libre si los usuarios tienen todas estas libertades. Así pues, deberías tener la
libertad de distribuir copias, sea con o sin modificaciones, sea gratis o cobrando una cantidad por la distribución,
a cualquiera y a cualquier lugar. El ser libre de hacer esto significa (entre otras cosas) que no tienes que
pedir o pagar permisos.
También deberías tener la libertad de hacer modificaciones y utilizarlas de manera privada en tu trabajo
u ocio, sin ni siquiera tener que anunciar que dichas modificaciones existen. Si publicas tus cambios, no tienes
por qué avisar a nadie en particular, ni de ninguna manera en particular.

SOFTWARE DE DOMINIO PUBLICO Y SOFTWARE GRATUITO.

El software de dominio público no está protegido por las leyes de derechos de autor y puede ser copiado por cualquiera sin costo alguno. Algunas veces los programadores crean un programa y lo donan para su utilización por parte del público en general. Lo anterior no quiere decir que en algún momento un usuario lo pueda copiar, modificar y distribuir como si fuera software propietario. Así mismo, existe software gratis protegido por leyes de derechos de autor que permite al usuario publicar versiones modificadas como si fueran propiedad de este último.

CONNCLUSION.

Un software libre es aquel programa que puede ser ejecutado, estudiado,copiado y adaptado a las necesidades de un usuario sin que éste tenga que pedir algun permiso.
un software de dominio publico es aquel programa que no esta protegido por la ley de derechos de autor pero que puede ser copiado sin ningun costo y por ultimo un software gratuito es aquel programa que bajo la ley de derechos de autor el usuario puede modificar y publicar como si fuera suyo.

25.¿cual es la vulnerabilidad del nucleo de windows vista?

La vulnerabilidad se encuentra en el sistema de red cuando se envían solicitudes a la API “iphlpapi.dll”. El error está comprobado en Vista Ultimate y Enterprise y según los investigadores “es muy probable que afecte al resto de versiones de 32 y 64 bits”. Windows Xp no está afectado, según explican.
El exploit puede ser usado para apagar la computadora o provocar la pérdida de conectividad de la Red usando ataques de denegación de servicio (DoS). Aunque se necesitan permisos de administrador para aprovechar la vulnerabilidad, la misma podría ser explotada mediante envío de paquetes DHCP sin permisos de administración, según explican desde el grupo de seguridad austriaco, que informó que llevaban trabajando desde el mes pasado con responsables del “Microsoft Security Response Center” para “ubicar, clasificar y corregir la vulnerabilidad”.

24.Nomenclatura del kernel en linux.

La nomenclatura del Kernel se divide en 3 campos separados por un punto (.), estos son:
Primer campo: Número de la versión, actualmente a fecha de este documento es la 2.
Segundo campo: Numero de "sub-versión", por llamarlo de algun modo, es la version dentro de la propia versión, si este numero es par, la versión sera estable, si por el contrario es impar, ésta sera inestable.
Tercer campo: Nivel de corrección el en que se encuentra.
la última versión estable con la ultima aplicacion aplicada, era la 2.4.18,

23. "MinWin" el nucleo de windows 7

MinWin.

¿qué es MinWin? Como resumen se podría decir que consiste en coger el núcleo de Windows e ir quitando cosas y parar sólo justo antes de que deje de funcionar. ¿Cuál era el objetivo? Simplemente consolidar el diseño del núcleo del sistema operativo. Por lo visto los ingenieros de Microsoft descubrieron que los sistemas de bajo nivel del núcleo de Windows realizaban llamadas a procesos de alto nivel.
Para mejorar el diseño “cortaron” estas llamadas de alto nivel para convertir el núcleo de Windows en un sistema escalable. De esta manera se realizó un mapa de dependencias para poder limpiar las llamadas que se realizaban fuera del núcleo. Se reorgnizaron estas llamadas y las API. El experimento acabó con un sistema operativo que funcionaba perfectamente sin necesidad de librerías de alto nivel: el MinWin. El sistema ocupa de 25 a 40 Megabytes, frente a los 4 Gigabytes de Vista, y se compone de apenas 100 ficheros, cuando Windows necesita 5.000 para funcionar.

windows 7 escritorio ¿MinWin en el núcleo de Windows 7?


De esta forma se creó un “corazón” de Windows nuevo autocontenido y escalable, pero que contiene el núcleo (el kernel) del Windows de toda la vida, sólo que con las llamadas de alto nivel y las API reorganizadas. La clave es, según el propio Russinovich, en la diferencia entre “Core” y “kernel”. El kernel o núcleo de Windows 7 es el mismo de siempre, pero el core (el corazón) ha cambiado, se ha reorganizado. Así que MinWin no es un nuevo kernel, sino un kernel reorganizado. ¿Por qué se ha hecho de esta manera? En primer lugar porque es mucho menos costoso reorganizar y optimizar el núcleo de Windows que empezar desde cero. Por el otro se conserva la compatibilidad con el sistema anterior, porque todas las llamadas se realizan de la misma forma y el núcleo funciona de la misma manera.

22. comparacion entre el nucleo de windows y el nucleo de linux

Algunos aspectos  a comparar entre los nucleos de linux y windows son:

  1. las llamadas del sistema (system calls), mientras Linux tiene 320 Windows tiene más de 1000. A simple vista no se puede sólo por el dato comparar si esto es mejor para uno u otro, pero el hecho de que los desarrolladores no se suelan quejar de las llamadas del sistema en Linux me hace pensar que “tienen lo que necesitan”. Si estoy en lo cierto, el número abultado de llamadas en el kernel de Windows debe ser por mantener la (arcaica) compatibilidad hacía atrás lo cual como ya he dicho en anteriores veces vuelve el diseño muy complejo y propenso a errores.
  2.  el tiempo de desarrollo, cada “versión menor” (en el caso de linux los 2.6.x) dura 3 meses en linux y 31 en Windows. En las versiones mayores la cosa ya se balancea menos: Linux tarda 35 meses y Windows 38.
  3. El tamaño en líneas de código en Windows aumenta en cada versión (actualmente 10 millones de líneas) de forma exagerada aunque Linux en cada versión mete soporte para mucho hardware sin que aumente el número tanto (4 millones actualmente) El número anterior es sin drivers, si incluimos los drivers los números se disparan y la diferencia también (Windows 25 millones, Linux 8).
  4. El tamaño resultante del kernel (sin drivers/módulos) también es exageradamente, Linux ocupa 1.3MB frente a los 4.6MB de Windows.
  5. el número de arquitecturas soportadas donde Windows literalmente es machado: Windows soporta x86 (los ordenadores de toda la vida), AMD64 y IA-64. Linux soporta ésas y además otras 14 arquitecturas sin contar consolas.

21.¿cual es la arquitectura de linux y de windows?

ARQUITECTURA DE LINUX.

La arquitectura interna de Linux es compleja pero se puede resumir las partes importántes de forma breve y fácil de entender.

 Procesos

Linux se organiza en procesos, que son tareas independientes que se ejecutan de forma simultánea mientras el sistema está en funcionamiento. Los procesos cuelgan unos de otros en una dependencia padre/hijo. Inicialmente al arrancar el sistema sólo existe un proceso, llamado init. Init lee los ficheros de configuración de arranque presentes en el directorio /etc y va creando procesos hijos. Estos a su vez tendrán sus propios hijos formando un árbol de descendientes. Los procesos en ejecución se encuentran alojados en la memoria rápida RAM del sistema. Cuando se habla de ejecutar o lanzar o arrancar un proceso, nos estámos refiriendo al proceso de leer un fichero almacenado en el disco duro que contiene las instrucciones del programa, colocando las mismas en la memoria RAM y a continuación empezando a ejecutar las instrucciones del programa ya en RAM.

Usuarios

Linux está diseñado para ser utilizado por varios usuarios simultáneamente. Aun cuando el sistema sólo vaya a ser utilizado por un único usuario, como es el caso corriente hoy en día, en general internamente Linux utilizará varios usuarios 'robots' para organizar mejor y de forma más segura el sistema. Linux siempre tiene un superusuario llamado 'root' ('raíz' traducido). En el siguiente párrafo se explica el por qué crea varios usuarios en vez de uno único.
Cada uno de los procesos pertenece a un usuario y en función del usuario asociado, dicho proceso tendrá unos permisos u otros. Un proceso en ejecución puede cambiar su usuario asociado si tiene los permisos suficientes para hacerlo. En general sólo tendrá permisos para cambiar de usuario cuando el usuario actual asociado al proceso sea 'root'.

 Ficheros
Los procesos acceden al hardware y a otros recursos como la conexión de red a internet o los datos almacenados en disco a través de un sistema de ficheros. Todas las entradas y salidas de datos desde/hacia procesos se realiza a través de ficheros. P.ej, para acceder a la tarjeta gráfica de vídeo lo hará leyendo y escribiendo en:
/dev/video/card0    
  ^     ^    ^
  │     │    └── Tarjeta 0 (podría haber más de una tarjeta de video en el sistema)
  │     │                                  
  │     └── Subdirectorio/carpeta video      
  │                                          
  └── Abreviatura de device (dispositivo)
Mientras que para acceder a un documento de texto almacenado en su disco duro lo hará accediento a una ruta similar a:
/home/usuario1/documento1.odf
  ^     ^        ^
  │     │        └── Documento que queremos leer/editar.
  │     │                                  
  │     └── Subdirectorio/carpeta usuario1 (puede haber muchos usuarios)
  │                                          
  └── Directorio reservado para los ficheros de los usuarios finales
 
En general un mismo proceso puede acceder simultáneamente a varios ficheros y a su vez un mismo fichero puede ser accedido simultáneamente por varios procesos como se vé en el esquema siguiente:
ARBOL DE PROCESOS                                   FICHEROS Y DIRECTORIOS
 ==========================================================================
 procesoInicial(Init)                                /bin/Init
    │  
    ├── proc.Hijo1 ───────────────────▇───────────── /bin/proc.Hijo1
    │      ├── proc.Hijo1.1 ──────────┼─▇─────────── /bin/proc.Hijo1.1
    │      └── proc.Hijo1.2 ──────────┼─┼─▇───────── /bin/proc.Hijo1.2
    ├── proc.Hijo2 ───────────────────┼─┼─┼─▇─────── /bin/proc.Hijo2
    │      ├── proc.Hijo2.1 ──────────┼─┼─┼─┼─▇───── /bin/proc.Hijo2.1
    │      └── proc.Hijo2.2 ──────────┼─┼─┼─┼─┼─▇─── /bin/proc.Hijo2.2
    ├── proc.Hijo3 ───────────────────┼─┼─┼─┼─┼─┼─▇─ /bin/proc.Hijo3
    │      └── proc.Hijo3.1 ──────────┼─┼─┼─┼─┼─┼─┼─ /bin/proc.Hijo3.1
    │               └── proc.Hijo3.1.1┼─┼─┼─┼─┼─┼─┼─ /bin/proc.Hijo3.1.1
    ├── proc.Hijo4                    │ │ │ │ │ │ │  ...
    ...                               ▇─▇─▇─▇─▇─▇─▇─ /
                                      ▇─▇─▇─┼─┼─┼─┼─ /dev/pts/0  
                                      ┼─┼─┼─▇─▇─▇─┼─ /dev/pts/1  
                                      ┼─┼─┼─┼─┼─┼─┼─ /dev/pts/2  
                                      ┼─▇─┼─┼─▇─┼─┼─ /etc/passwd  
                                      ┼─┼─▇─┼─┼─▇─┼─ /dev/snd/controlC0  
                                      ▇─▇─▇─▇─▇─▇─▇─ /dev/null
                                      ▇─┼─▇─┼─▇─▇─▇─ /lib/i686/libc-2.11.so  
                                      ...                                   
En el esquema anterior puede verse como por ejemplo todos los procesos (lado izquierdo) tienen acceso a '/', la raíz del sistema así como a /dev/null. Cada proceso tiene acceso también a su imagen en el disco duro desde donde se leen el mismo antes de volcarla a memoria RAM.
A continuación se muestra un ejemplo real del árbol de procesos hasta llegar al proceso navegador firefox:
USUARIO  PROCESO
root     /sbin/init [5]
...
root      \_ /usr/sbin/gdm-binary
usuario1       \_ /etc/X11/X            
usuario1            \_ gnome-panel
usuario1                \_ /usr/bin/firefox   

En el esquema anterior se puede observar como el proceso inicial init lanzará entre otros el proceso gdm-binary que es el encargado de autentificarnos con nuestro usuario y password. A continuación ejecutará el entorno gráfico X. Dentro de X se ejecutarán una serie de aplicaciones, p.ej, el relog mostrando la hora o el administrador de archivos. En el esquema anterior se muestra sólamente la aplicación gnome-panel, una pequeña barra colocada en el lateral del monitor y que sirve para que el usuario pueda indicarle al sistema qué otras tareas (procesos) quiere ejecutar a continuación pulsando sobre un icóno gráfico asociado a la misma. En este caso se ejecutó él navegador web firefox. Como puede observarse en el esquema firefox se ejecuta asociado al usuario1 y por tanto con los permisos restringidos del mismo ya que es hijo de gnome-panel que a su vez es hijo de X y que fué ejecutado como usuario1 por el gestor de sesiones una vez identificados correctamente con nuestro usuario y password.

 El kernel
Comentaba anteriormente que el primer proceso en ejecutarse el init. En realidad esto no ha sido más que una mentira con fines pedagógicos. El primer proceso en ejecutarse es el Kernel. El kernel hace de frontera entre el software y el hardware. Para nuestra CPU, el kernel es un programa de software como cualquier otro (o casi como cualquier otro) pero para el resto de procesos, init incluido, el kernel se comporta como si fuese hardware. Cuando un proceso quiere acceder al hardware no lo hace directamente, sino que se lo pide al kernel. El kernel hace de interlocutor entre procesos y hardware. Si varios procesos quieren acceder al disco duro o a Internet, el kernel asignará un tiempo a cada uno de ellos, copiará los datos que cada proceso quiere enviar y los enviará al disco duro o a la red. También es el kernel el encargado de distribuir el tiempo de CPU asignado a cada proceso. Linux es un sistema multiproceso debido a que, aun disponiendo de un único procesador, Linux es capaz de ejecutar simultáneamente varias tareas haciendo rotar el propietario de la CPU cada fracción de segundo. En realidad puede asignar el control de la CPU a un nuevo proceso entre 100 o 1000 veces por segundo, dependiendo de la potencia de la CPU. Para un ser humano da la impresión de que todas las tareas se están ejecutando de forma simultánea. Este sistema de asignación de la CPU es clave y está extremadamente estudiado y optimizado. P.ej, Linux es lo suficientemente inteligente como para saber qué procesos están a la espera de recibir un dato de internet y, mientras este dato no llegue, no le asignará el valioso tiempo de CPU. Desde hace unos años a esta parte, los procesadores han desarrollado sistemas de ahorro de energía permitiendo disminuir la frecuencia, potencia o ciclo de trabajo de la CPU cuando no hay tareas que hacer. Linux está al tanto de este hecho y si observa que no hay aplicaciones demandando la CPU automáticamente le indica al procesador que disminuya el consumo de energía.

ARQUITECTURA DE WINDOWS.

Este es el esquema de la arquitectura de windows.


La cual está compuesta por una serie de componentes separados donde cada cual es responsable de sus funciones y brindan servicios a otros componentes. Esta arquitectura es del tipo cliente – servidor ya que los programas de aplicación son contemplados por el sistema operativo como si fueran clientes a los que hay que servir, y para lo cual viene equipado con distintas entidades servidoras.
Ya creado este diseño las demás versiones que le sucedieron a Windows NT fueron tomando esta arquitectura como base y le fueron adicionando nuevos componentes.

Uno de las características que Windows comparte con el resto de los Sistemas Operativos avanzados es la división de tareas del Sistema Operativo en múltiples categorías, las cuales están asociadas a los modos actuales soportados por los microprocesadores. Estos modos proporcionan a los programas que corren dentro de ellos diferentes niveles de privilegios para acceder al hardware o a otros programas que están corriendo en el sistema. Windows usa un modo privilegiado (Kernel) y un modo no privilegiado (Usuario).

sábado, 16 de abril de 2011

20.¿cuales son las funciones del nucleo o kernel?

FUUNCIONES DEL NUCLEO.

En informática, el núcleo de un sistema operativo, es el programa informático que se asegura de:
  • La comunicación entre los programas informáticos y el hardware.
  • Gestión de los distintos programas informáticos (tareas) de una máquina.
  • Gestión del hardware (memoria, procesador, periférico, forma de almacenamiento, etc.)
Otras  funciones ejercidas normalmente por el nucleo:

Los núcleos tienen como funciones básicas de garantizar el cargamento y la ejecución de los procesos, las entradas/salidas y proponer un interfaz entre el espacio núcleo y los programas del espacio del usuario.
Aparte de las funcionalidades básicas, el conjunto de las funciones de los puntos siguientes (incluidos los pilotos materiales, las funciones redes y sistemas de ficheros o los servicios) necesariamente no son proporcionados por un núcleo de sistema de explotación. Pueden establecerse estas funciones del sistema de explotación tanto en el espacio usuario como en el propio núcleo. Su implantación en el núcleo se hace en el único objetivo de aumentar los resultados. En efecto, según la concepción del núcleo, la misma función llamada desde el espacio usuario o el espacio núcleo tiene un coste temporal obviamente diferente. Si esta llamada de función es frecuente, puede resultar útil integrar estas funciones al núcleo para aumentar los resultados.
Hay que señalar que estas técnicas se utilizan para atenuar defectos de los núcleos como los elevados estados. En la medida de lo posible, es preferible escribir un programa informático fuera del núcleo, en el espacio usuario. En efecto, el espacio del núcleo, supone la ausencia de mecanismos como la protección de la memoria. Es pues más complejo escribir un programa informático que funciona en el espacio del núcleo, que en el espacio usuario; los errores y faltas de seguridad pueden ser elevados.

19. ¿que es un sistema de archivos?

SISTEMA DE ARCHIVOS:


Un sistema de archivos esta basado en la administracion de clusters para que nuestro sistema operativo pueda administrar idealmente el espacio disponible en disco para almacenar y utilizar archivos.
Aunque los discos rígidos pueden ser muy chicos, contienen millones de bits, y por
lo tanto necesitan organizarse para poder ubicar la información. Éste es el propósito del sistema de archivos.
un ejemplo es el ext2 que es un sistema de archivos admitido por GNU/linux.


18.¿cuales son los cargadores de arranque para GNU/linux?

Uno de los  medios para arrancar un sistema linux es instalar un gestor de arranque en el disco duro o en un disco flexible.

estos son los gestores de arranque que nos ayudaran a ejecutar linux:

LILO (LInux LOader) es el sistema de arranque más extendido en el mundo Linux, aunque es un poco arcáico. Se instala en un sector de arranque - de una partición o de un disco flexible - o en el Master Boot Record (MBR) del disco duro y permite arrancar Linux y otros sistemas operativos instalados en el PC.

La configuración se encuentra generalmente en el archivo /etc/lilo.conf, aunque en realidad se almacena en el sector de arranque o en el MBR, por lo que cada vez que queramos aplicar los cambios hechos en el fichero será necesario ejecutar la orden /sbin/lilo para que reinstale el programa.

Al arrancar el PC, LILO permite elegir la imagen que queremos arrancar y pasar parámetros al núcleo; aunque esto sea necesario para inicializar el sistema en ciertas ocasiones - principalmente cuando hay errores graves en un arranque normal - el hecho es que los parámetros pasados a un kernel antes de ser arrancado pueden facilitar a un atacante un control total sobre la máquina, ya que algunos de ellos llegan incluso a ejecutar un shell con privilegios de root sin necesidad de ninguna contraseña.

GRUB

GRUB (GRand Unified Bootloader) es un sistema de arranque más potente que el anterior. Una vez instalado en un sector de arranque (de una partición o un disco flexible) o en el Master Boot Record (MBR) del disco duro, ejecuta un interprete de comandos cada vez que iniciamos el sistema que nos permite arrancar prácticamente cualquier sistema operativo actual.
Este interprete se puede usar de modo interactivo o puede leer un fichero de configuración almacenado en el disco (que por defecto estará en /boot/grub/menu.lst). Una característica importante de GRUB es que es capaz de reconocer gran cantidad de sistemas de ficheros, de modo que no es necesario reinstalarlo cuando cambiamos ese fichero de configuración, que es simplemente un fichero de texto.

1) Que es un sistema operativo

  • Un Sistema Operativo (SO) es el software básico de una computadora que provee una interfaz entre el resto de programas del ordenador, los dispositivos hardware y el usuario.
  • Las funciones básicas del Sistema Operativo son administrar los recursos de la máquina, coordinar el hardware y organizar archivos y directorios en dispositivos de almacenamiento.
  • Los Sistemas Operativos más utilizados son Dos, Windows, Linux y Mac. Algunos SO ya vienen con un navegador integrado, como Windows que trae el navegador Internet Explorer.

17. en linux.¿cuales son las convenciones para nombrar los discos?

En un sistema operativo linux los discos son llamados con el siguiente esquema:
hdXY
Donde:
hd: Disco.
X: Una letra, empezando por la a, que denomina al disco así: hda = primer disco,
hdb = segundo... etc.
Y: Un número, que será el de la partición en ese disco.
Así:
/dev/hda1 = primer disco, primera partición.
/dev/hdb3 = segundo disco, tercera partición.
/dev/hdc y/o /dev/hdd = Suelen ser las unidades de CD o DVD
Cuando tenemos una partición extendida, su nombre se omite. Por ejemplo, supongamos un primer disco con una partición primaria, otra extendida, y dentro de la extendida dos más, veríamos algo así al utilizar el comando df:
/dev/hda1 = primera partición primaria.
/dev/hda3 = primera unidad lógica dentro de la partición extendida.
/dev/hda4 = segunda unidad lógica dentro de la partición extendida.
/dev/hda2, que no aparece, corresponde a la partición extendida.
En un disco SCSI, o quizás también SATA, las particiones se llamarían sdXY, siendo válido el resto de lo expuesto para los discos llamados hd.
El cargador de arranque GRUB llama a los discos y particiones de forma distinta, y no está de más que veamos cómo, ya que su uso se ha extendido prácticamente a todas las distribuciones. Según GRUB, una partición se denomina con el siguiente esquema:
(hdX,Y)
El nombre completo va entre paréntesis, donde:
hd: Disco.
X: Un número, empezando por el 0, que denomina al disco así: hd0 = primer disco, hd1 = segundo... etc.
,: Una coma que separa el disco de la partición.
Y: Un número, empezando por el 0, que será el de la partición de ese disco.
Así:
(hd0,0) = primer disco, primera partición.
(hd1,2) = segundo disco, tercera partición.

16. ¿que es el kernel?

EL KERNEL
informática, el núcleo (también conocido en español con el anglicismo kernel, de raíces germáni  es la parte fundamental de un sistema operativo. Es el software responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es limitado, el núcleo también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se coce como multiplexado. Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del hardware. Esto permite esconder la complejidad, y proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso para el programador.




El kernel consiste en la parte principal del código del sistema operativo, el cual se encargan de controlar y administrar los servicios y peticiones de recursos y de hardware con respecto a uno o varios procesos, este se divide en 5 capas o niveles:
·         Nivel 1. Gestión de memoria. Proporciona las facilidades de bajo nivel para la gestión de memoria secundaria necesaria para la ejecución de procesos.
·         Nivel 2. Procesador. Se encarga de activar los cuantums de tiempo para cada uno de los procesos, creando interrupciones de hardware cuando no son respetadas.
·         Nivel 3. Entrada/Salida. Proporciona las facilidades para poder utilizar los dispositivos de E/S requeridos por procesos.
·         Nivel 4. Aplicación o interprete de lenguajes. Facilita la comunicación con los lenguajes y el sistema operativo para aceptar las ordenes en cada una de las aplicaciones. Cuando se solicitan ejecutando un programa el software de este nivel crea el ambiente de trabajo e invoca a los procesos correspondientes.
·         Nivel 5. Control de archivos. Proporciona la facilidad para el almacenamiento a largo plazo y manipulación de archivos con nombre, va asignando espacio y acceso de datos en memoria.

viernes, 15 de abril de 2011

15. Explique los cuatro tipos de nucleos


No necesariamente se necesita un núcleo para usar una computadora. Los programas pueden cargarse y ejecutarse directamente en una computadora «vacía», siempre que sus autores quieran desarrollarlos sin usar ninguna abstracción del hardware ni ninguna ayuda del sistema operativo. Ésta era la forma normal de usar muchas de las primeras computadoras: para usar distintos programas se tenía que reiniciar y reconfigurar la computadora cada vez. Con el tiempo, se empezó a dejar en memoria (aún entre distintas ejecuciones) pequeños programas auxiliares, como el cargador y el depurador, o se cargaban desde memoria de sólo lectura. A medida que se fueron desarrollando, se convirtieron en los fundamentos de lo que llegarían a ser los primeros núcleos de sistema operativo.
Hay cuatro grandes tipos de núcleos:
  • Los núcleos monolíticos facilitan abstracciones del hardware subyacente realmente potentes y variadas.
  • Los micronúcleos (en inglés microkernel) proporcionan un pequeño conjunto de abstracciones simples del hardware, y usan las aplicaciones llamadas servidores para ofrecer mayor funcionalidad.
  • Los núcleos híbridos (micronúcleos modificados) son muy parecidos a los micronúcleos puros, excepto porque incluyen código adicional en el espacio de núcleo para que se ejecute más rápidamente.Son los que reciben o dan salida a señales analógicas que son procesadas digitalmente.Esto puede realizarse gracias a los conversores analogicos/digitales que , como su nombre indica ,convierte señales analógicas a digitales
  • Los exonúcleos no facilitan ninguna abstracción, pero permiten el uso de bibliotecas que proporcionan mayor funcionalidad gracias al acceso directo o casi directo al hardware.
Algunos ejemplos de micronúcleos:
  • AIX
  • La familia de micro núcleos L4
  • El micronúcleo Mach, usado en GNU Hurd y en Mac OS X
  • BeOS
  • Minix
  • MorphOS
  • QNX
  • RadiOS
  • VSTa
  • Hurd