0
ответов

Как установить glib 1.2 на новую систему?

Я пытаюсь установить glib 1.2 на Ubiuntu 21.04, чтобы запустить старую программу c После успешного./configure --build=i386 -linux -gnu --host=i386 -linux -gnu Я пытаюсь сделать с ошибкой :сделать проверку Делаем заезд. сделать[1]...
18.07.2021
0
ответов

Как мне напечатать только основную функцию из исходного файла C?

Например, cat foo.c напечатает весь файл, cat foo.c | grep main напечатает строку, в которой определена основная функция. Итак, как мне напечатать всю основную функцию? (Я на Ubuntu)
12.07.2021
0
ответов

PAM не может открыть dlopen (sensepam.so ):/lib/security/sensepam.so :неопределенный символ :OPENSSL _init _crypto

Я пишу модуль аутентификации linux pam с программированием на C под Ubuntu. Моя идея заключается в том, чтобы при входе в систему вводились имя пользователя и пароль, которые сравниваются с сохраненными именем пользователя и паролем веб-сервера, если они.
05.07.2021
0
ответов

__ИСПОЛЬЗОВАНИЕ _Код POSIX и VS в дистрибутиве WSL

Я изучаю C и обычно использую VS Code в Ubuntu. Для удобства я пытаюсь перенести свои учебные материалы на Windows, где происходит много других моих работ, поэтому я установил WSL 2 и его...
02.07.2021
0
ответов

Как синхронизировать 2 файловых дескриптора с одним и тем же файлом, один для чтения, другой для записи

У меня есть следующий код :ФАЙЛ *файл = fopen ("testfile.txt", "r+" ); int fdfile = open ("testfile.txt", O _RDONLY | O _SYNC ); const char word[] = "запись в файл...
06.05.2021
0
ответов

Что происходит, когда два процесса прослушивают один и тот же [файловый] сокет Berkeley/Unix?

Что произойдет, если я настрою два процесса для прослушивания одного и того же сокета Беркли? Сообщения перенаправляются на оба? Ни один? Один из двух? Если да, то как? Конкретно, я могу запустить два процесса gunicorn с помощью...
12.03.2021
0
ответов

make:***Нет правила для создания цели.... Stop

Мне не удалось скомпилировать приведенное ниже программное обеспечение, но возникла ошибка. wget -с https://sourceforge.net/projects/r8s/files/r8s1.81.tar.gzсмола xvfz r8s1.81.tar.gz cd r8s1.81/src make -f Makefile.linux...
23.02.2021
0
ответов

Как «скрытая _энтропия» изменяет функции ядра Linux?

Итак, в ядре Linux у нас есть следующая сигнатура метода функции в /kernel/fork.c :статическая __латентная _энтропия struct task _struct *copy _process (struct pid *pid,...
20.02.2021
0
ответов

Как получить фактический IP-адрес клиента, используя C в системах Linux вместо адреса локального хоста

Я пытаюсь прочитать IP-адрес в системе Ubuntu, используя код C #включить #включить #включить #включить #включить #включить &...
19.02.2021
0
ответов

Ошибка файла заголовка uaccess.h в наборе функций _fs в процессе компиляции LKM

Я пытался скомпилировать свой модуль ядра Linux, и в процессе компиляции с помощью gcc я получил эту ошибку :./arch/x86/include/asm/uaccess.h :В функции «установить _fs» :./arch/x86/include/asm/uaccess.h :32 :29 :...
30.12.2020
0
ответов

Отдельная блокировка -Доступы ввода-вывода к файлу согласованы во время выполнения без явной синхронизации в Linux

Я пытаюсь выяснить, как часто на самом деле нужно запускать операцию sync или fsync в сценариях, где потеря мощности параллелизма на самом деле не является проблемой. Я ищу любую гарантию ядра Linux...
01.12.2020
0
ответов

Как передать содержимое файла через именованный канал, а затем скопировать его в другой канал?

Я написал 2 программы, которые обычно 1. создают именованный канал (сервер )и 2. передают строку из оболочки в серверную часть. Я понимаю, как передать строку из терминала в серверную часть...
10.11.2020
0
ответов

Компиляция 2 файлов c в одну программу и отказ в разрешении

Моя миссия состоит в том, чтобы скомпилировать 2 файла c в одну исполняемую программу. Цель этой программы - при вызове из терминала, за которым следуют 2 числа, вывод должен отображать сумму этих 2...
19.10.2020
0
ответов

Как получить доступ/установить другие переменные среды пользователя после setregid ()и setreuid ()в C

У меня есть привилегированная программа на C, которая выполняется стандартным пользователем (, скажем, stduser ), и при выполнении переключается на системного пользователя (, скажем, sysuser )следующим образом. По сути, я пытаюсь сделать что-то похожее на
14.10.2020
0
ответов

Как копирование -на -запись работает с чтением -только виртуальных страниц в функции mmap?

Я новичок в C и Linux, просто вопрос по использованию функции mmap, прототип функции mmap void *mmap (void *start, size _t length, int prot, int flags, int fd, off _t offset ); и я увидел...
12.10.2020
0
ответов

Компиляция раннего C с объявлением аргументов под именем функции

Я нашел некоторые исходные коды раннего C, которые я написал, когда начинал C, в 1987 году. C написан с объявлениями такого рода :myFunction (c, v )символ с; на телевидении; {... } А интересно, есть ли...
10.10.2020
0
ответов

как растет указатель brk после вызова malloc

Я новичок в Linux и C, просто хочу спросить, как увеличивается указатель brk после вызова malloc. Мы знаем, что ядро ​​поддерживает указатель brk, указывающий на вершину кучи. допустим нет в наличии...
23.09.2020
0
ответов

Для файлового дескриптора каталога dfd можно ли предотвратить перемещение вверх, как в openat (dfd, "..",... )?

У меня есть пользовательский $service с каталогом /srv/$service/subdir. /srv/$service имеет режим 0700, т.е. доступен только $service. Этот пользователь может открыть файловый дескриптор каталога в …/subdir или любой...
14.09.2020
0
ответов

Что означает «proc» в «sigprocmask»?

Я новичок в Linux и сигналах, извините, если мой вопрос звучит глупо, мы знаем, что приложения могут явно блокировать и разблокировать выбранные сигналы с помощью функции sigprocmask, но что означает 'proc'...
13.09.2020
0
ответов

Как мы можем выполнить арифметическую операцию над регистром, используя GDB?

Я хочу добавить бит -flip fault в работающую программу. Для этой цели я использую gdb для вставки точки останова в целевую программу, а затем переключаю один бит в случайно выбранном -регистре....
03.07.2020
0
ответов

Настройка DWM (Tiling Window Manager)

Я пытаюсь настроить DWM, я могу успешно установить несколько патчей, но есть пара вещей, которые я не могу понять, используя это на ноутбуке, поэтому я хочу привязать свой громкость, яркость, клавиши паузы воспроизведения...
03.06.2020
0
ответов

Программное обеспечение NCURSES работает в lxterminal, но не работает в родном терминале Linux

Я написал «сложную» программу на C, используя библиотеку ncurses. Он "правильно" работает в сеансе терминала lxterminal или gnome -; но не запускается в сеансе «собственного терминала Linux» без запуска X (получено...
20.05.2020
0
ответов

Не удается найти исходный код некоторых «ассемблерных», «сгенерированных» заголовочных файлов в ядре Linux?

Итак, я пишу модуль, работающий в пространстве ядра. Мой код правильно компилируется и работает правильно. Дело в том, что есть какие-то заголовочные файлы, которые я нигде не нашел. Это не...
09.05.2020
0
ответов

Как установить специфичные для компилятора стандартные заголовки #include paths?

Как разумно указать двум компиляторам искать свои заголовки #include? Работая в стандартной системе Linux 86x64, моим стандартным компилятором является gcc (в настоящее время v9.3). Теперь я хотел бы скомпилировать кое-что...
17.04.2020
0
ответов

Как информация терминала (например, размер окна) отправляется в программу Linux?

Все, что я знаю, это то, что файловый дескриптор процесса 0/1 по умолчанию установлен на stdin/stdout. Но как такие программы, как vi, узнают о размере окна, особенно когда я могу свободно изменять размер окна на рабочем столе...
16.04.2020
0
ответов

Требует ли fstat доступ к диску в Linux/ext4?

Ядро Linux 5.3 Рассмотрим системный вызов fstat, определенный как int fstat(int fd, struct stat *statbuf);. Требуется ли доступ к диску для системного вызова fstat на ext4? Я провел некоторое исследование, связанное с этим, и выяснил...
03.03.2020
0
ответов

Все ли программы на C должны загружать библиотеку?

С помощью такой программы, как int main() { вернуть 0; } и вы статически компонуете, будет ли какая-то библиотека в вашей системе компоноваться с окончательным бинарным файлом. и вы динамически компонуете, будет ли загружаться библиотека, когда она '..
13.12.2019
0
ответов

Почему приведенный ниже код не может разблокировать сигнал SIGINT

Я пробую свои силы в Linux Signals. Где я создал сценарий, упомянутый ниже: сначала заблокируйте все сигналы SIGINT, используя sigprocmask(). Если отправитель отправляет сигнал SIGUSR1, то разблокируйте SIGINT для...
03.12.2019
0
ответов

socket bind() errno 22 - нет сокетов с ожиданием времени

Я новичок в C и Linux, и я попытался настроить сервер сокетов TCP для обмена данными с C-кодом, который я скомпилировал и выполнил в Ubuntu. Система. Из учебника я скопировал следующий код (см. ...
23.10.2019
0
ответов

Почему блокировка read() на pty возвращается, когда процесс на другом конце умирает?

Когда подчиненная сторона pty не открыта, strace для процесса, который выполняет чтение(master_fd, &byte, 1);, показывает следующее: read(3, Итак, когда никто не подключен к подчиненной стороне pty, чтение () ждет ...
30.08.2019