![]() |
Откуда берутся микросекунды?
Например, в PHP есть функция microtime(), выдающая текущее значение микросекунд. Секунды - ещё ладно, можно там посчитать (хотя тоже не в курсе, но часы-то делают электронные). А вот микросекунды откуда берутся? Неужели таймер замеряет всю эту ерунду, затрачивая бесценные ресурсы процессорного (или ещё какого) времени?
Или это рандомом выдаётся? |
Coutty,
думаешь на такое дело нужно много процессорного времени? |
Какая разница микросхеме-часам реального времени, считать секунды или микросекунды? Тактовая-то на ней намного выше. Вот и считает с точностью до микросекунды. Процессору фиолетово, чем там занимается микросхема - он порт опросил - данные получил.
|
Negativ, думал, что много) Если так прикинуть, то целый мегагерц (если принимать инкрементный способ счёта) уходил бы. Это сейчас немного, а раньше-то... ого-го_О
CyberDaemon, и где такая штука находится? В чипсете, в процессоре или ещё где? |
Цитата:
Coutty, дело в том, что часы считают как раз микросекунды, есть еще и таймеры, которые можно программировать на превышение определенного порога (т.е. можно считать через 5 мкс, 25, 100 и так далее, как душе угодно) |
Цитата:
|
dmitryst, дык это уже программно считают, наверное. Неужто микрочип будет пропускать такты?
CyberDaemon, а в древних оно зачем?) Ну лампы там... И что? Неужто людям так было важно? Могли ведь и по часам замерить что надо. Или не настолько древних?=) Кстати, слышал теорию, что из-за этих-то древних байт и равен восьми битам. Сейчас бы за 32 или 64 бита взяли, наверное, исключив проблемы с нехваткой IP-адресов, кодировками и прочей фигнёй. |
Цитата:
|
Цитата:
Байт он всегда байт - 8 бит. А есть еше машинное (процессорное) слово, определяемое логической разрядностью шины данных процессора (а не адресной шиной). Так что для процессоров 8080 - слово равнялось байту 8086 - 2м байтам 80386 - 4м байтам И только сейчас машинное слово у Intel выросло до 8 байт. Кстати, у первого процессора 4004, если мне память не изменяет, машинное слово равнялось полубайту. Цитата:
Нет такой проблемы. Есть, точнее была до внедрения VLSM, проблема нехватки IP-сетей (диапазонов), но сотояла она не в недостаточной общей разрядности, а в заложенной в првоначальный стандарт жесткой "классовости" сети. |
Цитата:
|
Цитата:
У последовательных шин и интерфейсов вообще два проводка, дык их никто двухбитными не считает же :) |
Цитата:
Если бы процессоры сразу были 32-разрядные, зачем стоило бы оговаривать байт, как 8 бит? Цитата:
|
Немного увлекаюсь программированием, так вот в WinAPI есть такая функция - GetTickCount
Цитата:
В WinAPI как известно есть только те функции и процедуры которые используются самой Windows. Рискну предположить, что эти "микросекунды" необходимы для распределения процессорного времени между приложениями. Ведь пока еще не придумали процессор позволяющий одновременно обрабатывать несколько десятков задач и эти функции берет на себя ОС. |
Цитата:
Код:
/* |
Цитата:
Байт был синонимом октета, и одновременно равнялся ходовому машинному слову. Это у 32х и более разрядов нет "физической основы", т. к. я не припомню ходовых систем счисления "длиннее" шестнадцатиричной. |
Время: 16:41. |
Время: 16:41.
© OSzone.net 2001-