SGCG

…esto no es un subtítulo…

Ir a: contenido categorías calendario archivo suscripción

Volver arriba

Últimos artículos

Práctica con un secuenciador (7): partitura

2026-05-28

Recientemente, compuse un tema musical para practicar con un secuenciador. Hice varias versiones con instrumentos de diferente tipo. Hoy comparto la partitura y su reproducción mediante el propio editor de partituras: Pop 1 (versión Musescore).


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/28/practica-con-un-secuenciador-7-partitura/

Práctica con un secuenciador (6): muestreador de juguete

2026-05-24

Recientemente, compuse un tema musical para practicar con un secuenciador. Hice varias versiones con instrumentos de diferente tipo. Hoy toca una versión secuenciada con un muestreador de juguete: Pop 1 (versión de muestreador de juguete).

El muestreador solamente tiene cuatro voces y su secuenciador guarda un máximo de dieciséis compases diferentes, así que hubo que hacer varias tomas. Las muestras de las voces melódicas están tomadas de un clásico piano eléctrico FM y las muestras de las voces de percusión están tomadas de una caja de ritmos 808.


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/24/practica-con-un-secuenciador-6-muestreador-de-juguete/

Práctica con un secuenciador (5): DAW

2026-05-21

Recientemente, compuse un tema musical para practicar con un secuenciador. Hice varias versiones con instrumentos dedicados. Hoy toca una versión secuenciada directamente en un ordenador con un programa DAW: Pop 1 (versión DAW).

El DAW, Ardour, es mucho más sofisticado que los secuenciadores de hardware que había usado en las anteriores versiones.


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/21/practica-con-un-secuenciador-5-daw/

Práctica con un secuenciador (4): secuenciador dedicado

2026-05-20

Recientemente, compuse un tema musical para practicar con un secuenciador. Mientras que anteriormente usé instrumentos con sintetizadores y muestreadores, hoy presento una versión preparada con un secuenciador dedicado que mueve varios sintetizadores externos: Pop 1 (versión de secuenciador dedicado y sintetizadores externos).

El sonido lo generan cinco módulos compactos movidos mediante MIDI por el potente secuenciador: una caja de ritmos y cuatro sintetizadores.


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/20/practica-con-un-secuenciador-4-secuenciador-dedicado/

Práctica con un secuenciador (3): grabadora de cuatro pistas

2026-05-19

Recientemente, compuse un tema musical para practicar con un secuenciador. Hoy presento una versión preparada con un instrumento diferente que cuenta con un secuenciador muy rudimentarios, pero que cuenta con una grabadora digital de cuatro pistas: Pop 1 (versión de grabadora de cuatro pistas).

El secuenciador de este instrumento es muy limitado. La forma de trabajar consiste en bien reproducir patrones cortos creados con el secuenciador, bien tocar en vivo, y grabar el resultado en las pistas de audio, que luego es posible recortar, copiar y combinar como si se tratara de una grabadora de cinta de varias pistas a la vieja usanza.


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/19/practica-con-un-secuenciador-3-grabadora-de-cuatro-pistas/

Práctica con un secuenciador (2): simulacro de Mega Drive

2026-05-18

Recientemente, compuse un tema musical para practicar con un secuenciador. Hoy presento una versión secuenciada con un instrumento diferente que emula el sonido de una videoconsola Sega Mega Drive: Pop 1 (versión Mega Drive).

El secuenciador de este otro instrumento es más sencillo que el que usé originalmente, pero tiene su encanto. En cuanto a la instrumentación, uso cinco voces FM (una para la melodía principal, tres para los acordes y una para el bajo), una voz PCM (el bombo, la caja y el charles), una voz de onda cuadrada para el ostinato alto y una voz de ruido para el crash. En una videoconsola Mega Drive, todavía sobrarían dos voces de onda cuadrada.


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/18/practica-con-un-secuenciador-2-simulacro-de-mega-drive/

Práctica con un secuenciador (1)

2026-05-17

Produje esta pieza con un secuenciador para practicar: Pop 1.

Es una pieza un poco maldita musicalmente, pero me ha servido para explorar algunas funciones del secuenciador.


Categorías: Música

Permalink: https://sgcg.es/articulos/2026/05/17/practica-con-un-secuenciador-1/

Las paradas solo para mujeres de los autobuses nocturnos interurbanos madrileños no son cosa de Irene Montero

2026-05-14

Iba yo montado en un autobús interurbano nocturno cuando un pasajero quiso apearse en una parada de uso exclusivo para mujeres. El conductor le dijo que no podía bajarse por el siguiente motivo:

Esta parada es solo para mujeres.

A esto, el pasajero preguntó:

¿Y por qué es solo para mujeres?

El conductor respondió con la siguiente incorrección:

Eso pregúnteselo a Irene Montero, que hizo la ley.

Pero resulta que las paradas para mujeres de las líneas nocturnas de autobuses interurbanos de la Comunidad de Madrid no son obra de Irene Montero, de Podemos. Son una iniciativa de 2020 de la propia Comunidad de Madrid, gobernada en coalición por el Partido Popular y Ciudadanos, y del Consorcio Regional de Transportes de Madrid.

Tras una experiencia piloto de varios meses, el 30 de octubre de 2020, la medida se estableció para todas las líneas de autobuses nocturnos interurbanos. Presidía la Comunidad de Madrid Isabel Díaz Ayuso, del Partido Popular, mientras que el consejero de Transportes, Movilidad e Infraestructuras era Ángel Garrido, de Ciudadanos, y el consejero de Políticas Sociales, Familias, Igualdad y Natalidad era Javier Luengo, también de Ciudadanos, quien apenas llevaba unas semanas reemplazando a su compañero de partido Alberto Reyero, quien había dimitido por razones éticas relacionadas con la respuesta de la Comunidad de Madrid a la crisis de salud pública de la COVID-19.


Categorías: Madrid

Permalink: https://sgcg.es/articulos/2026/05/14/las-paradas-solo-para-mujeres-de-los-autobuses-nocturnos-interurbanos-madrilenos-no-son-cosa-de-irene-montero/

Buscando la función de inicio de un controlador de Linux para mitigar una vulnerabilidad

2026-05-09

Nos topamos con una vulnerabilidad del núcleo Linux que permitía el escalado de privilegios y que afectaba a varios equipos. La información sobre la vulnerabilidad que podíamos encontrar en línea indicaba que la vulnerabilidad estaba en el controlador de RxRPC, un protocolo que se usa el sistema de ficheros AFS, algo que no utilizamos. A falta de algo mejor, siempre podíamos evitar la carga del controlador problemático, llamado rxrpc.

Documentación en línea insuficiente

En el momento en el que nos llegó la noticia de la vulnerabilidad, la documentación en línea sugería evitar que modprobe cargara el módulo rxrpc, pero nos encontramos con que, en el caso teníamos entre manos, el controlador no estaba en forma de módulo, sino ya incluido en el núcleo («built-in»). Había que idear otra solución.

Nuestra solución sobre el papel

Por fortuna, es posible impedir el arranque de un controlador independientemente de si va en forma de módulo o está directamente incluido («built-in») en el núcleo. Cada controlador tiene una función de inicio que sirve para cargarlo y basta con pasar al núcleo la lista de funciones de inicio cuya ejecución prohibimos con el argumento initcall_blacklist. Por ejemplo, si quisiéramos prohibir la ejecución de las funciones gato_init y perro_init, que servirían para el inicio de los controladores gato y perro, podríamos incluir lo siguiente entre los argumentos que el cargador de arranque le pasa al núcleo: initcall_blacklist=gato_init,perro_init.

Solamente teníamos que encontrar cuál es la función de inicio del controlador rxrpc. Por supuesto, no es rxrpc_init.

Buscando la función de inicio

Podríamos haber buscado en montañas de documentación cuál es la función de inicio del controlador rxrpc, pero decidimos ir a lo bruto y mirar el código fuente del núcleo Linux. Dicho y hecho: descargamos de kernel.org el tarball correspondiente y nos arremangamos.

Lo que sabíamos era que el controlador rxrpc tiene que aparecer mencionado en algún Makefile de forma similar a la siguiente:

obj-$(CONFIG_EL_NOMBRE_DE_ALGUNA_OPCIÓN) += rxrpc.o

Efectivamente, en net/rxrpc/Makefile estaba la siguiente línea:

obj-$(CONFIG_AF_RXRPC) += rxrpc.o

También había una variable, rxrpc-y, con todos los objetos correspondientes a rxrpc: af_rxrpc.o, call_accept.o, call_event.o…, correspondientes al código fuente af_rxrpc.c, call_accept.c, call_event.c… En alguno tenía que haber una línea similar a la siguiente:

module_init(FUNCIÓN_DE_INICIO_QUE_HAY_QUE_BLOQUEAR)

El tesoro estaba justo en el primer fichero, af_rxrpc.c:

module_init(af_rxrpc_init);

Así que la función a bloquear era af_rxrpc_init.

También pudimos verificar que estábamos mirando donde corresponde. Para empezar, en af_rxrpc.c estaba lo siguiente:

MODULE_DESCRIPTION("RxRPC network protocol");

Nuestra solución en la práctica

Además de rxrpc, también había problemas con esp4 y esp6, que tienen que ver con IPsec, pero que no usábamos en las máquinas afectadas. Acabamos pasándole el siguiente argumento al núcleo durante el arranque:

initcall_blacklist=esp4_init,esp6_init,af_rxrpc_init

Con esto, pudimos comprobar que ya no éramos vulnerables y podíamos esperar con calma una actualización del núcleo que corrigiera el problema de forma definitiva.


Categorías: Informática

Permalink: https://sgcg.es/articulos/2026/05/09/buscando-la-funcion-de-inicio-de-un-controlador-de-linux-para-mitigar-una-vulnerabilidad/

El botón azul y el botón rojo (2)

2026-04-30

En el anterior artículo hablamos sobre este popular experimento mental ético que acaba en una pregunta polarizadora:

Hay dos botones: uno rojo y otro azul. Todos y cada uno de los seres humanos han de pulsar en secreto uno de los dos botones. Si la mayor parte de la humanidad pulsa el botón azul, todo el mundo se salva; si la mayor parte de la humanidad pulsa el botón rojo, las personas que pulsaron ese botón se salvan, pero las que pulsaron el botón azul mueren de inmediato. ¿Qué botón pulsas?

La opción del botón azul es defendible por consideraciones éticas: como es improbable que absolutamente todo el mundo pulse el botón rojo, pulsar el botón azul es la mejor apuesta para evitar una matanza.

He visto un replanteamiento del problema que hace que el botón rojo (o lo que equivale al botón rojo) sea una opción más atractiva:

Hay una batidora gigante que hará picadillo a quien se arroje a sus cuchillas, pero que tiene un error de diseño que hace que, si se arroja más de la mitad de la población mundial, se estropea inmediatamente y no hace daño a nadie (ni siquiera a quienes se arrojaron inicialmente). ¿Te arrojas a las cuchillas de la batidora?

Arrojarse a las cuchillas de la batidora es equivalente a pulsar el botón azul y no hacer nada es equivalente a pulsar el botón rojo, pero es probable que algún incauto lector favorable al botón azul ahora tenga reticencia a saltar a las cuchillas de la batidora. La imagen de unas cuchillas capaces de destrozar el cuerpo humano rápidamente provoca una reación visceral ajena a la amenaza abstracta de unos botones. Otros, en cambio, están tan dispuestos a saltar al peligro coo lo están a apretar el botón azul con el objetivo de evitar la muerte de sus congéneres.


Categorías: Miscelánea

Permalink: https://sgcg.es/articulos/2026/04/30/el-boton-azul-y-el-boton-rojo-2/