Abstract
The success of a hardware platform is mainly determined by the software available for it. That is why the problem of enlarging the number of applications launched on the «Elbrus» platform is very acute. One of its possible solutions is the usage of binary compilation technology. The work of many modern applications is somehow related to sound processing. One of the most popular modern libraries for working with sound devices in Linux operating systems is the ALSA library. Its functionality is based on the set of ioctl system call commands. They were not supported in the x86→«Elbrus» binary compiler until recently. Therefore, occurred the issue of implementing support for ALSA-ioctl commands in binary compiler. In order to solve this problem, it was necessary to study the Linux kernel implementation of this technology. The gained knowledge was used to develop proprietary tools for the binary compiler making it possible to use the ALSA in applications translated under the «Elbrus» architecture.
Highlights
Support for working with the ALSA sound subsystem in a binary compiler of application level x86→«Elbrus»
Успешность аппаратной платформы во многом определяется набором доступного на ней программного обеспечения
The success of a hardware platform is mainly determined by the software available for it
Summary
F. Support for working with the ALSA sound subsystem in a binary compiler of application level x86→«Elbrus». Становится актуальной возможность запуска приложения, осуществляющего работу со звуком, на платформе «Эльбрус» при помощи бинарного компилятора приложений. Бинарный компилятор уровня приложений x86→«Эльбрус» является приложением ОС «Эльбрус» (Linux, портированный под «Эльбрус») и позволяет запускать пользовательские приложения в x86-кодах, функционирующие на исходной платформе под управлением ОС семейства Linux. Используемых x86-приложением при его запуске через бинарный компилятор, от адресов, используемых бинарным компилятором, в архитектуре «Эльбрус» введено два виртуальных пространства: первичное – виртуальное пространство нативных приложений – и специальное вторичное, используемое бинарными компиляторами. Существование вторичного пространства делает невозможным изменение x86-приложением данных компилятора приложений, но оставляет возможность обращаться к памяти x86-приложения как бинарному компилятору, так и ядру ОС. Код команды составляется в результате работы макроса, который принимает на вход все заявленные составляющие
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.