Публикации по теме 'systems-programming'


Обновление для Zig-программистов и дилетантов
Вещи, которые легко запомнить при повторном посещении языка программирования Zig Около двух лет назад я попробовал язык программирования Zig и написал о нем несколько статей. Сегодня я снова запускаю старый проект Zig и записываю свой опыт возвращения в Zig. На мой взгляд, это полезный тест, потому что он помогает выявить вещи, которые могут сбить с толку новичков, и помогает оценить живучесть языка. Любой язык, к которому вы можете вернуться после длительного перерыва с минимальными..

Struct Padding в C: обзор, примеры, визуальные эффекты
struct в C — это составной тип данных, который позволяет группировать несколько переменных вместе и хранить их в одном блоке памяти. Если вы знакомы с Java, они немного похожи на определения классов. На рисунке выше структура используется для представления типа «студент», который имеет имя , возраст , gpa и is_cs_major логическое значение, связанное с тем, являются ли они основными cs. Также обратите внимание, что…

Платформы приложений (JavaScript) и принципы, связанные с программным обеспечением
Структуры приложений (JavaScript) и принципы, связанные с программным обеспечением Существуют определенные принципы, которым следует следовать при разработке программного обеспечения. Соблюдая их, разработчики могут добиться максимального успеха в создании успешного и эффективного программного обеспечения. Эти принципы таковы, · S.O.L.I.D · Методические рекомендации · Практика важна. Теперь мы можем описать каждый из этих принципов следующим образом. S.O.L.I.D...

Системное программирование
Демистификация с помощью исследования без жаргона. Часто мы слышим, изучаем и даже используем термины или фразы, которые нам не до конца понятны. Я считаю, что это довольно распространенное явление в сообществе разработчиков программного обеспечения, будь то веб-API RESTful, методология Agile, машинное обучение или какой-либо другой термин. Это не обязательно плохо, но важно понимать, когда вы действительно что-то знаете и когда просто знаете название. Для меня системное..

Вопросы по теме 'systems-programming'

Низкоуровневое системное программирование на C++.
Я уже некоторое время использую C++ и начал интересоваться системным программированием более низкого уровня, таким как драйверы и прочее. Даже какая-то примитивная операционная система может быть очень интересным проектом! Я понятия не имею, с...
19017 просмотров
schedule 26.08.2022

Мониторинг каталога с помощью API ReadDirectoryChangesW
Я пытаюсь отслеживать каталог e:\test с помощью ReadDirectoryChangesW API. Мой код: #define UNICODE #define WIN32_WINNT 0x0500 #include "stdafx.h" #include <stdio.h> #include <windows.h> HANDLE hDir; int _tmain(int argc,...
3894 просмотров

Эквивалент RUSAGE_THREAD darwin?
Мне нужно измерить использование процессора отдельными потоками на Дарвине. В Linux я использую getrusage(RUSAGE_THREAD, ...), но он недоступен в Darwin.
1022 просмотров

документация glibc и порядок следования байтов
В документации glibc по статусу завершения процесса указано, что макрос WEXITSTATUS возвращает младшие 8 байтов состояния завершения. Макрос: int WEXITSTATUS (статус int) Если WIFEXITED имеет значение true для состояния, этот макрос...
497 просмотров

Хотите узнать о внутреннем устройстве буфера обмена Windows
Я заинтересован в изучении внутренностей системы Windows и в том, как все работает. Я склоняюсь к изучению системного программирования на Windows. В этом контексте мне любопытно узнать несколько вещей о внутреннем функционировании буфера обмена...
1049 просмотров

Доступ к беспроводному интерфейсу (802.11) на уровне MAC (Linux)
Я провел последние дни, читая страницы руководства, документацию и все остальное, что опубликовал Google, но я полагаю, что сейчас я сбит с толку еще больше, чем вначале. Вот что я хочу сделать: я хочу отправлять и получать пакеты данных с помощью...
9997 просмотров

Как я могу запустить список команд параллельно?
У меня есть файл, содержащий командные строки, которые я хочу запустить. Этот файл содержит около 2000 строк. У меня есть 8 ядер. Можно ли разобрать файл и запустить 8 процессов, а затем выполнить еще один из файла всякий раз, когда завершается...
19728 просмотров

Написание C Shell с комбинированными каналами и перенаправлением
Я пытаюсь реализовать мини-оболочку на C, которая примет любую комбинацию ‹,>,>>,|,&. У меня есть это там, где он читает команды и выполняет перенаправление файлов и т. Д., Однако я не могу найти в Google хороший учебник о том, как запрограммировать...
3125 просмотров
schedule 18.04.2024

Скрыть съемный диск в проводнике MS Windows?
Как я могу скрыть съемный диск, например. флэш-память от пользователя в проводнике MS Windows ? Я хочу скрыть съемный диск от пользователя, а затем выполнить с ним какую-либо операцию, например. удалите некоторые файлы или прочитайте некоторые файлы...
416 просмотров
schedule 09.05.2023

Описание файла DTS - псевдонимы
Я пытаюсь понять следующий фрагмент из файла DTS. /dts-v1/; / { model = "MPC8313ERDB"; compatible = "MPC8313ERDB", "MPC831xRDB", "MPC83xxRDB"; #address-cells = <1>; #size-cells = <1>; aliases { ethernet0 =...
6485 просмотров

Как поймать SIGINT и проигнорировать его в дочернем процессе?
У меня есть основная программа, которая запускает программу из аргументов командной строки. Программа командной строки разветвляется и запускается в дочернем процессе. Когда SIGINT отправляется, я хочу поймать его и попросить пользователя...
5018 просмотров
schedule 30.03.2023

Как выполняется настоящий системный вызов?
У меня есть вопрос о том, как выполняется фактический системный вызов. Я знаю, что магия системного вызова (например, чтение и т. д.) реализована в библиотеке C, но не понимаю точного механизма. Мои основные проблемы Процедура библиотеки c...
139 просмотров

Классификация подключенных USB-устройств
Я пишу приложение С#, которое отслеживает и регистрирует различные USB-устройства, подключенные к системе Windows. Используя API установки Windows, я могу получить такие сведения, как VID, PID, идентификатор оборудования и понятное имя. Я хотел...
371 просмотров

Как обрабатывать память, полученную с помощью module_param при написании модуля ядра Linux?
При написании модуля ядра для Linux module_param и его варианты могут принимать строку в качестве параметра модуля, а пространство памяти, необходимое для этой строки, выделяется за кулисами без необходимости делать что-либо явно. Мой вопрос в том,...
191 просмотров

Как правильно реализовать функции c malloc/realloc?
Я пишу свою собственную ОС, и мне пришлось реализовать свои собственные функции malloc realloc. Однако я думаю, что то, что я написал, может быть небезопасным, а также может вызвать утечку памяти, потому что переменная на самом деле не уничтожается,...
625 просмотров

Applescript в OS X (macOS) и C низкого уровня (альтернатива Objective-C
Привет, я знаю, что могу использовать что-то вроде Applescript для управления различными аспектами операционных систем, такими как ввод с клавиатуры: osascript -e 'tell application "System Events" to key code 45' или щелчки мыши:...
372 просмотров

Я хочу получить время (ctime(..)?) файла на языке хоста
У меня есть такая функция: void ft_display_time(struct timespec ttime) { char *time_long; time_long = ctime(&ttime.tv_sec); if (time_long) { ft_printf("%.3s ", time_long + 4); ft_printf("%.2s...
49 просмотров
schedule 27.04.2023

Есть ли альтернатива для ioctl () в Linux для взаимодействия с дисками nvme
Я работаю над инструментом тестирования для nvme-cli (написанным на c и может работать в Linux). Для проверки SSD мы на самом деле ищем отправку команд ввода-вывода в конкретную очередь отправки (пара очередей ввода-вывода). Нам это было нужно,...
633 просмотров

Почему следующий код C пропускает системный вызов read() для выполнения следующего системного вызова write()?
Мой вопрос касается системного программирования Linux, в частности, API чтения и записи. Я пишу программу, которая копирует оболочку. Он принимает строковый аргумент и размечает его пробелом. В зависимости от команды первого токена он выполняет...
129 просмотров

Программно получить размер строки кеша на Android
Как мне узнать размер строки кеша на ARM Android? Это эквивалент следующей странице, но специально для Android: Получить размер строки кэша программным способом? Ответы на этой странице и другие известные мне способы не работают на Android:...
416 просмотров
schedule 20.05.2024