Electronics, Linux system development, Radio & antennas, Radioastronomy, Software

Satellite LNB controller with GUI interface

Satellite LNB are quite cheap and easy to get devices. There are different models for different bands (C, Ku, and Ka) with different characteristics like SNR, noise figure, etc. Typically those devices are used with TV Set-top boxes. More interesting is that LNB can be easily connected to an SDR receiver. LNB is a simple frequency down-converter with an output…

Continue Reading

Linux kernel, Software

Linux block device driver

My article about character devices is quite popular, so I decided to write something about another big class of devices in Linux – block devices. This type of device is used to access various storage hardware types – hard disks, SSD, etc. Here I want to describe blk-mq based devices in modern (>= 5.0) Linux kernels and a previous type…

Continue Reading

Linux kernel, Linux system development, Software

C++ in Linux kernel

Linux kernel is written in C (and in Assembly in platform-specific portions) language. C language is the only language allowed to write kernel modules. And there is no problem in most cases. But sometimes, some stranger things may be required. Let’s see how to use C++ for the Linux kernel modules.