CMOS - это встроенные в компьютере часы, подпитываемые от батарейки, в простонародье называемой таблеткой за сходство по форме с таблеткой. Можно менять содержимое часов CMOS. Содержимым CMOS является дата и время. Их можно поменять как из Windows, так и из BIOS. Если часы в Windows стали "барахлить", значит пора менять эту батарейку таблетку. Как это сделать, можно почитать здесь.
BIOS - это набор программного обеспечения, прошитого в ПЗУ компьютера, то есть не стирающегося при выключении питания компьютера. В это программное обеспечение входит набор компьютерных программ, облегчающих пользователям ПК и разработчикам программного обеспечения работу с компьютером, на котором пока ещё не установлено никаких операционных систем. Для пользователя BIOS представляет собой меню, в которое можно зайти и сделать специальные начальные настройки, такие, как установка даты и времени, выбор устройства, с которого начинать загрузку (например с CD/DVD если требуется установить операционную систему) и т.п.
Для разработчика программного обеспечения BIOS может представлять интерес как набор полезных подпрограмм, к которым можно обратиться для получения нужного эффекта. То есть чтобы не программировать с нуля такие вещи, как опрос клавиатуры, вывод сообщения на экран, можно задать выполнить данную работу уже созданным подпрограммам (находящимся в БИОС), указав им лишь задание, которое необходимо выполнить. То есть можно, наверное, сказать, что это своеобразное низкоуровневое API.
Перепрошить BIOS. Никогда не пробовал это делать, но слышал что другие перепрошивали. Говорят что сейчас в новых ПК BIOS хранится во флеш памяти (встроенной флешке). А как известно информацию на флешке можно менять. Раньше видимо было как-то иначе (хранилось в ПЗУ), но вроде и ПЗУ можно менять, ведь есть же такой прибор, как программатор ПЗУ.