Oli and Olin have explained the strengths of CMOS, but let me take a step back.
TL:DR: Complementary logic allows a rail-to rail output voltage swing, and MOSFET transistors are a very scalable technology (billions of transistors can be obtained on a small surface) with some very useful properties (compared to BJT).
Why CMOS?
The need for complementary gates is due to the fact that the simplest gate concept is based on the idea of pull-up and pull-down; this means that there is a device (a transistor or a set of transistors) which pulls the ouput high (to '1') and another device to pull it down (to '0').
The enhancement nMOS, which is the best performing MOSFET, needs a VGS>VT>0.7V in order to turn on and allow a current to flow; for this reason, it works well as a pull-down device, but not so well as a pull-up (it turns off before allowing output voltage to raise to VDD). Hence the idea to use the pMOS, which performs a bit worse (because holes move slower than electrons, but this is another story) but acts perfectly as a pull-up.
So complementary (the 'C' in CMOS) because you use two device that behave in the opposite way and are thus complementary. Then, the logic is inverting because nMOS (that pulls down) requires a high input voltage ('1') to switch on and pMOS requires a low voltage ('0').
But why is MOS good?
And some additional informations: as Olin also said, the main reason for the spreading of MOSFET technology is that it is a planar device, that means that is suitable to be made on the surface of a semiconductor.
This is because, as you can see in the picture, building a MOSFET (this is a n-channel, the p-channel in the same substrate requires an additional doped region called n-well) basically consists in doping the two n+ regions and deposing the gate and the contacts (very very simplified).
Транзистори BJT сьогодні також виготовлені за MOS-подібною технологією, що означає «травлення» на поверхні, але в основному вони складаються з трьох шарів напівпровідників, по-різному легованих, тому вони в першу чергу призначені для дискретної технології. Насправді, так, як вони зараз побудовані, є створення цих трьох шарів на різній глибині кремнію, і (лише для того, щоб уявити), в останніх технологіях вони займають площу в порядку мікрометри, або близько того, в той час як MOS-транзистори можуть бути вбудована технологія <20 нм (регулярно оновлюйте це значення) із загальною площею, яка може становити приблизно менше 100 нм². (зображення праворуч)
Тож ви можете бачити, що, додавши до інших властивостей, транзистор MOSFET набагато краще (в сучасній технології) для досягнення дуже великої інтеграції в масштабі або VLSI.
Так чи інакше, біполярний транзистор все ще широко застосовується в аналоговій електроніці для їх кращих властивостей лінійності. Крім того, BJT швидше, ніж MOSFET, побудований за тією ж технологією (мається на увазі як розміри транзисторів).
CMOS проти MOS
Зауважте, що CMOS не є еквівалентом MOS: оскільки C призначений для "Комплементарного", це особлива (навіть якщо широко використовується) конфігурація для воріт MOS, тоді як високошвидкісні схеми часто використовують динамічну логіку, яка спрямована в основному на зменшення вхідної ємності ворота. Насправді, спроба підштовхнути технологію до межі, якщо на вході є дві ємності затвора (як це має CMOS) - це причина втрати продуктивності. Можна сказати, що достатньо збільшити струм, поданий на попередньому етапі, але, для прикладу, для швидкості зарядки 2х потрібно 2х зарядного струму, що означає 2x провідність, що досягається при ширині 2х каналів, і - несподіванка - що подвоює вхідна ємність.
Інші топології, як логіка прохідного транзистора, можуть спростити структуру певних воріт і іноді досягти більшої швидкості.
Про інтерфейси
Змінюючи тему, коли йдеться про мікроконтролери та інтерфейси, важливо пам’ятати, що високий вхідний опір воріт CMOS робить дуже важливим для того, щоб штифти вводу / виводу ніколи не залишалися плаваючими (якщо вони мають захист, це забезпечується внутрішньо), як їх Ворота можуть піддаватися впливу зовнішнього шуму і приймати непередбачувані значення (з можливою засувкою та пошкодженням). Отже, заявляючи, що пристрій має характеристики CMOS, слід також порадити вам це.