Language:
switch to room list switch to menu My folders
Go to page: [1]
↑↑↑ Old messages ↑↑↑            ↓↓↓ New messages ↓↓↓
[#] Tue Feb 27 2018 22:49:29 CST from "imaginarius" <imaginarius@pacific3.fi-p.unam.mx> to phantasticum_usuarius <phantasticum_usuarius@pacific3.fi-p.unam.mx>

Subject: Los estándares fundamentales de GNU / Linux (Debian)

[Reply] [ReplyQuoted] [Headers] [Print]

- no title specified

Derechos Reservados © 2018-02-20  FLC /  Lab ITYTY / FI /UNAM

Los estándares fundamentales de GNU / Linux (Debian)

( About GNU / Linux major Standars)

 


Al principio, uno se sorprende de que el software libre se entregue gratis, de que el código sea abierto, y que algunas de las licencias se reduzcan prácticamente a la aplicación de la regla «prohibido prohibir [2]».  Cualquiera se pregunta por lo menos:

a) ¿De qué viven los que desarrollan software gratuito?

b) ¿Es posible que ese tipo de trabajo sea de calidad ?

c) ¿Cómo se coordina  a una enorme cantidad de voluntarios?

En respuesta a la cuestión a), se sabe que diversos grupos de trabajo piden donaciones económicas y colaboración voluntaria a los usuarios, también venden soporte, publicaciones, y a veces hasta camisetas. Pero el grueso del ingreso no viene de ahí. Es frecuente que esos grupos tengan convenios con, o apoyos de, compañías que quieren escapar del cautiverio establecido por algún club oligárquico.

La respuesta a la pregunta b) es afirmativa. En particular, para las máquinas que ejecutan programas servidores, Linux tiene plena ventaja. Pero...eso no significa que no haya bugs, sobre todo en las aplicaciones de escritorio.  Los defectos ocurren con más frecuencia cuando los desarrolladores hacen modificaciones importantes a los programas. A cambio de ellos, existe una comunidad de usuarios muy cooperadora, que incluye expertos, que reporta rápidamente los problemas, y que aporta soluciones en muchos sitios de Internet.  Otro de los problemas que uno puede encontrar es que los desarrolladores del Kernel, empezando por el finlandés Linus Benedict Torvalds, no cuentan siempre con la información del hardware necesaria y/o suficiente para escribir los manipuladores correspondientes; uno como usuario, lo mejor que puede hacer a este respecto es asegurarse que el hardware que adquiere funcione en Linux, y para saberlo, además de la información que da el fabricante de un dispositivo, existen sitios en Internet que reportan el estado de desarrollo de muchos manipuladores de periféricos.  Finalmente, algunos proyectos mueren de inanición, o tienen un desarrollo muy lento; esto ocasiona que la respectiva aplicación deje de distribuirse junto con las actualizaciones del Sistema Operativo. A cambio, uno puede buscar aplicaciones sustitutas, o bien, ya no actualizar el sistema para continuar la ejecución de la aplicación si esta es prioritaria [3].

Las respuestas a la tercera y última pregunta, es que la coordinación se logra a través de estándares y protocolos abiertos al públicos, desarrollados por diversas organizaciones, de políticas que establecen y dan a conocer los diversos grupos de trabajo, y de la certificación del software mediante pruebas de adherencia a los estándares.

 Ejemplo:

 

POSIX es un estándar desarrollado por el Austin Group (constituido por el IEEE, The Open Group, y el comité JTC, un grupo mediador entre las organizaciones ISO e IEC.  Además del continuo desarrollo de este y otros estándares, el "The Open Group" otorga certificaciones del cumplimiento con este estándar mediante un grupo de pruebas (Test Suites) específicas para Linux [4].

En realidad, desde 1997 las revisiones del estándar POSIX las lleva a cabo el grupo Austin Group.  Sin embargo, sus especificaciones son conocidas con el nombre Single UNIX Specification (SUS), y sólo se convertirán oficialmente en POSIX  cuando sean aprobadas por la ISO.

Como ejemplo, adicional, de cumplimiento con los estándares, considere la colección de paquetes «Ncurses» [5], una programoteca que

no satisf
ace POSIX, pero si cumple con SUS .

 

 

 

 

 

 

 

 

 

1] Con frecuencia, el fabricante de los circuitos no es el mismo que el fabricante del dispositivo, por esta razón, al programador de manipuladores le interesa sobre todo el fabricante del grupo de circuitos.

2] Esta regla no parece benéfica en todos las áreas. Sobre el origen de esta frase y sus efectos  negativos en  la educación, puede verse un interesante artículo de Mario Vargas Llosa (2009): Prohibido prohibir

3] Esta opción acarrea riesgos de seguridad de los cuáles uno debe prevenirse, por ejemplo, restringiendo el acceso a la máquina desde Internet

4] La batería de pruebas para certificar que un sistema cumple con POSIX se conoce cómo PCTS ó POSIX Certification Test Suite.

5] La palabra Ncurses aparece con alguna frecuencia en la descripción de los paquetes brindada por el administrador de paquetes Synaptic; conviene saber de antemano que Ncurses es una colección de rutinas y herramientas orientas sobre todo a terminales y emuladores de terminales, las cuales aceptan el uso de ventanas, del ratón y de colores, pero tienen capacidad gráfica limitada.



[#] Wed Feb 28 2018 22:05:46 CST from "phantasticum_usuarius" <phantasticum_usuarius@pacific3.fi-p.unam.mx>

Subject: About the importance of drivers in Operating Systems

[Reply] [ReplyQuoted] [Headers] [Print]

Derechos Reservados © 2018-02-20  FLC /  Lab ITYTY / FI /UNAM

Sobre la importancia de los programas manipuladores en los Sistemas Operativos

( About the importance of drivers in Operating Systems)

 

Los programas manipuladores son muy importantes para el buen funcionamiento de una máquina. Para indicar cuánto, sea la siguiente cita:

«En Windows XP, por ejemplo, 85% de las fallas se deben a errores en los programas que manejan los dispositivos [Ref ref 1]. Como se explica en [Ref ref 4], la situación es similar tanto en Linux como en FreeBDS: la frecuencia de errores reportados en relación con los manipuladores es hasta siete veces mayor que la frecuencia de errores reportados para las componentes del núcleo de los Sistemas Operativos» [ 1 ]

Tomado de: Willem Penninckx, Jan Tobias Mühlberg, Jan Smans, Bart Jacobs, and Frank Piessens] Sound Formal Verification of

Linux’s USB BP Keyboard Driver, en NASA Formal Methods: 4th International Symposium, NFM 2012, Norfolk, VA, USA

En las máquinas de "antaño", cuando lo normal era que una empresa diseñara tanto el hardware como el software de una máquina, la misma compañía proporcionaba las rutinas para manejar sus periféricos (para abreviar: manipuladores).

En los 70s, durante la instalación del sistema, el Ingeniero del Sistema debía identificar exactamente con que hardware contaba el equipo en cuestión, para ir respondiendo un largo cuestionario e indicar detalles tales como el vector de interrupción y la dirección del primer registro del periférico, datos que él mismo identificaba o modificaba mediante jumpers ubicados en la tarjeta del controladora del periférico. En función de sus respuestas, el programa de instalación seleccionaba y configuraba los programas manipuladores (drivers).

Con el advenimiento del Sistema Windows  y su dominio en el mercado del Software para computadoras personales, también se establecieron una cantidad considerable de fabricantes de hardware.  Se necesitó de acuerdos entre los fabricantes de hardware y Microsoft, lo que dio origen a una serie de software protegido comercialmente, y muchas veces misterioso para el usuario. Parte de los programas de manipulación de periféricos, particularmente aquellos para manejar las tarjetas madre y los dispositivos de almacenamiento, venía incluida con el Sistema Operativo, y otra parte se incluía junto con el periférico adicional, por ejemplo, con la impresora. Para simplificar el trabajo de la instalación, se agregaron datos de identificación en los grupos de circuitos electrónicos (chip sets) [ 2 ]. Finalmente, por acuerdo entre fabricantes y Microsoft, muchos manipuladores (Drivers) se depositaron en la nube y desde ahí se instalan automáticamente.

Mientras lo anterior es muy cómodo para el usuario, también creó un club cerrado de compañías dominantes del mercado y un cautiverio de usuarios, muchos de los cuales imaginan que no hay otra opción que renovar periódicamente sus licencias. Aquí entra al juego el software libre. Véase, por ejemplo, la siguiente queja:

«Acerca de la modificación del CPU para favorecer a un fabricante específico de software"

Para poder competir contra algún club oligopólico, dado que éste es mayoritario en el mercado, los desarrolladores de Software Libre siguen alguna de las siguientes estrategias:

a) Establecen estándares públicos, y buscan, o surgen fabricantes que deseen fabricar equipos que los cumplan.

b) Desarrollan programas manipuladores para ejecutarse en algún S. O. "unix like", cuando el fabricante del hardware permite conocer los detalles para programar su producto.  Con esta estrategia, obviamente el Software Abierto tiene desventajas: no existirá manipulador para algunos equipos, y cuando existe, su desarrollo es posterior al manipulador Comercial para el mismo equipo.

c) Existen algunos interfaces genéricas con el SO (frontend), las cuales requieren una extensión (propiamente el driver  o backend) para distinto aparato  Tal es el caso del manipulador SANE :  para digitalizadores de documentos (scanners).

El usuario tiene entonces dos opciones: buscar equipos y periféricos que de fábrica trabajen con Linux, o esperar el desarrollo del manipulador de interés.  Por esto, existen en Internet sitios donde se listan componentes y dispositivos junto con el correspondiente estado de desarrollo del respectivo manipulador.

A continuación se citan cuatro sitios dedicados a varios tipos de programas manipuladores para Linux:

Debian GNU/Linux device driver check page    Página dedicada a los manipuladores para tarjetas PCI

linux-usb.org: USB-guide :

Desarrollo regresivo de manipuladores (adaptación de manipuladores modernos a distribuciones anteriores)

Linux Hardware Compatibility Lists & Linux Drivers :

 

1] Texto original en inglés: “In Windows XP, for example, 85% of reported failures are caused by errors in device drivers [1]. As explained in [4], the situation is similar for Linux and FreeBSD: error rates reported for device drivers are up to seven times higher than error rates stated for the core components of these Oss

2]  Con frecuencia, el fabricante de los circuitos no es el mismo que el fabricante del dispositivo, por esta razón, al programador de manipuladores le interesa sobre todo el fabricante del grupo de circuitos.

- no title specified


[#] Thu Apr 12 2018 15:55:41 CDT from Lab Proyectos Especiales

Subject: Los estándares fundamentales de GNU / Linux (Debian)

[Reply] [ReplyQuoted] [Headers] [Print]

[#] Tue Feb 27 2018 22:49:29 CST from "imaginarius" <imaginarius@pacific3.fi-p.unam.mx> to phantasticum_usuarius <phantasticum_usuarius@pacific3.fi-p.unam.mx>

 

[Reply] [ReplyQuoted] [Move] [Delete] [Headers] [Print]

 

 

Derechos Reservados © 2018-02-20 FLC/  Lab ITYTY / FI /UNAM

Los estándares fundamentales de GNU / Linux (Debian)

(About GNU / Linux major Standars)

 


Al principio, uno se sorprende de que el software libre se entregue gratis, de que el código sea abierto, y que algunas de las licencias se reduzcan prácticamente a la aplicación de la regla «prohibido prohibir [2]».  Cualquiera se pregunta por lo menos:

a) ¿De qué viven los que desarrollan software gratuito?

b) ¿Es posible que ese tipo de trabajo sea de calidad ?

c) ¿Cómo se coordina  a una enorme cantidad de voluntarios?

En respuesta a la cuestión a), se sabe que diversos grupos de trabajo piden donaciones económicas y colaboración voluntaria a los usuarios, también venden soporte, publicaciones, y a veces hasta camisetas. Pero el grueso del ingreso no viene de ahí. Es frecuente que esos grupos tengan convenios con, o apoyos de, compañías que quieren escapar del cautiverio establecido por algún club oligárquico.

La respuesta a la pregunta b) es afirmativa. En particular, para las máquinas que ejecutan programas servidores, Linux tiene plena ventaja. Pero...eso no significa que no haya bugs, sobre todo en las aplicaciones de escritorio. Los defectos ocurren con más frecuencia cuando los desarrolladores hacen modificaciones importantes a los programas. A cambio de ellos, existe una comunidad de usuarios muy cooperadora, que incluye expertos, que reporta rápidamente los problemas, y que aporta soluciones en muchos sitios de Internet.  Otro de los problemas que uno puede encontrar es que los desarrolladores del Kernel, empezando por el finlandés Linus Benedict Torvalds, no cuentan siempre con la información del hardware necesaria y/o suficiente para escribir los manipuladores correspondientes; uno como usuario, lo mejor que puede hacer a este respecto es asegurarse que el hardware que adquiere funcione en Linux, y para saberlo, además de la información que da el fabricante de un dispositivo, existen sitios en Internet que reportan el estado de desarrollo de muchosmanipuladores de periféricos.  Finalmente, algunos proyectos mueren de inanición, o tienen un desarrollo muy lento; esto ocasiona que la respectiva aplicación deje de distribuirse junto con las actualizaciones del Sistema Operativo. A cambio, uno puede buscar aplicaciones sustitutas, o bien,ya no actualizar el sistema para continuar la ejecución de la aplicación si esta es prioritaria [3].

Las respuestas a la tercera y última pregunta, es que la coordinación se logra a través de estándares y protocolos abiertos al públicos, desarrollados por diversas organizaciones, de políticas que establecen y dan a conocer los diversos grupos de trabajo, y de la certificación del software mediante pruebas de adherencia a los estándares.

 Ejemplo:

 

POSIX es un estándar desarrollado por elAustin Group (constituido por elIEEE, The Open Group,y el comité JTC, un grupo mediador entre las organizaciones ISOeIEC. Además del continuo desarrollo de este y otros estándares, el "The Open Group" otorgacertificacionesdel cumplimiento con este estándar mediante un grupo de pruebas (Test Suites) específicas para Linux [4].

En realidad, desde 1997 las revisiones del estándar POSIX las lleva a cabo el grupoAustin Group.  Sin embargo, sus especificaciones son conocidas con el nombreSingle UNIX Specification(SUS), y sólo se convertirán oficialmente en POSIX  cuando sean aprobadas por la ISO.

Como ejemplo, adicional, de cumplimiento con los estándares, considere la colección de paquetes «Ncurses»[5], una programoteca que

no satisf
ace POSIX, pero sicumple con SUS .

 

 

 

 

 

 

 

 

 

1] Con frecuencia, el fabricante de los circuitos no es el mismo que el fabricante del dispositivo, por esta razón, al programador de manipuladores le interesa sobre todo el fabricante del grupo de circuitos.

2] Esta regla no parece benéfica en todos las áreas. Sobre el origen de esta frase y sus efectos  negativos en  la educación, puede verse un interesante artículo de Mario Vargas Llosa (2009): Prohibido prohibir

3] Esta opción acarrea riesgos de seguridad de los cuáles uno debe prevenirse, por ejemplo, restringiendo el acceso a la máquina desde Internet

4]La batería de pruebas para certificar que un sistema cumple con POSIX se conoce cómo PCTS ó POSIX Certification Test Suite.

5] La palabra Ncurses aparece con alguna frecuencia en la descripción de los paquetes brindada por el administrador de paquetes Synaptic; conviene saber de antemano que Ncurses es una colección de rutinas y herramientas orientas sobre todo a terminales y emuladores de terminales, las cuales aceptan el uso de ventanas, del ratón y de colores, pero tienen capacidad gráfica limitada.



[#] Wed Feb 28 2018 22:05:46 CST from "phantasticum_usuarius" <phantasticum_usuarius@pacific3.fi-p.unam.mx>

Subject: About the importance of drivers in Operating Systems

[Reply] [ReplyQuoted] [Move] [Delete] [Headers] [Print]

Derechos Reservados © 2018-02-20 FLC/  Lab ITYTY / FI /UNAM

Sobre la importancia de los programas manipuladores en los Sistemas Operativos

( About the importance of drivers in Operating Systems)

 

Los programas manipuladores son muy importantes para el buen funcionamiento de una máquina.Para indicar cuánto, sea la siguiente cita:

«En Windows XP, por ejemplo, 85% de las fallas se deben a errores en los programas que manejan los dispositivos [Ref ref 1]. Como se explica en [Ref ref 4], la situación es similar tanto en Linux como en FreeBDS: la frecuencia de errores reportados en relación con los manipuladores es hasta siete veces mayor que la frecuencia de errores reportados para las componentes del núcleo de los Sistemas Operativos» [1]

 

Tomado de: Willem Penninckx, Jan Tobias Mühlberg, Jan Smans, Bart Jacobs, and Frank Piessens]Sound Formal Verification of

Linux’s USB BP Keyboard Driver, enNASA Formal Methods: 4th International Symposium, NFM 2012, Norfolk, VA, USA

 

En las máquinas de "antaño", cuando lo normal era que una empresa diseñara tanto el hardware como el software de una máquina, la misma compañía proporcionaba las rutinas para manejar sus periféricos (para abreviar: manipuladores).

En los 70s, durante la instalación del sistema, el Ingeniero del Sistema debía identificar exactamente con que hardware contaba el equipo en cuestión, para ir respondiendo un largo cuestionario e indicar detalles tales como el vector de interrupción y la dirección del primer registro del periférico, datos que él mismo identificaba o modificaba mediante jumpers ubicados en la tarjeta del controladora del periférico. En función de sus respuestas, el programa de instalación seleccionaba y configuraba los programas manipuladores (drivers).

Con el advenimiento del Sistema Windows y su dominio en el mercado del Software para computadoras personales, también se establecieron una cantidad considerable de fabricantes de hardware.  Se necesitó de acuerdos entre los fabricantes de hardware y Microsoft, lo que dio origen a una serie de software protegido comercialmente, y muchas veces misterioso para el usuario. Parte de los programas de manipulación de periféricos, particularmente aquellos para manejar las tarjetas madre y los dispositivos de almacenamiento, venía incluida con el Sistema Operativo, y otra parte se incluía junto con el periférico adicional, por ejemplo, con la impresora. Para simplificar el trabajo de la instalación, se agregaron datos de identificación en los grupos de circuitoselectrónicos (chip sets) [2]. Finalmente, por acuerdo entre fabricantes y Microsoft, muchos manipuladores (Drivers) se depositaron en la nube y desde ahí se instalan automáticamente.

Mientras lo anterior es muy cómodo para el usuario, también creó un club cerrado de compañías dominantes del mercado y un cautiverio de usuarios, muchos de los cuales imaginan que no hay otra opción que renovar periódicamente sus licencias.Aquí entra al juego el software libre. Véase, por ejemplo, la siguiente queja:

«Acerca de la modificación del CPU para favorecer a un fabricante específico de software"

Para poder competir contra algún club oligopólico, dado que éste es mayoritario en el mercado, los desarrolladores de Software Libre siguen alguna de las siguientes estrategias:

a) Establecen estándares públicos, y buscan, o surgen fabricantes que deseen fabricar equipos que los cumplan.

b) Desarrollan programas manipuladores para ejecutarse en algún S. O. "unix like", cuando el fabricante del hardware permite conocer los detalles para programar su producto.  Con esta estrategia, obviamente el Software Abierto tiene desventajas: no existirá manipulador para algunos equipos, y cuando existe, su desarrollo es posterior al manipulador Comercial para el mismo equipo.

c) Existen algunos interfaces genéricas con el SO (frontend),las cuales requieren una extensión (propiamente el driver  o backend) para distinto aparato  Tal es el caso del manipuladorSANE:  para digitalizadores de documentos (scanners).

El usuario tiene entonces dos opciones: buscar equipos y periféricos que de fábrica trabajen con Linux, o esperar el desarrollo del manipulador de interés.  Por esto, existen en Internet sitios donde se listan componentes y dispositivos junto con el correspondiente estado de desarrollo del respectivo manipulador.

A continuación se citan cuatro sitios dedicados a varios tipos de programas manipuladores para Linux:

 

Debian GNU/Linux device driver check page    Página dedicada a los manipuladores para tarjetas PCI

linux-usb.org: USB-guide :

Desarrollo regresivo de manipuladores (adaptación de manipuladores modernos a distribuciones anteriores)

Linux Hardware Compatibility Lists & Linux Drivers:

 

1] Texto original en inglés: “In Windows XP, for example, 85% of reported failures are caused by errors in device drivers [1]. As explained in [4], the situation is similar for Linux and FreeBSD: error rates reported for device drivers are up to seven times higher than error rates stated for the core components of these Oss

2]  Con frecuencia, el fabricante de los circuitos no es el mismo que el fabricante del dispositivo, por esta razón, al programador de manipuladores le interesa sobre todo el fabricante del grupo de circuitos.



No new messages.