Páginas

sábado, 8 de septiembre de 2012

Conoce los detalles de tu hardware - Interpretando el output de lshw

Hola! Espero, con este post, comenzar una serie de post dedicados a comandos utiles. Para realizar este post intente recopilar la mayor cantidad de informacion, de manera de poder crear uno de los post mas completos en castellano. Dado que el post tiene mucha informacion, esta es de diferente nivel tecnico. Cada apartado esta escrito con letra grande, por ende, si hay algo que no entiendes, y solo quieres saber como se usa el programa, puedes buscar el titulo asociado al uso del programa y listo.

lshw
Los elementos del hardware de tu sistema, al ser detectados por el nucleo y sus modulos siempre dejaran rastros, ya sea en algunos logs, o en carpetas como /proc y /sys. Mediante la recopilacion y analisis de esta informacion, lshw nos entrega un output completisimo, claro, conciso y sencillo de interpretar.

lshw (Hardware Lister) es una pequena herramienta desarrollada solo para Linux, que provee informacion detallada sobre la configuracion de hardware de tu maquina. Puede reportar la configuracion exacta de la memoria, version del firmware, configuracion de la placa madre, version y velocidad del CPU, configuracion del cache, velocidad del bus, dispositivos conectados a interfaces PCI, USB o IDE, etc. 

Con lshw puedes obtener informacion detalladisima de tu maquina, sin siquiera sacar un tornillo. Ademas es sumamente util en caso de que trabajes con un servidor alojado en un data center al que no tengas acceso fisico.

lshw es una herramienta desarrollada para utilizar mediante linea de comando, sin embargo existe una herramienta grafica. Esta herramienta grafica, si bien facilita el uso al usuario, no es tan completa como utilizarla desde la linea de comando. El nombre de la herramienta grafica es lshw-gtk, y para instalarla, utilicen su getsor de paquetes preferido, dado que probablemente , o adecuado a su distro. En mi caso:
apt-get install lshw-gtk
Dado que la herramienta grafica es sumamente intuitiva, en este post me referire solamente a como trabajar con lshw (desde linea de comando).


Como interpretar el output de lshw

Un ejemplo de output para lshw seria asi (en un Dell OptiPlex GXa, Pentium II 266MHz, Memoria de 192 MB):

dell product: OptiPlex GXa 266L EM+ vendor: Dell Computer Corporation serial: NL2SC capabilities: smbios-2.2 dmi-2.2 *-core *-firmware description: BIOS vendor: Dell Computer Corporation version: A10 (06/23/00) size: 64KB capacity: 192KB capabilities: isa pci pnp apm upgrade shadowing escd cdboot bootselect edd int13floppytoshiba int13floppy360 int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer int10video *-cpu product: Pentium II (Klamath) vendor: GenuineIntel slot: Microprocessor size: 266MHz capacity: 333MHz clock: 66MHz capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov mmx *-cache:0 description: Internal L1 Cache size: 32KB capacity: 32KB *-cache:1 description: Pipeline burst Synchronous External L2 write-back Cache size: 512KB capacity: 512KB *-memory description: System Memory slot: System board or motherboard size: 192MB capacity: 384MB *-bank:0 description: DIMM DRAM Synchronous 64 bits slot: DIMM_A size: 64MB *-bank:1 description: DIMM DRAM Synchronous 64 bits slot: DIMM_B size: 64MB *-bank:2 description: DIMM DRAM Synchronous 64 bits slot: DIMM_C size: 64MB

Entonces, podemos ver que lshw nos entrega su output dividido en nodos con atributos desplegados en la siguiente estructura de arbol:
system information motherboard information cpu information cache, logical cpu memory capacity, total size, individual bank information pci slot information ide slot information disk information total size, partition, usb slot information network
Cada nodo tiene un estatus individual. Puede ser CLAIMED (potencialmente usable) o UNCLAIMED (no hay driver detectado para este nodo), ENABLED (este dispositivo es soportado y puede ser usado) o DISABLED (este dispositivo es soportado, pero ha sido deshabilitado):
  • Un nodo sera marcado como CLAIMED si ha sido cargado un driver para el nodo.
  • Un nodo sera marcado como UNCLAIMED si no se ha cargado soporte especifico para el.
  • Un nodo sera marcado como ENABLED si se ha cargado un nodo para el, y esta funcionando completamente.
  • Un nodo sera marcado como DISABLED si el nodo ha sido deshabilitado por la configuracion, algun fallo del hardware, etc.
Cada nodo puede contener subnodos y pueden tener diferentes attribute (atributos), capabilities (capacidades), resources (recursos) y valores de configuracion:

Attributes (Atributos)
AtributoSignificadoEjemplo 1Ejemplo 2Ejemplo 3Ejemplo 4
ididentificador interno usado por lshwcpu:2network:1cdrom:0disk:2
classclase del dispositivoprocessornetworkdiskdisk
descriptiondescripcion del nodo de hardwareCPUEthernet interfaceDVD readerSCSI disk
vendorfabricante del dispositivoIntel Corp.Advanced Micro Devices [AMD]QUANTUM
productnombre de producto del dispositivoIntel(R) Pentium(R) 4 CPU 1.90GHz79c970 [PCnet32 LANCE]Hewlett-Packard DVD Writer 100ATLAS IV 9 WLS
versionversion del dispositivo15.1.2251.370707
serialnumero de serie del dispositivo00:60:b0:87:86:22CN1AA0786J369914632368
capacitycapacidad maxima reportada por del dispositivo100000000 (100MB/s)9167634432(8742MB)
sizetamano del dispositivo1900000000(1.9GHz)10000000 (10MB/s)9105018880(8683MB)
clockReloj del bus (en Hz) del dispositivo100000000(100MHz)33000000 (33MHz)
widthaddress width del dispositivo (32 or 64 bits)
(Nada que ver con tener un driver 32-64)
3232
slotslot en el cual el dispositivo es conectadoProcessor 1
logicalnamenombre logico bajo el cual el nodo es mostrado en el sistemaeth0/dev/hdc/dev/sdc
devnumero del dispositovo (mayor.menor)22d:0d8d:32d
businfoinformacion de buscpu@0pci@02:0a.0ide@1.0scsi@0:0.12.0
physidid fisica4a00.c.0

Capabilities (Capacidades)
Las capacidades se usan para reportar las caracteristicas de un nodo determinado. El significado exacto de cada caracteristica depende del tipo de nodo. Puede ser la presencia de un coprocesador aritmetico para un CPU, la capacidad para correr a 1GB/s de una determinada interfaz de red, etc. En la mayoria de los casos, las capacidades reportadas por lshw son autodocumentadas.

Resources (Recursos)
Resource typeDescripcionEjemplos
irqIRQirq:16
ioportI/O portsioport:1f0(size=8)
ioport:3f6
ioport:170(size=8)
ioport:376
ioport:50c0(size=16)
iomemI/O windowiomem:00006000-000060ff
iomem:00006400-000064ff
memorymemory window (prefetchable or not)memory:88000000-8bfff000(prefetchable)
memory:90000000-93fff000


Clases de dispositivo
Si quieres saber el estado, descripcion o detalles de algun tipo de hardware especifico, por ejemplo, relacionado al almacenamiento, a la red, al sistema, al procesador, los dispositivos usb, pci, etcetera, lshw puede darte un reporte especifico, si usas la opcion -class, -C o -c. mas la clase de dispositivo de la que quieras saber. Asi es la sintaxix del comando:

lshw -class clase lshw -C clase lshw -c clase
donde debes reemplazar la palabra "clase" por cualquiera de las siguientes opciones:
ClasseDescripcionEjemplos
systemSe refiere a toda la maquinalaptop, server, desktop computer
bridgeconvertidor de bus internoPCI-to-PCI brige, AGP bridge, PCMCIA controler, host bridge
memorybanco de memoria que puede contener info, codigo ejecutable, etc.RAM, BIOS, firmware, extension ROM
processorprocesadorCPUs, RAID controller on a SCSI bus
addressmemory address rangeextension ROM, video memory
storagecontrolador de almcenamientoSCSI controller, IDE controller
diskdispositivo de almacenamiento de acceso remotodiscs, optical storage (CD-ROM, DVD±RW...)
tapedispositivo de almacenamiento de acceso secuencialDAT, DDS
busdevice-connecting busUSB, SCSI, Firewire
networkinterfaz de redEthernet, FDDI, WiFi, Bluetooth
displayadaptador de displayEGA/VGA, UGA...
inputdispositivo de input de usuariokeyboards, mice, joysticks...
printerdispositivo de impresionprinter, all-in-one
multimediadispositivo de audio/video sound card, TV-output card, video acquisition card
communicationdispositivo de comunicacion de lineaserial ports, modem
powerfuente de energiapower supply, internal battery
volumevolumen de discofilesystem, swap, etc.
genericdispositivo generico (se usa cuando no hay una clase predefinida)

Aca encontre la misma tabla, pero for dummies:

Opciones y uso de lshw
lshw necesita correr con privilegios de usuario root para poder acceder a toda la informacion disponible.
Si pides ayuda al programa (usuario@computador:~# lshw -help ; usuario@computador:~# lshw -h), el output es el siguiente:


usage: lshw [-format] [-options ...]
       lshw -version

-version        print program version (B.02.15)

format can be
-html           output hardware tree as HTML
-xml            output hardware tree as XML
-short          output hardware paths
-businfo        output bus information

options can be
-class CLASS    only show a certain class of hardware
-C CLASS        same as '-class CLASS'
-c CLASS        same as '-class CLASS'
-disable TEST   disable a test (like pci, isapnp, cpuid, etc. )
-enable TEST    enable a test (like pci, isapnp, cpuid, etc. )
-quiet          don't display status
-sanitize       sanitize output (remove sensitive information like serial numbers, etc.)
-numeric        output numeric IDs (for PCI, USB, etc.)

Entonces. lshw tiene opciones de formato, en las que puedes escoger que el output salga en archivos HTML o xml:

# lshw [-html | -xml] [resto de opciones] > /ruta/donde/alojarlo/archivo.html
# lshw -html > hwinfo.html
# lshw -xml > hwinfo.xml
Puedes "pedir" que te de un reporte mas corto (-short), que te muestra los paths del hardware, y puedes pedir un reporte que presente la informacion de bus (-businfo)
La forma general de la informacion de bus es tipo_de_bus@direccion.hexadecimal.punteada

BusDescripcionFormatoEjemplo
cpuCPUscpu@id[,logicalcpu]cpu@0
cpu@0,1
firewireFireWire (IEEE1394)firewire@GUIDfirewire@0030e0f4e020ca8c
ideATA/ATAPI/IDEide@controler.idide@0.0 (master)
ide@0.1 (slave)
pciPCI (or AGP) buspci@bus:slot.functionpci@02:0a.0
scsiSCSI busscsi@controler:target.id.lunscsi@0:0.12.0
usbUniversal Serial Bususb@controler:slot.idusb@1:2.2


Si quieres saber la version de lshw, simplemente: lshw -version
Si tienes la version GUI, la puedes lanzar con lshw -X

Hay otro grupo de opciones, las que no son de formato.
Ya sabemos que para acotar el output de lshw a un tipo de dispositivos, ya sea, disco, memoria, red, etc, hacemos:
lshw -C clase_de_dispositivo
lshw -c clase_de_dispositivo
lshw -C clase_de_dispositivo
Estas tres maneras otorgan el mismo output.
Si quieres deshabilitar el output de algun dispositivo, lshw -disable test, donde test es el dispositivo
Si quieres habilitar el output de algun dispositivo, lshw -enable test, donde test es el dispositivo
La opcion -quiet no muestra el estado del dispositivo en cuestion
Con -numeric, lshw te otorga un output numerico para los IDs de los dispositivos
Y finalmente, una opcion interesantisima si quieres hacer preguntas en foros, mailing lists, etc es -sanitize, que oculta datos que debieran ser privados, ya que identifican tu HW, o incluso te podrian identificar a ti (como numeros seriales, ips, etc)



Fuentes:
Wiki del proyecto
Articulo en Linux Magazine
Post en The Geek Stuff
Wiki en esdebian

lunes, 3 de septiembre de 2012

Historia de los Sistemas Operativos de Smarphones

En Tics y Formacion encontre esta infografia, que resume la historia de los sistemas operativos de los smartphones, desde 1996, con el nacimiento de PalmOS, hasta mediados de 2011. Para variar, creo que el nombre adecuado de la infografia debiese haber incluido "smartphones" en vez de simplemente un generico "mobiles". Porque... que ocurre desde PalmOS hacia atras? Saludos, comenten!


jueves, 30 de agosto de 2012

Leonard Susskind - Clases con el fisico teorico vivo mas importante de nuestros tiempos!

Vagando por la internet, di con este post. Yo sabia del profesor Susskind gracias a documentales de television, y me motive a averiguar un poco mas y escribir esta entrada, que puede ser un buen aporte para su conocimiento. Si les da paja leer la info previa, pueden ir al final del post, y encontraran chorromil clases con el profesor Leonard Susskind, en Stanford!

El contexto
Entonces.. El profesor Leonard Susskind nacio en 1940, hijo de judios. Su padre era un pobre plomero. A los 16, Leonard comienza a trabajar, de hecho, como plomero.
Esta es la foto mas joven que pude encontrar =S






Era un chico rebelde, chico problema. Tenia malas notas, a pesar de ser excelente para las matematicas. Por ello, no pudo tomar el curso regular de Fisica. Le dejaron tomar, en la secundaria, solo el curso de Fisica Automotora. Recien en la universidad tomo su primer curso de fisica. Era un estudiante excepcionalemente avanzado. Incluso mas avanzado que su profesor! Este le aconsejo no ser un ingeniero. Dada su increible capacidad, el profesor le aconsejo ser un cientifico. Cuando Susskind le dijo a su padre que iba a ser un fisico, su padre le contesto "Ni cagando vas a trabajar en una farmacia!!". "No papa, no un Añadir leyendafarmacista! Como Albert Einstein!". "Tu no seras un ingeniero. Tu SERAS UN Einstein!".


Sus estudios
En esta foto esta mas viejo. 
  • En 1962 se gradua de Bachelor Sciences en Fisica, en la City College of New York 
  • En 1965 obtiene su PhD en Cornell University 
  • National Science Foundation Postdoctoral Fellow, Cornell University, 1965-66 
  • Assistant Professor of Physics, Belfer Graduate School of Science, Yeshiva University, 1966-68 
  • Associate Professor of Physics, Belfer Graduate School of Science, Yeshiva University 1968-70 
  • Professor of Physics, University of Tel Aviv, 1971-72 
  • Professor of Physics, Belfer Graduate School of Science, Yeshiva University 1970-79 
  • Professor of Physics, Stanford University, 1979-present 
  • Pregel Award, New York Academy of Science, 1975 
  • Loeb Lecturer, Harvard University, 1976 
  • J.J. Sakurai Prize in Theoretical Particle Physics, 1997
  • Felix Bloch Professorship in Physics, 2000-present
  • Director, Stanford Institute for Theoretical Physics, 2009-presente

 Hitos en su carrera y aporte a la ciencia
  • "Descubrimiento" independiente de la Teoria de Cuerdas
  • La Teoria del Confinamiento de los Quarks
  • El desarrollo de la Teoria Hamiltoniana de Enrejado de Recalibracion (Teoria de recalibracion aca)
  • La Teoria de violaciones escalares en la electroproduccion inelastica profunda O_o
  • Teoria Tecnicolor, o Dynamics of spontaneous symmetry breaking in the Weinberg-Salam theory
  • La segunda Teoria de la Bariogenesis Cosmologica. 
  • Teoria de Cuerdas de la Entropia de los Agujeros Negros
  • El principio de la complementariedad de los Agujeros Negros
  • La hipotesis de Parche Causal
  • El Principio Holografico 
  • La Teoria M, incluyendo el desarrollo del Modelo de Matriz BFSS
  • M-theory, including development of the BFSS matrix model [22]
  • Fermiones Kogut-Susskind 
  • Introduccion de los limites de la entropia holografica en la cosmologia fisica
  • La idea de un paisaje de teoria de cuerdas antropico
  • The Census Taker's Hat o, en castellano, el Sombrero del Censista. 
Ok, no entiendo nada =S

Estoy segura de que habra hecho aun mas aportes a la fisica, esta es la lista que aparece en Wikipedia. Pero en resumen... el tipo es un genio, sabe DEMASIADO, y de cosas tan intrincadas, y de como expresarlas en el lenguaje mantematico correspondiente. Bueno, supongo que aquellas ideas no podrian surgir a partir de otro lenguaje con la misma coherencia... 


El profesor ha escrito tres libros, que, para el lector no iniciado en los grandes misterios de las matematicas ocultas y la fisica alquimica seran un placer. Para el iniciado, probablemente tambien.
- Introduction to black holes, information, and the string theory revolution: The Holographic Revolution. (2004)
- The Cosmic Landscape: String Theory and the Illusion of Intelligent Design. (2006)
- The Black Hole war: My battle with Stephen Hawking to make the world safer for quantum physics. (2009)


Susskind ha aparecido en varios documentales. Aqui pueden encontrarlos. Ademas, ha hablado para TED, en una charla acerca de su amigo Feynman (otro fisico OSOM)!



Las clases!!!

          
 Ok, y ahora, lo increible! Te imaginas haber tomado clases con Newton, Galileo, Einstein, Euler? Bueno.. Ellos ya no estan entre nosotros. Susskind si lo esta, y ha ofrecido, junto a Stanford una serie de clases sencillas, a modo de Landau y Lifshitz, explicando y repasando los conceptos basicos de la fisica. Recomiendo este material a modo de entrenamiento en cultura general, a modo de comprension de la cosmovision, a modo de aprendizaje basico y obligatorio para todos. Aqui, un video en youtube, con subtitulos, introduciendo de que se tratan las clases y al publico que estan dirigidas.Ah, si, me olvide. Las clases se imparten en ingles, y buena suerte con encontrarlas subtituladas.
Es un tremendo privilegio tener el acceso a este conocimiento, de la manera en que lo otorga Susskind. Sin mas, he aqui las series:

 Modern Physics
 This course is comprised of a six-quarter sequence of classes that will explore the essential theoretical foundations of modern physics. The topics covered in this course sequence will include classical mechanics, quantum mechanics, the general and special theories of relativity, electromagnetism, cosmology, and black holes. While these courses will build upon one another, each course also stands on its own, and both individually and collectively they will let students attain the “theoretical minimum” for thinking intelligently about modern physics.

  1. Classical Mechanics (iTunes) – Otono (nuestra primavera) 2007
  2. Quantum Mechanics (iTunes) – Invierno (nuestro verano) 2008
  3. Special Relativity (iTunes) – Primavera 2008
  4. Einstein’s General Theory of Relativity (iTunes) – Otono 2008
  5. Cosmology (iTunes) – Invierno 2009
  6. Statistical Mechanics (iTunes) – Primavera 2009

Nueva Edicion. (Debieran irse posteando de a poco)

  1. Classical Mechanics (iTunes) – Otono 2011
  2. Quantum Mechanics (iTunes) – Invierno 2012
  3. Special Relativity                    -  Primavera 2012

Topics in String Theory
In this Winter course, we will continue an exploration of string theory with Leonard Susskind, the physicist who first developed this important theory that attempts to reconcile quantum mechanics and general relativity. In particular, the course will focus on string theory with regard to important issues in contemporary physics. Topics will include: 1) the impact of string theory on the pursuit of black holes; 2) the string theory landscape and the implications for cosmology; and 3) the Holographic Principle and its applications.

  1. Topics in String Theory (iTunes) – Invierno 2011

 String Theory and M-Theory
String theory (with its close relative, M-theory) is the basis for the most ambitious theories of the physical world. It has profoundly influenced our understanding of gravity, cosmology, and particle physics. In this course we will develop the basic theoretical and mathematical ideas, including the string-theoretic origin of gravity, the theory of extra dimensions of space, the connection between strings and black holes, the “landscape” of string theory, and the holographic principle.

  1. String Theory and M-Theory (iTunes) – Otono 2010

New Revolutions in Particle Physics
Revolutionary new concepts about elementary particles, space and time, and the structure of matter began to emerge in the mid-1970s. Theory got far ahead of experiment with radical new ideas such as “grand unification” and “supersymmetry,” but the concepts have never been experimentally tested. Now all that is about to change; the LHC— the Large Hadron Collider—has finally been built and is about to confront theory with experiment. The next three quarters of our ongoing physics series with Leonard Susskind will be devoted to these theoretical ideas and how they will be tested.

  1. New Revolutions in Particle Physics: Basic Concepts (iTunes) – Otono 2009
  2. New Revolutions in Particle Physics: Standard Model (iTunes) – Invierno 2010
  3. Supersymmetry, Grand Unification, and String Theory (iTunes) – Primavera 2010

 Quantum Entanglements
The old Copenhagen interpretation of quantum mechanics associated with Niels Bohr is giving way to a more profound interpretation based on the idea of quantum entanglement. Entanglement not only replaces the obsolete notion of the collapse of the wave function but it is also the basis for Bell’s famous theorem, the new paradigm of quantum computing, and finally the widely discussed “Many Worlds” interpretation of quantum mechanics of Everett.

  1. Quantum Entanglements – Part 1 (iTunes) – Otono 2006
  2. Quantum Entanglements – Part 2 — Se supone que aun no se ha subido
  3. Quantum Entanglements – Part 3 (iTunes) – Primavera 2007

 Hay notas para muchisimas de las clases, sino todas, aca en scribd.


Y bien, Si me ha faltado algo, en este link estan todas las listas de videos de Stanford con clases, organizadas en cursos disponibles en youtube, dictadas por el profesor Susskind. Ademas, recomiendo revisar los comentarios en cada video de youtube. Es una interesante fuente de dudas, respuestas y aportes. Tal como en una clase presencial =)

 A modo de Bunus Track, les dejo Demystifying the Higgs Bosson with Leonard Susskind, un video del 30 de julio de 2012, a proposito del triunfo del LHC.

Este post contiene horas y horas y horas de conocimiento y contenidos. Muchos (casi todos) los links de los videos los copie de este post que encontre una vez que me puse a buscar material. Trate de buscar mas informacion en castellano, pero al parecer este seria uno de los posts mas completos, en nuestro idioma, que hay. Ojala les sirva, avisen si hay algun link roto, y disfruten!