Комментарии 44
для кого это?
+15
для собеседований
+11
Я с удовольствием прочитал. Но формат больше geektimes'овский, да
+3
Для познающих мир IT
+4
Для познающих слишком много специфичных терминов, надо бы более простым языком всё описывать. Для тех, кто эти термины знает — статья бесполезна, в общем случае всё это им известно, а частности всегда смогут найти при желании.
+2
Бегло пробежался снова по тексту. Специфичные термины разбавлены общим контекстом. Речь получилось энциклопедической. Так что речь вполне полезна именно для тех, кто познаёт. Начинаешь понимать что искать и имеешь контекст применения. Это ценно)
+7
Как вариант — для хорошо разбирающихся в терминах, однако не совсем знакомых с данной темой в следствии ее достаточной специфичности и сомнительной применимости в реальной жизни. Но мне понравилось)
0
Для нас с вами. Ведь все мы прочитали это до конца )
+2
Кнопка «ввод» возвращается в исходное положение
Это если клавиатуру не залили предварительно сладким чаем :) Потому что тогда в цепочку процессов вклинится химия, физика, механика, психология и большое количество лингвистики в области обсценной лексики.
+23
На самом деле все еще проще: электрон туда, электрон сюда…
+16
Рекомендую подписаться на обновления репозитория. Он существует уже давно, но в последнее время внезапно активировался, очень многое добавляют/правят. Вряд ли возможно описать совсем всё происходящее, но подробностей будет больше.
+1
Недостаточно подробно. :-(
Работу с оперативной памятью пропустили, как на логическом, так и на физическом уровнях… Хотя, это же только первая часть.
Работу с оперативной памятью пропустили, как на логическом, так и на физическом уровнях… Хотя, это же только первая часть.
+2
Только вот не понял насчёт «Иначе запрос отправляется на IP-адрес стандартного шлюза.» в разделе Запрос DNS.
Зачем шлюзу ДНС-запрос? Запрос отправляется на IP-адрес ДНС-сервера, но в dst мак-адресе указывается мак-адрес шлюза. IP-адрес шлюза используется только для определения его мак-адреса.
Можно забавный эксперимент провести. Занести в arp статическую запись произвольный ip из текущей подсети + mac адрес шлюза. Далее поменять в настройках сети ip адрес шлюза, сделав его равным ранее занесённому в arp ip-адресу и всё будет работать.
Зачем шлюзу ДНС-запрос? Запрос отправляется на IP-адрес ДНС-сервера, но в dst мак-адресе указывается мак-адрес шлюза. IP-адрес шлюза используется только для определения его мак-адреса.
Можно забавный эксперимент провести. Занести в arp статическую запись произвольный ip из текущей подсети + mac адрес шлюза. Далее поменять в настройках сети ip адрес шлюза, сделав его равным ранее занесённому в arp ip-адресу и всё будет работать.
+2
По-моему забыли описать движение дырок в PNP-переходе и вынужденное излучение оптического квантового генератора.
+13
Фундаментальный подход — это правильно. Большое спасибо автору и переводчику.
+3
про Enter в начале совсем противно написано
-2
Начали хорошо и более-менее подробно, но на стадии отправки запроса как-то все скомкано и свернуто :( А ведь там тоже все очень интересно.
+1
Было же это на Хабре, разве нет?
+2
Возникновение прерывания (не на USB-клавиатуре)
Клавиатура отправляет запрос прерывания (IRQ),
Если речь о PS/2, то запрос отправляет не клавиатура, а контроллер клавиатуры на материнской плате. Например, в ноутбуках IBM это делает Embedded Controller через LPC-шину.
+1
Для отправки широковещательного запроса ARP, сетевому стеку нужно узнать IP-адрес получателя и MAC-адрес интерфейса, который будет для этого использован.
чушь какая! все совсем наоборот — для отправки unicat-пакета сетевому стеку, а конкретно той его части которая отвечает за формирование пакетов-ethernet, нужно отправить широковещательный ARP-запрос, чтоб узнать mac-адрес next-hop. А до того как это произойдет, то еще сработает процесс маршрутизации, чтоб узнать какой ip-адрес спрашивать у ARP. Есть таки большая разница в прохождении трафика от хоста 192.168.0.10/24 до хоста 192.168.0.1/24 и от хоста 192.168.0.10/24 до хоста 8.8.8.8/32.
+4
Как происходит преобразование нажатия в код клавиши 13?
0
Этим занимается контроллер на борту клавиатуры.
0
Не совсем так. Контроллер на борту клавиатуры посылает компьютеру скан-код нажатой клавиши. У PS/2-клавиатур этот код зависит от выбранного в данный момент способа кодирования (всего их три). У USB-клавиатур свой отличный набор кодов.
Преобразование в 13 производит либо контроллер клавиатуры на материнской плате (для PS/2), либо драйвер (для USB).
Преобразование в 13 производит либо контроллер клавиатуры на материнской плате (для PS/2), либо драйвер (для USB).
0
Если я ничего не путаю, на физическом — scan code, потом key code (в случае с 13 может быть еще второй энтер на нампэде, с другим скан кодом, но таким-же key code), затем идет char code (не уверен, генерируются ли они для всяких мультимедийных и функциональных кнопок, или только для ascii символов). А еще может быть дополнительная обработка на уровне ОС — в виндовс можно ремапить клавиши через реестр, например.
Надо бы найти где-нибудь структурированную информацию по этой теме, для повышения образованности.
Надо бы найти где-нибудь структурированную информацию по этой теме, для повышения образованности.
0
XKCD в тему: xkcd.ru/i/676_v1.png
+3
DNS пропустил. А на собеседованиях частенько хотят услышать подробности про это.
+1
Даже если к сайту недавно обращались, и он есть в DNS кеше, то прописав в hosts другое значение, оно будет иметь преимущество.
Подскажите что происходит — сперва hosts, затем DNS кеш, или просто отслеживается изменение hosts файла? Всегда хотел уточнить этот момент.
Подскажите что происходит — сперва hosts, затем DNS кеш, или просто отслеживается изменение hosts файла? Всегда хотел уточнить этот момент.
0
Кнопка «ввод» возвращается в исходное положение
WM_KEYDOWNПри возврате уже
WM_KEYUP
будет, вообще-то.-1
Стандартный вопрос на собеседование в Akamai.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Что именно происходит, когда пользователь набирает в адресной строке google.com? Часть 1