Квант времени - это время в течение которого ОС позволяет работать потоку (процессу) непрерывно. По истечении времени, поток вытесняется другим. Когда настанет очередь опять выполняться этому потоку (процессу) ему снова будет предоставлен 1 квант времени. Так что переживать о том, что не хватит времени - не стоит - время всегда будет дано, пока процесс работает.
Квант времени в разных ОС разный, обычно это что-то в диапазоне 1-10 мс. В Линуксе квант динамический, вычисляется на основе приоритета процесса - чем выше приоритет процесса, тем больше ядро дает ему работать.
Не стоит забывать, что процессы часто сами в падают в режим ожидания и тем самым досрочно завершают свой квант времени. Это часто происходит, например, при ожидании завершения операций ввода/вывода или если поток пытается блокировать мьютекс, а он уже занят и т.п.
может ли теоретически возникнуть ситуация, что из-за нагруженности какой-нибудь процесс будет успевать только регистры восстановить, и ничего полезного не сделает, то есть будет постоянно нулевая работа за этот промежуток времени?
Из-за высокой нагрузки в системе может оказаться много процессов, имеющих одинаковый приоритет на выполнение и среди них надо будет делить все имеющиеся ядра и время. Естественно, что если таких процессов очень много, то пока после вытеснения очередь опять дойдет до процесса может пройти много времени. Эта ситуация означает нехватку ресурсов. Но, тем не менее, процессы будут выполняться (пока хватает виртуальной памяти).
Если у процесса низкий приоритет, но в системе есть постоянно работающие процессы с более высоким приоритетом, то есть шанс, что низкоприоритетному процессу никогда не достанется процессор для выполнения.