Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.81/26: Рейтинг темы: голосов - 26, средняя оценка - 4.81
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
1

Хочу заниматься системным программированием. Какую литературу посоветуете?

13.10.2016, 22:46. Просмотров 4764. Ответов 83
Метки нет (Все метки)

Хочу заниматься системным программированием,а также интернет программированием. Какую литературу посоветуете?
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2016, 22:46
Ответы с готовыми решениями:

Посоветуйте пожалуйста литературу, изучив которую можно будет серьезно заниматься программированием под андроид.
Привет программисты. Очень сильно хочу написать серьезную программу под андроид. Для проеекта...

Какую литературу посоветуете?
Здравствуйте, хочу заняться системным программированием, а именно разработкой ОС и драйверов. Знаю...

Какую литературу посоветуете читать?
Нужен какой нибудь вузовский учебник по физике из разряда "для чайников" и заодно какой нибудь...

Какую литературу посоветуете почитать по Delphi?
Какую литературу посоветуете почитать по Delphi? Видел множество вариантов, но хотелось бы узнать,...

83
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
14.10.2016, 11:15 2
Под какую ОС? Или, может быть, кросс-платформ?
0
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
14.10.2016, 17:07  [ТС] 3
Убежденный, под windows сначала.
0
Emmk
74 / 74 / 30
Регистрация: 12.02.2016
Сообщений: 199
Завершенные тесты: 1
14.10.2016, 17:11 4
Если под "интернет программированием" вы подразумеваете сетевое программирование, то традиционно советуют этот гайд
1
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
14.10.2016, 19:26  [ТС] 5
Emmk, а по системному ничего не можете посоветовать?
0
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
14.10.2016, 20:02 6
Лучший ответ Сообщение было отмечено NewNoob как решение

Решение

"Системное программирование в Windows" (А. Побегайло),
"Системное программирование в среде Windows" (Д. Харт),
"Программирование эффективных win32-приложений" (Д. Рихтер),
"Защищенный код для Windows Vista" (М. Ховард, Д. Лебланк),
"Программирование серверных приложений для Windows 2000" (Д. Рихтер, Д. Кларк),
"Недокументированные возможности Windows 2000" (С. Шрайбер).

"Windows NT4/2000 Native API Reference" (G. Nebbett),
"Undocumented Windows NT" (P. Dabak, S. Phadke, M. Borate).

"Windows Internals" (М. Руссинович, Д. Соломон)
"Руткиты. Внедрение в ядро" (Хоглунд Г., Батлер Дж.)

Еще вот здесь есть по системному программированию несколько ссылочек:

Документация и загрузки для разработчика драйверов
5
Emmk
74 / 74 / 30
Регистрация: 12.02.2016
Сообщений: 199
Завершенные тесты: 1
14.10.2016, 21:46 7
NewNoob, материалов и книг уйма, выше вам скинули. Важнее, как мне кажется, понимание фундаментальных концепций. Для этого порекомендую курс Архитектуры ЭВМ и основы ОС от лекториума.
3
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
15.10.2016, 09:21 8
Emmk, кстати, да. Без понимания основ и шагу не ступишь.
Я тоже перед тем, как читать материалы под конкретную ОС и API, крайне советовал бы
начать с изучения (или повторения) самых-самых азов, т.е. принципиального устройства ЭВМ,
ОС, основные термины вычислительной техники (бит, байт, процессор, прерывание,
виртуальная и физическая память, сегменты, защита, ring0-ring3, планировщик задач,
исключения, многопроцессорные системы и т.д.). Может быть, есть смысл вообще начинать с
изучения ассемблера под интересующую архитектуру и пробовать написать несколько
программ на нем, а потом уже идти дальше.
2
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
15.10.2016, 21:47  [ТС] 9
Убежденный, хм,может. Я как раз начал. А в чём отличие от си? Т.е эти команды,вроде mov,add и т.д - операции или команды,как у самого процессора или что-то с этим связанное? Просто говорят,что ассемблер наиболее приближен к машинному коду,т.е имитирует команды процессора и что-то подобное?
0
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
15.10.2016, 22:13 10
Цитата Сообщение от NewNoob Посмотреть сообщение
Я как раз начал. А в чём отличие от си?
C часто называют "ассемблером высокого уровня".
У них мало общего на самом деле. Их объединяет ну разве что сложность
написания программ

Цитата Сообщение от NewNoob Посмотреть сообщение
Просто говорят,что ассемблер наиболее приближен к машинному коду,т.е имитирует команды процессора и что-то подобное?
Программируя на ассемблере, ты оперируешь командами процессора под
конкретную архитектуру, никакой эмуляции.
0
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
15.10.2016, 22:44  [ТС] 11
Убежденный, т.е,например,если я перемещаю значение в регистр,то как бы процессор на самом деле и перемещает значение в этот регистр? Т.е это не абстракция.
0
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
15.10.2016, 22:51 12
Все верно, это не абстракция.
0
Evg
16.10.2016, 11:47
  #13

Не по теме:

В списке литературы отсутствует самая важная книга - "Учимся пользоваться google'ом за 21 день"

0
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
04.11.2016, 23:55  [ТС] 14
Убежденный, Active-X - очень важная тема или можно на при первом прочтении пропустить? Кстати, Си же не поддерживает объектов,интерфейсов и т.д. Для языков,вроде,C# поддержка active X,как написано,есть. Не проще ли его использовать для системного программирования? Или в дальнейшем отличия будут?
0
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
05.11.2016, 08:52 15
Цитата Сообщение от NewNoob Посмотреть сообщение
Active-X - очень важная тема или можно на при первом прочтении пропустить?
COM/OLE/ActiveX - это значительная часть Windows.
Глубоко вникать в эту тему не обязательно, но иметь представление о том,
как устроены эти технологии, очень важно.

Цитата Сообщение от NewNoob Посмотреть сообщение
Си же не поддерживает объектов,интерфейсов и т.д.
Это не помеха. C поддерживает вызов функции по указателю, для работы с COM этого достаточно.
А C# для системного программирования не очень, это же язык высокого уровня, к тому же
со своими особыми "заморочками" - CLR, .NET Framework, mscoree.dll и т.д.
0
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
12.11.2016, 20:52  [ТС] 16
Убежденный, а в c# интерфейс тоже получается - таблица указателей на функции? Я думал,что это только то,какие методы он должен выполнить. Или понятие интерфейчсов c# и active x - разные вещи
0
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
12.11.2016, 21:05 17
Цитата Сообщение от NewNoob Посмотреть сообщение
а в c# интерфейс тоже получается - таблица указателей на функции?
Я не знаю. Лучше спросить в разделе по C#.
0
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
13.11.2016, 01:24  [ТС] 18
Убежденный, кстати,я не пойму,какую библиотеку нужно подключить,чтобы работать с active-x.

Добавлено через 37 минут
Убежденный, а что будет,если при вызове ф-й,возвращающих указателей на др.интерфейсы,я не буду использовать счётчик и вообще зачем это?
0
Убежденный
Ушел с форума
Эксперт С++
16275 / 7341 / 1183
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
13.11.2016, 08:56 19
Цитата Сообщение от NewNoob Посмотреть сообщение
не пойму,какую библиотеку нужно подключить,чтобы работать с active-x.
Для начала ole32.

Цитата Сообщение от NewNoob Посмотреть сообщение
а что будет,если при вызове ф-й,возвращающих указателей на др.интерфейсы,я не буду использовать счётчик
Получишь утечку COM-объектов. Или обращение по адресу, где
находится уже уничтоженный объект.

Цитата Сообщение от NewNoob Посмотреть сообщение
и вообще зачем это?
Для управления временем жизни объекта.
Время жизни контролируется счетчиком: когда делается "копия", счетчик увеличивается,
когда одна из "копий" уничтожается, счетчик уменьшается. Когда счетчик достигает 0,
значит, больше не осталось ни одной ссылки на объект и он может быть безопасно удален.
Принцип тот же, который используется в std::shared_ptr или Boost.shared_ptr из C++.
Слово "копия" взята в кавычки, потому что никаких копий на самом деле не создается,
просто все работают с указателем на один и тот же объект.
0
NewNoob
6 / 10 / 2
Регистрация: 29.05.2015
Сообщений: 659
Завершенные тесты: 1
18.11.2016, 19:19  [ТС] 20
Убежденный, читаю,конечно,пока что медленно в силу наличия не столь большого кол-ва свободного времени. Но пока ещё не понял,как создать объект active-x. По идее сказано,что нужно использовать функцию QueryInterface. Но если я как бы вообще не имею указателей на интерфейсы. Как их создать?
0
18.11.2016, 19:19
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2016, 19:19

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Стоит ли заниматься программированием на С++?
Добрый день всем! Может вопрос и не в эту тематику. Но очень такая тема беспокоит, я начинающий...

Не рано ли заниматься программированием в 13 лет
Всем здравтвуйтего, мне 13 лет. Последнее время сильно увлёкся программированиемне и мне это очень...

Со скольки лет нужно начинать заниматься программированием?
Я начал учиться программировать в 17 лет. А во сколько лет нужно начать, чтобы стать первоклассным...

Как начать заниматься электроникой и программированием микроконтроллеров? Курсы и прочее...
Здравствуйте,не подскажете ли вы,как начать заниматься с этой электротехникой? Вот хочется мне эти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.