C++ chat 0. Простые вопросы, лабы и о IDE — в чат новичков @supapro 1. No Ads, offtop, flood 2. Полные правила тут https://t.me/ProCxx/259155 Объявления о вакансиях,эвентах - в лс @AlexFails или @MasterZiV канал вакансий https://t.me/ProCxxJobs
т.е. когда ядерный модуль попробует прочитать байт с моей страницы, куда-то выскочит исключение?
Читать полностью…Всё ещё недостаточно информации. Какая система например? Винда или лоникс (или может быть вообще мак)? Какая архитектура, ну и так далее. Ну и главное, какую конкретно проблему вы пытаетесь решить, для чего вам это?
Читать полностью…А насколько легко это программным путём в Си реализовать?)
Читать полностью…PAGE_GUARD ставите на страницу, ловите обработчиком исключений.
Читать полностью…да неужели? https://devblogs.microsoft.com/cppblog/data-breakpoints-15-8-update/
Читать полностью…как раз из-за правила копи элижн оно ничего не должно делать, но семантически тут создание строки и копирование (мув) строки
Читать полностью…Даже если это "каст", он всё равно требует аллокации участка памяти для объекта, поэтому рво всё равно актуально. Суть ведь этих оптимизаций больше в передаче владения куском памяти, а продление/изменение лайфмтайма хоть и важно, но вторично.
Читать полностью…Ну нет в вашем примере rvo в принципе, потому что вызова конструктора и не было, было два useless-cast
Читать полностью…вообще ничего не выводит. А wprintf выводит знаки вопроса вместо русских символов
Читать полностью…Добрый день. Обрабатываю событие нажатия кнопки на клавиатуре. Всё хорошо работает, но выводится почему-то не символ, а его код. Пробовал разные способы явного приведения типов, но они тоже не сработали. Как это можно исправить?
#include <iostream>Читать полностью…
#include <string>
#include <windows.h>
#include <conio.h>
int main() {
SetConsoleCP(65001);
SetConsoleOutputCP(65001);
SetConsoleTitleW(L"First windows.h program!");
HANDLE hInput = GetStdHandle(STD_INPUT_HANDLE); // Дескриптор ввода консоли
INPUT_RECORD inputRecord; // События ввода
DWORD numberOfEventsRead; // Хранение количества считанных событий
while (true) {
if (ReadConsoleInputW(hInput, &inputRecord, 1, &numberOfEventsRead) && numberOfEventsRead > 0) {
if (inputRecord.EventType == KEY_EVENT && inputRecord.Event.KeyEvent.bKeyDown) {
wchar_t inputChar = inputRecord.Event.KeyEvent.uChar.UnicodeChar;
std::cout << "Вы нажали на кнопку '" << inputChar << "'" << std::endl; // Проблема здесь
}
}
}
}
ну я могу наверное и вторую прогу запустить (тот же vs)
разве это что-то даст?
получить смщения по которым ядро читает
я даю базу, ядро прибавляет к ней смещение от 0 до 255 и читает 1 байт
вот это рандомное смещение, а точнее смещения - их штук 15-20 надо мне узнать из моей юзер спейс проги
поговаривают что get_user может уснуть на pagefault
я вот думаю, а что если создать несколько страниц замапленых на медленный диск и так чтобы они не были подгружены в рам.
дать адрес в ядро и замерить время работы get_user
правда непонятно как высчитывать смещения. как-то нужно играться с границами страниц?
По другомсу скажу. В VS смотреть со стороны брейк пойнтами я понимаю. А вот в программе повесить какой-то тригер. И понять читал кто-то этот участок памяти или нет. На уровне кода. Я считаю что нельзя.
Читать полностью…Привет, чатик!
А можно как-то узнать что память читалась по определенному смещению?
Т.е. я процесс, могу выделить какой-то участок памяти и отдать адрес на него в ядерный модуль. Оттуда будет чтение одного байта по неизвестному, но в пределах байта, смещению.
Мне нужно задетектить это чтение обратно в моём процессе.
Мб можно ставить какие-то ловушки на память?)
Или же дать 0 как адрес базы и отловить чтение по 0+(0..255 случайное число) как-то?
Я неправ, я почему то подумал, что раз "преобразование из типа в него же" то мол ничего не делает. А только потом подумал про то, что строчка нетривиально копируется
Читать полностью…а? То что вы назвали конструктор кастом это ваши слова, это всё ещё конструктор
Читать полностью…Был видос у тернера по поводу того, что functional-style конструктор с одним аргументом это на самом деле каст
Читать полностью…Констурктор-функция с одним аргументом это каст, разве нет? В этой записи даже нет вызовов конструктора, кроме как по умолчанию один раз
Читать полностью…