• Какую литературу читать для изучения архитектуры компьютера и ОС?

    @Evsign
    Просто отлично, что вы к этому пришли.
    Как говорится, с начала освойте азбуку, а потом уже за c++ принимайтесь.

    1. Charles Petzold "C.O.D.E."
    Читать обязательно. Очень хорошо разжёвываются все эти битности, разрядности и .тд.
    В процессе чтения Вы, вместе с автором постепенно собираете компьютер и попутно осваиваете для этого необходимый бекграунд.
    С начала разбираются подходы в кодировании информации, не шифровка, а принципы представления информации в нулях и единицах. Потом разбираются системы счисления, потом немного химии и физики, что бы представлять как течёт ток по проводам. Потом разбираетесь как работают реле, далее идут первые логические элементы на реле. Потом вместе с автором собираете различные компоненты типо памяти, процессора на основе ранее сконструированных логических элементах. В общем это всё продолжается пока вы в конце не построите компьютер и изучите несколько основных ассемблерных команд, попутно изучив как считать в разных системах счисления, краткую историю развития комп техники и все логические элементы.

    2. Andrew Tannenbaum "Structured Computer Organization"
    По идее, можете даже сразу начать с этой книги, но все те фундаментальные вещи, которые разжёвывает Петцольд тут будут упомянуты вскользь, но тут пойдут уже более серьёзные вещи по поводу архитектуры. Будут рассматриваться уровни устройства современных процессоров, памяти, ассемблер, прерывания и т.д. т.д. т.д. Перечислять всё не имеет смысла, т.к. список будет оооочень большой. Это наиболее полная и подробная книга об архитектуре ЭВМ. В принципе, прочитая её от корки до корки вы будите достаточно хорошо разбираться в архитектуре самих компьютеров.

    3. Hennessy J., Patterson D. "Computer Architecture A Quantitative Approach"
    Эту пока ещё не читал, но судя по содержанию может быть отличным дополнением после танненбаума. Хотя, вполне может оказаться довольно самодостаточной книгой на ровне с вышеупомянутой книгой.
    Судя по предисловию и содержанию, в ней в дополнении к тому, что разбирает танненбаум, много уделяется внимание параллелизму, облакам, шарингу ресурсов и т.д.

    Можете взяться за это так:
    Если цените время, то начинайте сразу с Танненбаума, но если окажется сложным, то закрывайте и с начала читайте Петцольда.

    Если время хватает, то сразу читайте Петцольда, а потом Танненбаума :) И это лучший вариант. ИМХО)
    Петцольд читается очень легко и интересно. Я прочитал его на одном дыхании, а вот с Танненбаумом всё не так просто)

    UPD:
    По поводу актуальности. Актуально всё)
    2 и 3 разбирают современные ARM-Cortex A8 и i7 процессоры, Nvidia Fermi, CUDA и т.д.
    Ну а в первой книге этого и не надо)
    Ответ написан
    3 комментария
  • Как обеспечить безопасность “Умного дома”?

    Godless
    @Godless
    Вопрос тянет на отдельную книгу, как мне кажется. Но поскольку деталей нет, общие принципы примерно следующие:

    1. Изолированная локалка, если используется. Отсутствие радио каналов (любых, вифи, 433 и тп). Если уж ну ваще никак, предусматривайте ситуацию, что канала нет, или данные по каналу приходят поддельные, в т.ч. со злым умыслом.
    2. Если прямо необходимо чтоб железки что-то тянули с интернета - к примеру, дополнительный linux шлюз, разрешающий только то что надо. Вариации с прямым доступом из тырнета в железо отметайте сразу.
    3. Шифруйте данные по сети. Не используйте слабые шифры.
    4. Не используйте простые пароли (да, 2018 год).
    5. Правильно конфигурируйте службы, аккуратно выставляйте доступ к файлам.
    6. Про железную часть не пишу. Но вопрос защиты от перенапряжения, выгорания портов, резервирования функционала и тп тоже относится к безопасности.
    7. Бэкапы и резервирование не должны быть для вас пустым звуком.
    8. [....]
    Ну, думаю направление мыслей понятно.
    Ответ написан
    3 комментария
  • Какую литературу о снифферах, сетевых анализаторах можно почитать?

    @dmshar
    Позвольте задать наводящий вопрос - а что такое сеть, что такое сетевые протоколы, какие они бывают, как взаимодействуют, как управляются - вы уже выучили? Просто - если "да" то ответы на большинство ваших вопросов вы уже должны знать. А если "нет" - то начинать надо не с снифферов, а именно с того, о чем я написал. И начать можно хоть с классики:
    В. Олифер, Н. Олифер «Компьютерные сети. Принципы, технологии, протоколы.
    Ответ написан
    Комментировать