Macs use the ACPI Smart Battery Subsystem. The Linux SBS driver should be polling regularly and also receive GPEs when the battery reaches certain thesholds. But the polling frequency should be in the order of seconds, providing constant battery level progress and time to suspend at a critical condition.