NX-OS uses a modular architecture based on Linux with integrated support for routing protocols, virtualization, and high availability features like Graceful Restart. Key components that enable high availability include the HA Manager, PSS database, and separation of control and data planes to allow non-stop forwarding during process restarts or upgrades.