Treble is just another layer of abstraction on top of HALs and more binder use. Android HALs don't replace kernel drivers and so it's still the same distance from mikrokernel as it ever was, and neither did Treble further the split from mainline Linux.
If anything, Android 8 reduced the gap to mainline with switching e.g. to DRM synchronization fences.
Reading through AOSP documentation and AOSP source code tells another story.
> Binderized HALs. HALs expressed in HAL interface definition language (HIDL). These HALs replace both conventional and legacy HALs used in earlier versions of Android. In a Binderized HAL, the Android framework and HALs communicate with each other using binder inter-process communication (IPC) calls. All devices launching with Android 8.0 or later must support binderized HALs only.
>
> Passthrough HALs. A HIDL-wrapped conventional or legacy HAL. These HALs wrap existing HALs and can serve the HAL in binderized and same-process (passthrough) modes. Devices upgrading to Android 8.0 can use passthrough HALs.
> All other HALs provided by the vendor image can be in passthrough OR binderized mode. In a fully Treble-compliant device, all of these must be binderized.
> Legacy HALs (also deprecated in Android 8.0) are interfaces that predate conventional HALs. A few important subsystems (Wi-Fi, Radio Interface Layer, and Bluetooth) are legacy HALs. While there's no uniform or standardized way to describe a legacy HAL, anything predating Android 8.0 that is not a conventional HAL is a legacy HAL. Parts of some legacy HALs are contained in libhardware_legacy, while other parts are interspersed throughout the codebase.
Nothing you quoted changes anything. Yes, they added more abstraction on top of HALs. No, that doesn't mean HALs are now any "closer to the metal" than before.
Here are some obvious hints to why this is not true:
* there are no HALs defined for even 1/3rd of what kernel drivers you would need to run a modern device
* a bunch of the HALs require you to provide handles obtained from standardized kernel interfaces (e.g. the aforementioned sync objects)
Finally, of course: all HALs run in userland! All their power is in being granted SELinux access to various kernel interfaces! Vendors can not change these rules or risk failing certification.
> > Legacy HALs (also deprecated in Android 8.0) are interfaces that predate conventional HALs. A few important subsystems (Wi-Fi, Radio Interface Layer, and Bluetooth) are legacy HALs.
Now it looks more like a pseudo-mikrokernel, with drivers running on their own processes, talking via Android IPC with the kernel layer.
Also it has a much more security knobs turned on as mainline, and many features trimmed down that are irrelevant to Android userspace.