Если вы знаете емкость диска, байт на дорожку и количество поверхностей, то как рассчитать количество дорожек?
1 ответ
Количество дорожек полностью зависит от того, как производитель выложил диск внутри, чего вы не узнаете. Все современные диски используют LBA (адресация логических блоков), в которой ОС обращается к диску по секторам, не зная и не заботясь о том, как или где физически расположены секторы на пластинах (и сколько на самом деле платтеров есть). ).
Не только это, но и число секторов на дорожке зависит от того, насколько далеко от шпиндельного двигателя вы находитесь в данный момент; это не спираль, как на CD. Чем дальше от шпинделя, тем больше секторов на дорожке (и, следовательно, выше скорость передачи).
Поскольку вы не знаете количество секторов на дорожку (которое, опять же, зависит от того, где вы находитесь на диске), вы не можете определить, сколько существует дорожек, заданную емкость, количество секторов и количество поверхностей.
Другими словами, нет. Период.
ОБНОВИТЬ:
Если ваш учитель хочет получить математически правильный ответ, было бы (CAPACITY_IN_BYTES / BYTES_PER_TRACK) получить количество дорожек на диске, а если вы хотите, чтобы дорожки были на поверхности, разделите количество дорожек на диске на количество поверхностей.
Однако обратите внимание, что это совершенно неприменимо к современным дискам. Реальный ответ заключается в том, что он не может быть рассчитан, так как вы не знаете, сколько существует секторов на дорожку (и в разных зонах диска имеется переменное число) - следовательно, слишком много неизвестных, чтобы иметь возможность решить формула.