Публикации по теме 'bsd'


Неблокирующий ввод / вывод
Что такое дескрипторы на самом деле? Основным строительным блоком всех операций ввода-вывода в Unix является последовательность байтов . Большинство программ работают с еще более простой абстракцией - потоком байтов или потоком ввода-вывода . Процесс ссылается на потоки ввода-вывода с помощью дескрипторов , также известных как файловые дескрипторы . Каналы, файлы, FIFO, IPC POSIX (очереди сообщений, семафоры, разделяемая память), очереди событий - все это примеры потоков..

Вопросы по теме 'bsd'

Ошибка сегмента в getaddrinfo()
Я получаю ошибку сегментации при вызове getaddrinfo и не могу понять, почему. Это происходит как на моем сервере, так и на клиенте. Некоторый код (на стороне сервера) - class TcpServer { public: TcpServer(int); ~TcpServer(); void...
1328 просмотров
schedule 25.11.2022

Проверьте, изменен ли файл, удален или расширен, используя python select.kqueue()
Привет, мне трудно понять, как использовать только классы модулей python для BSD select.kqueue и select.kevent для настройки отслеживания событий записи файлов. Я хочу, чтобы программа python реагировала всякий раз, когда текстовый файл...
1135 просмотров
schedule 14.01.2024

Карта PCI/PCIe с возможностью прямого доступа к памяти для обучения драйверов устройств
Я пытаюсь изучить DMA для драйверов устройств с устройствами PCI/PCIe, и моя платформа — linux/bsd. Я нашел довольно много простых плат PCI для обучения (например, простые платы цифрового ввода/вывода), но ни одна из них не имеет достаточно сложного...
1449 просмотров
schedule 24.02.2022

Сокеты ведут себя по-разному в BSD (Mac OS X и OpenBSD) и Linux (Ubuntu).
Сначала я написал прокси-сервер «человек посередине» на своем Mac. По сути, прокси создает сокет и ожидает соединения, а затем подключается к другому приложению. Это работает безупречно в OS X и в OpenBSD; однако при портировании прокси-сервера в...
2796 просмотров
schedule 28.05.2023

Определение размера следующей дейтаграммы UDP на платформах BSD?
В Linux я могу использовать вызов ioctl с FIONREAD , чтобы получить количество байтов для следующего пакета UDP. Это не работает в OSX, и вместо этого я должен использовать вызов getsockopt с SO_NREAD , чтобы определить количество байтов для...
169 просмотров
schedule 24.08.2022

Как установить strace на ОС DragonFly BSD?
Как установить средство отладки strace на ОС DragonFly BSD? Я только начинаю взламывать Dragonfly OS. Мне было интересно, как установить инструмент отладки strace в ОС.
270 просмотров
schedule 03.08.2023

Socket API: работа с сокетом без сокета
Здравствуйте, у меня проблема, когда я пишу сервер, используя API сокета. Я всегда получаю эту ошибку: «Операция сокета без сокета» struct sockaddr_in addr; int port = 10000; int sd; memset((char *) &addr,0, sizeof(addr)); addr.sin_family =...
555 просмотров
schedule 17.04.2024

make[1]: ошибка выполнения exec(f77) (нет такого файла или каталога) на DragonFly BSD
Я получаю эту ошибку при попытке скомпилировать html-xml-utils-6.9 на DragonFly BSD. Забавно то, что при выполнении grep -r f77 в исходном каталоге результат пуст. Таким образом, такой опции нет в сконструированном Makefile после ./configure ....
732 просмотров

Добавление дополнительных пробелов в стек
Я изучал основы ASM на Assembly "hello, world" для OS X , когда я увидел это: sub esp, 4 ; OS X (and BSD) system calls needs "extra space" on stack Мне интересно, предназначено ли пространство для локальных переменных или...
17 просмотров
schedule 10.02.2023

Написание модуля ядра FreeBSD, который обрабатывает произвольное прерывание и вывод на устройство
Я хотел бы написать модуль ядра FreeBSD, который мог бы принимать некоторые произвольные прерывания и при получении этих прерываний выводить некоторые данные на произвольное устройство. В настоящее время я столкнулся с несколькими проблемами:...
304 просмотров
schedule 20.12.2022

BSD sed, Как вставить строку с переменными
Я использую MacOSX для создания этого bash-скрипта, скрипт проверяет другие файлы и сравнивает содержимое друг с другом, что создает увеличивающийся счетчик. Функции, использующие счетчики, должны выполняться первыми, чтобы переменные содержали...
272 просмотров
schedule 01.09.2022

Grep с диапазоном символов регулярного выражения, который включает символ NULL
Когда я включаю символ NULL (\x00) в диапазон символов регулярного выражения в BSD grep, результат оказывается неожиданным: нет совпадений символов. Почему это происходит? Вот пример: $ echo 'ABCabc<>/ă' | grep -o [$'\x00'-$'\x7f']...
100 просмотров
schedule 01.08.2023

host_processor_sets возвращает KERN_INVALID_ARGUMENT
Я запускаю приведенный ниже код в Xcode, а также выбрал root в схеме запуска для приведенного ниже кода. fileprivate static let machHost = mach_host_self() var psets: processor_set_name_array_t? = nil var pcnt: mach_msg_type_number_t = 0...
36 просмотров
schedule 13.10.2022