Где я могу начать искать, чтобы лучше понять, как работают компьютеры? - PullRequest
11 голосов
/ 22 июля 2010

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

В последнее время я изучал системы компьютерной безопасности и их использование (исключительно для образовательных целей,на мою собственность).К сожалению, мне кажется, что 99% людей там понятия не имеют, о чем они говорят.Часто это просто «запустить это» или «запустить это» или «вы можете найти программу, которая сделает все это за вас» - никто не знает, как эти программы работают или что именно они делают.

Я нахожунет никакого удовольствия или интереса в использовании чего-то, что кто-то создал, просто чтобы называть себя «хакером», как большинство людей.На самом деле, я даже не интересуюсь хакерскими системами настолько, насколько КАК они это делают.

Мой вопрос сводится к этому.

Я хочу изучить все взлеты, падения, взлетыи падения компьютеров - все от абстрактных понятий, таких как интернет и передача данных, до аппаратного обеспечения.Я хочу знать, как компьютеры хранят данные (как организованы укусы и т. Д.) И что на самом деле делают процессоры и т. Д.Что такое WIFI?Компьютеры общаются со светом (кое-что я взял из журнала, который я читал в самолете).

У меня многолетний опыт работы с компьютером / программированием, но многое из того, что я знаю о компьютерах в целом, очень обширно.Компьютеры отправляют пакеты информации между собой, каждый с заголовком и контентом.Компьютеры состоят из нескольких компонентов, каждый со своей функцией (процессор, видеокарта, ОЗУ, жесткий диск (и) и т. Д.), О которых я уже немного разбираюсь.и т. д. и т. д.

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

Этот вопрос, вероятно, повсеместно,поэтому, пожалуйста, попросите меня уточнить, когда это необходимо.В данный момент я немного отстала от реактивной струи, но я попыталась написать свои мысли самым быстрым, наиболее последовательным способом (хотя я мог полностью потерпеть неудачу в этом процессе).

Заранее спасибо за любыесовет!

Justian Meyer

Пожалуйста, не стесняйтесь редактировать теги для этого вопроса.Нынешние ужасны.

РЕДАКТИРОВАТЬ:

Все эти комментарии вызывают у меня восторг :).Так много, чтобы узнать, так много, чтобы исследовать:).

Ответы [ 5 ]

5 голосов
/ 22 июля 2010

Чтобы помочь вам выбрать специализацию, я бы очень рекомендовал компьютерную инженерию (известную как CMPE или CE в учебниках для колледжей).Ваши занятия приведут вас ко всему, что вы только что перечислили, и с факультативами вы сможете глубже вникать в любые аспекты, которые вы пожелаете (такие как безопасность и сетевое взаимодействие).

В CMPE вы изучите как программное обеспечение (C, C ++ и немного C #), так и аппаратное обеспечение (возможно, два электротехнических класса).Как только вы приступите к программированию на ассемблере, вы начнете изучать, как эти два компонента объединяются для создания всего остального в любом компьютере или встроенной системе.Он перенесет вас на уровень памяти, ЦП, шины данных, ввод-вывод и многое другое.Я только начинаю заниматься цифровым дизайном, и это невероятно.Из того, что вы описали, вам очень понравится быть майором CMPE.

Есть специалисты по информатике и программисты;есть инженеры-электрики;но нет мобильного телефона, GPS или компьютера, разработанного без компьютерных инженеров!

2 голосов
/ 22 июля 2010

Эти два помогли мне понять, как работает ОС и память в целом.Я полагаю, что многое происходит из этой простой механики.

1. Анатомия программы в памяти

2. Расширение пределовПамять Windows

2 голосов
/ 22 июля 2010

Структурированная компьютерная организация, Таненбаум

Это отличная книга, в которой объясняется все - от транзистора до виртуальной машины Java.

1 голос
/ 22 июля 2010

Стив Гибсон из отдела безопасности сейчас делает серию подкастов по компьютерным основам.

http://www.grc.com/securitynow.htm Эпизод 233 «Давайте создадим компьютер (часть 1)» вплоть до самого последнего «Что мы сделаем для скорости».

В каждом другом эпизоде ​​он дает отзывы слушателей, и те тоже хорошо слушать.

несколько раз (как сейчас) они прерывали серию, если появлялись важные новости о безопасности (например, когда эта большая проблема с SSL сломалась несколько месяцев назад)

Это действительно хорошее шоу, и я рекомендую начать с 233 и продолжить свой путь, а затем начать с первого эпизода. Он также сделал очень хорошие серии о том, как работает компьютерная сеть и как работает криптография. (Ep 203 поразит вас, когда он расскажет о Бойере и Муре метод поиска)

1 голос
/ 22 июля 2010

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


@ Джустиан Понятно, извините, я вас неправильно понял.Желание понять тонкости того, как код обрабатывается внутри аппаратного обеспечения, является очень естественным.Когда в колледже я читал книгу «Как работает компьютер» - это довольно простая, даже несколько примитивная книга об общей аппаратной функциональности.Но это может дать вам широкий взгляд на эту тему.

Еще одна аналогия пришла на ум.Скажем, лингвисты исследуют внутреннюю механику языка, но именно нейробиологи исследуют, как языковые сигналы обрабатываются в мозге.Два очень разных занятия.Это не мешает вам изучать аппаратное обеспечение, а лишь подчеркивает разницу между двумя сферами.

...