Читайте Таненбаума (Архитектура компьютера, Компьютерные сети, Операционные системы). Это классика. Для затравочки - "Код" Петцольда - на пальцах интересно рассказывает о том, что вы спрашиваете, но без подробностей.
Начните постоянно пользоваться Линуксом и командной строкой. Установите себе Virtual Box и играйтесь с разными дистрибутивами. В помощь "Внутреннее устройство Linux".
Прекрасные видеокурсы по информатике есть на intuit.ru, там надо искать лекторов из МФТИ (Карпов, например) и ВМК МГУ, они бесплатны плюс там есть тесты после каждой лекции и рекомендуется неплохая доп литература. На этом же сайте по-хорошему надо пройти курс дискретной математики, чтобы лучше разобраться в структурах данных и алгоритмах.
Одними книгами сыт не будешь, поэтому надо будет начать программировать. Не отмахивайтесь от ассемблера и си, на них написаны операционные системы, потихонечку осваивайте и их, потом можно начать писать какие-нибудь модули, для лучшего понимания.
Вообще, инфы много, поэтому удачи на этом нелегком пути.