Creative Commons 3.0 RSS CSS 2.1 XHTML 1.0
Entrar  
Rexistru
Lo que pasa detrás y delantre la pantalla 
Escrito por Sumiciu el sábadu, 26 xineru de 2008

Según leemos en la Linux Kernel Mail List, Linux Torvals ha publicado la última versión del kernel de Linux:

The release is out there (both git trees and as tarballs/patches), and for
the next week many kernel developers will be at (or flying into/out of)
LCA in Melbourne, so let's hope it's a good one.

Nothing earth-shattering happened since -rc8, although the new set of ACPI
blacklist entries and some network driver updates makes the diffstat show
that there was more than the random sprinkling of one-liners all over the
tree.

But most of it really is one-liners, and mostly not very exciting ones at
that.


Puedes ver el changelog o el changelog resumido en castellano:
-Mejoras del gestor de procesos
-Task Control Groups, o grupos de control de procesos.
-Soporte de Tickless (NO_HZ) para x86-64, PPC, UML, ARM, MIPS....
-Reunificación de las fuentes de x86-32 y x86-64
-Puntos de montaje "bind" de solo lectura
-Espacios de nombres para los PIDs y la pila de red
-Límites de memoria "sucia" para cada dispositivo
-Soporte SPI/SDIO en la capa MMC
-Autorización USB
-Markers
-Antifragmentación de la memoria
-Drivers para dispositivos inalámbricos

Escrito por Sumiciu el sábadu, 3 payares de 2007

Siempre está bien tener una chuleta a mano.





Escrito por Sumiciu el sábadu, 11 agostu de 2007

Ya se encuentra disponible la version 0.9.43 de Wine. Recuerdo que (extraído de la wikipedia):



Wine es una reimplementación de la API de Win16 y Win32 para sistemas operativos basados en Unix bajo plataformas Intel. Permite la ejecución de programas para MS-DOS, Windows 3.11, Windows 95, Windows 98, Windows ME, Windows NT, Windows 2000 y Windows XP. El nombre Wine empezó como un acrónimo para Windows Emulator, pero a lo largo de sus versiones fue evolucionando y ahora corre nativamente los programas para Windows. Ahora el nombre Wine es un acrónimo recursivo que significa Wine Is Not an Emulator.





Se pueden descargar ya las fuentes desde los servidores IBiblio y sourceforge .




Puedes descargar algunos binarios de Wine preparados para algunas distros aquí junto con la documentacion.



Más informacion en la página oficial.

Escrito por Sumiciu el miércoles, 11 xunetu de 2007



It's out there now (or at least in the process of mirroring out - if you don't see everything, give it a bit of time).



Not a whole lot of changes since -rc7: some small architecture changes (ppc, mips, blackfin), and most of those are defconfig updates. Various driver fixes: new PCI ID's along with some ide, ata and networking fixes (for example - the magic wireless libertas ioctl's got removed, they may be re-added later, hopefully in a more generic form, but in the meantime this doesn't make a release with new interfaces that aren't universally liked).




And various random fixes for regressions and other buglets. Mostly really small "few-liners".

[..]

(Linus Dixit)



Y con estas palabras leídas el lunes en la lista de correo de marras, se hizo público el lanzamiento de la nueva versión del Kernel de Linux (la 2.6.22). Esta muy bonito ver como se incrementan los números, pero vámonos a lo que nos interesa, o sea, a las novedades que aporta esta nueva versión del núcleo.



Nuevo Slab Allocator (de nombre Slub allocator), todos recalcan que ha sido intocable por mucho tiempo, debido a que cumplía para la mayor parte de los usos y sus modificaciones son críticas. Aún así, en ciertos entornos, el rendimiento no era el óptimo, lo cual repercutía en no llevar el sistema a sus máximas posibilidadese, incluso, dejarse los recursos por el camino. ¿Pero de qué estamos hablando realmente? ¿qué es el Slab Allocator? ¿de qué se ocupa? pues simplemente gestiona objetos de memoria que son frecuentemente creados y borrados, con un tamaño especifíco, y se encarga de que no se produzca una excesiva fragmentación entre ellos.

En este sentido, y más concretamente, se denomina slab a una pieza de memoria contigua, y una cache está formada por múltiples slabs (Wikipedia).




Leer más sobre el tema

Y, ya que estamos hablando de software libre, si no te lo crees miralo con tus propios ojos



También se ha retocado la pila wireless (implementación y gestion de protocolos..), a fondo, de hecho cuenta con una pila completamente nueva donada por Devicescape con una nueva interfaz de usuario. La parte mala, que habrá que esperar para tener todos los drivers funcionando con esta nueva implementación aunque ya pululan por ahi unos cuantos.

Se espera que con esto mejore la conectividad WiFi en GNU/Linux.



Otra pila renovada ha sido la relativa al FireWire; además de la notificación de eventos a través de descriptores de fichero, soporte añadido para la arquitectura BlackFin.




Se ha introducido asimismo UBI (Unsorted block images), un administrador de volúmenes lógicos especialmente diseñado para memorias flash por sus características particulares.



Y la lista sigue, añadido driver para el protocolo RxRPC, capacidades para aproximar la medida de la huella de memoria de una tarea; la interfaz utimensat() y varios drivers nuevos que sumar a la larga lista de drivers soportados.



Podríamos seguir por los cambios que podemos encontrar en cada subsistema pero este post es, por necesidad, finito y no confio en que la paciencia de nadie sea tan abultada. Si puede el interés, un buen sitio por el que empezar a profundizar (en ingles), es este.






Ah, por cierto, y no...aún no tenemos nuevo planificador...sigue la batalla de los planificadores...

Escrito por Sumiciu el llunes, 25 xunu de 2007

A día de hoy, cuando hablamos de virtualización se nos vienen a la cabeza bien extraños procesos, desarrollo avanzado o bien extraños frikis aficionados a la prueba de todo lo que les caiga entre manos que han hecho de VMWare, QEMU y compañía su mejor juguete.



Lo cierto es que la velocidad de los equipos se ha incrementado hasta el punto de que empecemos a pensar en el uso corriente de la virtualización sin que nos llamen chalaos a la cara, o al menos no a las primeras de cambio.

El hecho es que ya están apareciendo soluciones y pasos orientados en este sentido, y GNU/Linux (cómo no..) ya se está dando prisa en aplicarlas. Si lo habitual hasta hoy era usar una máquina virtual proporcionada por un programa de terceros como los mencionados antes, a partir del kernel 2.6.20 en GNU/Linux nos proveen de nuevas herramientas "para empezar a jugar".



A nivel de hardware, tenemos los dos bandos de siempre. Intel nos ofrece la Inter Virtualization Tecnology -alias Intel VT (VT-x para IA-32 y VT-i para Itanium respectivamente)[1]-, mientras que AMD cuenta con la AMD Virtualization o AMD-V. Básicamente, hablamos de unos conjuntos de instrucciones añadidos al procesador que proveen de asistencia via hardware a los hipervisores o vmm (virtual machine monitor), que son los host que crean el entorno virtual en el que podremos cacharrear.


En Linux si queremos saber si nuestra CPU tiene dichas capacidades, si ejecutando el siguiente comando obtenemos alguna respuesta, esta será afirmativa (si no obtenemos nada, debemos tomarlo como un no).



egrep '^flags.*(vmx|svm)' /proc/cpuinfo



Debemos tener en cuenta para ello que /proc/cpuinfo sólo nos mostrará nuestras capacidades de virtualizacióna partir de la version 2.6.15 para Intel y 2.6.16 para AMD. Además, algunos fabricantes desactivan por defecto estas opciones por lo que habrá que meterle mano a la configuración de la BIOS para ponerlo a punto.



A nivel software, y más concretamente de sistemas operativos, la única posibilidad que tenemos hasta el momento (no tardará la competencia, no desespere nadie..) es la anteriormente menciona que proporciona el pingüino y que han dado en llamar KVM. Tal y como podemos leer en la Wikipedia, KMV está implementado actualmente como un módulo para cargar en el kernel, aunque en futuras versiones, probablemente use una interfaz de llamadas al sistema integrada en el núcleo del operativo directamente.

Cabe decir, que realmente, KMV, por si misma, no realiza ninguna emulación, sino que provee de una interfaz que será usada por otro programa desde el espacio de usuario. El único programa capaz de hacerlo, hasta la fecha, es una version modificada de QEMU. KMV, puede usar discos virtuales que soportaba QEMU (incluyendo lo usados por VMWare).




Y llegó el momento de tocar la seguridad, la recomendación principal es usar el dispositivo /dev/kmv (que provee la interfaz para localizar las direcciones virtuales de la máquina virtual cliente) con un usuario distinto al root, para ello es conveniente cambiarle los permisos. Pero esto no acaba aquí, ya que empiezan a surgir los análisis y las búsquedas de agujeros en estos sistemas. Y es que, amiguitos, sólo estamos ante el principio.

Escrito por Sumiciu el martes, 12 xunu de 2007

Esta es una traducción de este artículo sobre un vistazo muy por encima al núcleo de GNU/Linux aparecido entre los artículos de la base de conocimiento de IBM y que considero bastante importante para empezar a entender algunos detalles del S.O.




Anatomía del núcleo de Linux



El kernel de Linux es el núcleo de un sistema operativo extenso y complejo, y aunque su tamaño es enorme, esta correctamente organizado en subsistemas y capas. En este artículo, se explorará la estructura general del kernel de Linux y se conseguirá conocer sus subsistemas e interfaces del núcleo más importantes.[...]



Dado que la meta de este artículo es introducirse en el kernel de Linux y explorar su arquitectura y componentes principales, empezaremos con una vuelta rápida por la historia del kernel, después nos centraremos en la arquitectura del kernel de Linux a vista de pájaro y, finalmente, examinaremos sus subsistemas más importantes. El kernel de Linux tiene más de seis millones de líneas de código, por lo tanto, esta introducción no es exhaustiva. Los recursos ayudarán a profundizar.



Un pequeño viaje a través de la historia de Linux

Aunque podría decirse que Linux es el sistema operativo de código abierto más popular, su historia es realmente bastante corta considerando la línea temporal de los sistemas operativos. En los primero momentos de la computación, los programadores desarrollaban sobre el hardware directamente en el lenguaje que él entendía. La falta de un sistema operativo significaba que únicamente una aplicación (y por lo tanto un único usuario) podía usar una dispositivo enorme y caro de cada vez. Los primeros sistemas operativos fueron desarrollados en los años 50 para proveer de una experiencia de desarrollo más simple. Algunos ejemplos son General Motors Operating System (GMOS) desarrollado para el IBM 701 y el FORTRAN Monitor System (FMS) desarrollado por la aviación americana para el IBM 709.




En los años 60, el Instituto Tecnológico de Massachussets (MIT) y un grupo de compañías desarrollaron un sistema operativo experimental llamado Multics (Multiplexed Information and Computing Service) para la GE-654. Uno de los desarrolladores de este sistema, AT&T, abandonó Multics y desarrolló su propio sistema operativo en 1970 llamado Unics. Junto con este sistema operativo vino el lenguaje C, para el que fue desarrollado y, posteriormente, reescrito con el fin de hacer el desarrollo del sistema operativo portable.



Veinte años más tarde, Andrew Tanenbaum creo una versión de UNIX con un microkernel llamada MINIX que corría en pequeños PC. Este sistema operativo de código abierto inspiró el desarrollo inicial de Linux por parte de Linus Torvals a principios de los 90 (ver figura 1).



Linux evolucionó rápidamente para transformarse de ser un proyecto de una sola persona a un proyecto de desarrollo de extensión mundial que involucraba a miles de programadores. Una de las más importantes decisiones para Linux fue la adopción de la Licencia Pública General de la GNU (GPL). Bajo la GPL, el kernel de Linux fue protegido contra el la explotación comercial, y además beneficiado por el espacio de desarrollo del proyecto GNU. Esto permitió que aplicaciones útiles como GCC y varias shell fueran soportadas.



Escrito por Sumiciu el llunes, 11 xunu de 2007

A continuación cuelgo un video de un documental emitido por la segunda cadena, que servirá como introducción a algún artículo más sobre el sistema.



Muy recomendable para los que quieran empezar a conocer el mundillo.









Ir a página 1 2