Выше оценки неплохо 3 том не тянет. Читать далее эту книгу стало скучно. Автор ударился в псевдо экономику и т.д. И выглядит она наивно. Бумага на основе магической костной муки? Где взять такое количество и кто позволит? Эта бумага от магии меняет цвет. То есть кто нибудь стал магичеть около такой ксерокопии и весь документ стал черным. Вспомните чеки кассовых аппаратов на термобумаге. Раз есть враги подобного бизнеса, то они довольно
подробнее ...
быстро найдут уязвимую точку этой бумаге. Игра на бирже - это вообще рассказ для лохов. Маклеры играют, что бы грабить своих клиентов, а не зарабатывать им деньги. Свободный рынок был, когда деньгами считалось золото или серебро. После второй мировой войны для спекуляций за фантики создали МВФ. Экономические законы свободного рынка больше не работают. Удачно на таком рынке могут работать только те, кто работает на хозяев МВФ и может сам создавать "инсайдерскую информацию". Фантики МВФ для них вообще не имеют никакого значения. Могут создать любую цифровую сумму, могут стереть. Для них товар - это ресурсы и производства, а не фантики. Ну вод сами подумайте для чего классному специалисту биржи нужны клиенты? Получить от них самые доходные спекуляции, а все менее удачное и особенно провальное оставить им. Основной массе клиентов дают чуть заработать на средних ставках, а несколько в минус. Все риски клиентам, себе только сливки. Вот и весь секрет их успеха. Ну и разумеется данный специалист - лох и основная добыча маклеров хозяев МВФ. Им тоже не дают особо жиреть. Поднакопил жира и вот против вас играет вся система биржи. Вроде всегда "Надежные" инсайдеры сливаю замануху и пипец жирному брокеру. Не надо путать свободный рынок со спекулятивным. И этому сейчас вас нигде не научат, особенно в нашей стране. А у писателя биржа вообще выдаёт кредиты для начала спекуляции на бирже. Смешно. Ну да ведь такому гениальному писателю надо придумать миллионы из нуля. Вот спрашивается зачем ГГ играть на бирже, если ему нужны деньги для расширения производства и он сам должен выкинуть на рынок свои акции для привлечения капитала.
Начал читать. Очень хорошо. Слог, юмор, сюжет вменяемый.
Четыре с плюсом.
Заканчиваю читать. Очень хорошо. И чем-то на Славу Сэ похоже.
Из недочётов - редкие!!! очепятки, и кое-где тся-ться, но некритично абсолютно.
Зачёт.
Начал читать первую книгу и увидел, что данный автор натурально гадит на чужой труд по данной теме Стикс. Если нормальные авторы уважают работу и правила создателей Стикса, то данный автор нет. Если стикс дарит один случайный навык, а следующие только раскачкой жемчугом, то данный урод вставил в наглую вписал правила игр РПГ с прокачкой любых навыков от любых действий и убийств. Качает все сразу.Не люблю паразитов гадящих на чужой
подробнее ...
труд и не умеющих придумать своё. Вообще пишет от 3 лица и художественного слога в нем не пахнет. Боевые сцены описывает в стиле ой мамочки, сейчас усрусь и помру от ужаса, но при этом всё видит, всё понимает но ручки с ножками не двигаются. Тоесть всё вспомнить и расписать у ГГ время есть, а навести арболет и нажать на спуск вот никак. Ах я дома типа утюг не выключил. И это в острые моменты книги. Только за это подобным авторам надо руки отрывать. То есть писать нормально и увлекательно не может, а вот влесть в чужой труд и мир авторов со своей редакцией запросто. Топай лесом Д`Картон!
Книга из серии тупой и ещё тупей. Автор гениален в своей тупости. ГГ у него вместо узнавания прошлого тела, хотя бы что он делает на корабле и его задачи, интересуется биологией места экспедиции. Магию он изучает самым глупым образом. Методам втыка, причем резко прогрессирует без обучения от колебаний воздуха до левитации шлюпки с пассажирами. Выпавшую из рук японца катану он подхватил телекинезом, не снимая с трупа ножен, но они
подробнее ...
благополучно появились потом. Заряжает барабан револьвера капсюлями порохом и приклеивает пули. Причём как вы понимаете заряжает их по порядку, а потом дважды нам пишет на полном серьёзе, что не знает как дозарядить барабан, как будто этого не делал при зарядке. Офицеры у него стреляют по дальним целям из револьверов, спрашивается вообще откуда офицеры на гражданском пароходе? Куда делся боевой корабль сопровождения я так и не понял. Со шлюпкой вообще полная комедия. Вы где видели, что бы шлюпки в походном положении висели на талях за бортом. Они вообще стоят на козлах. У ГГ в руках катана, а он начинает отстреливать "верёвку" - дебилизм в острой форме. Там вообще то подъём и опускание шлюпки производится через блоки, что бы два матроса смогли спокойно поднять и опустить полную шлюпку хоть с палубы, хоть со шлюпки, можно пользоваться и ручной лебёдкой с палубы. Шлюпки стандартно крепятся двумя концами за нос и за корму иначе при спускании шлюпку развернёт волной и потопит о корпус судна. Носовой конец крепя первым и отпускают последним. Из двух барабанов по делу ГГ стрелял только один раз и это при наличии угрозы боевых действий. Капсули на дороге не валяются и не в каждой лавке купишь. Кто будучи голодным и с плохим финансовом положении будет питаться эклерами? Только дебил или детё, но вряд ли взрослый мужчина. Автору книги наверное лет 12, не более.
Пишем драйвер WDM на Ассемблере.
(Комментарии к исходникам AsmDrv)
Часть 1. Цель работы. Постановка задачи.
Признаюсь честно: мне нравится Ассемблер. Вернее, даже не сам Ассемблер, а стиль общения с компьютером через него.
В сети есть несколько примеров создания драйверов виртуальных устройств VxD на Ассемблере.
Но нет ни одного аналогичного примера для драйвера WDM.
Так исправим же эту досадную оплошность!
Создание несложного драйвера с использованием только лишь Ассемблера – довольно трудоёмкое занятие.
По двум причинам:
1) Отсутствие ассемблерных заголовочных файлов для использования драйверного API.
2) Методически трудная отладка драйверов в системе Windows.
Первая причина может быть некритичной. Были бы руки да голова. Ведь известно, что значительная часть заголовков Win32 API была переведена энтузиастами на Ассемблер. И работа эта немалая.
Вторая причина более серьёзна и именно она является сдерживающей. Практически, самым доступным способом отладки является отладочный вывод из самого драйвера. При этом код осторожно дописывается небольшими кусочками.
Однако, теперь у вас будет хороший кусок работающего кода. Мы его сейчас напишем! Изменяя и дополняя его, вы сможете создать свой собственный драйвер, довольно быстро и легко.
Сразу оговорюсь: я не собираюсь подробно объяснять принципы функционирования драйверной системы Windows и растолковывать специальные понятия. Для этого существует специальная литература.
Что нам потребуется? Вот что:
1) Текстовый редактор.
Notepad. Но лучше что-нибудь поудобнее, например, Патриот XP.
2) MS Windows DDK.DDK содержит почти всё, что требуется для создания драйверов. Но нам важны: справка DDK, Ассемблер masm 6.1, компоновщик Link, также оттуда мы возьмём библиотеки и заголовочные файлы для C (что с ними делать – см. далее).
3) Утилита для визуализации отладочного вывода. Я использую DbgView , который можно взять с сайта www.sysinternals.com
4) Delphi для компиляции тестовой программы.
Но вам необязательно набирать текст с нуля. К счастью, я сделал это до вас :)
Скачайте файл с исходниками проекта AsmDrv и распакуйте его в подкаталог \NTDDK\src\AsmDrv.
(http://progrex.narod.ru/sources/AsmDrv.zip)
Вот, кажется, всё. Можно начинать!
Часть 2. API для WDM драйвера.
Большинство функций драйверного API, которые нас интересуют, предоставляются модулем ntoskrnl.exe.
Для их использования надо сделать следующее:
1) Объявить типы данных и определить константы.
Большинство определений для C находятся в файлах ntdef.h и wdm.h.
2) Объявить прототипы функций, которые мы намерены использовать.
Эти определения для C также находятся в wdm.h
3) Выполнить сборку драйвера с подключением библиотеки wdm.lib
Все три файла (wdm.h, ntdef.h и wdm.lib) входят в состав Windows DDK.
Я перевёл часть заголовков на Ассемблер и поместил их в файл usewdm.inc, который находится в базовом каталоге проекта.
Часть 3. Пишем рыбу.
3.1. Итак, приступим.
Вы можете проследить за последовательностью и содержанием действий, открыв файл main.asm для просмотра.
Начнём, пожалуй, так:
.586p ; Процессор Intel Pentium, разрешены инструкции защищённого режима
.model flat, stdcall ; Здесь всё ясно. Плоская модель адресации и тип вызовов stdcall.
option casemap:none ; "case-sensitive"
Дальше нужно задействовать файл включений usewdm.inc и библиотеку wdm.lib, чтобы мы смогли использовать драйверный API:
.include usewdm.inc
.includelib wdm.lib
Затем размещаем два сегмента – данных и кода:
.data
; […]
.code
; […]
3.2. Процедура инициализации
Каждый драйвер имеет процедуру инициализации . Эта процедура вызывается системой сразу после загрузки драйвера в память.
У нас такая процедура называется DriverEntry. Объявим её как
Driver Entry proc near public, DriverObject:PDRIVER_OBJECT, RegistryPath:PUNICODE_STRING
DriverObject – это указатель на служебную структуру, сопоставленную драйверу. Она используется системой для вызова процедур драйвера. Её-то и следует инициализировать – записать в эту структуру адреса соответствующих процедур нашего драйвера.
Наш драйвер довольно прост. Он будет отрабатывать только 4 стандартных запроса:
IRP_MJ_CREATE – Вызов CreateFile() в приложении пользователя для установления связи с драйвером;
IRP_MJ_CLOSE – Вызов CloseHandle() в приложении пользователя для разрыва связи с драйвером;
IRP_MJ_DEVICE_CONTROL – Вызов DeviceIoControl() в приложении пользователя для запроса выполнения какой-либо функции в драйвере.
Все эти три запроса мы адресуем некоей диспетчерской функции OnDispatch. Мы узнаем о ней позже.
Четвёртый запрос – на выгрузку. Об этом пойдёт речь ниже.
А пока необходимо сделать ещё 2 важные вещи – создать логический объект устройства при помощи функции IoCreateDevice() и символическую связь,
Последние комментарии
12 часов 5 минут назад
20 часов 57 минут назад
21 часов 5 секунд назад
3 дней 3 часов назад
3 дней 7 часов назад
3 дней 9 часов назад