Since the question might come up again, here is a short summary;
What is ART and what does it mean?
ART is short for Android Runtime and a new feature in 4.4. The goal is to flip someday the switch from Dalvik to ART.
It's enabled this early, so hardware partners and interested developers can google provide feedback about it.
So nothing for the normal user.
At the moment, Android uses the virtual machine Dalvik. A Android Application is written in Java. Dalvik translates java code
into machine readable code at runtime, not compile time. So Dalvik is a interpreter for pre-compiled code from developers (sounds funny, doesn't it).
It uses a JIT (Just-in-Time) Compiler, to compile the code at runtime.
ART, however, has a different approach and that's why its so interesting. Instead of JIT it uses a AOT (Ahead of time) Compiler.
This means, the app will be translated into machine code when you install it, not when you actually launch it.
That's a big performance boost. It makes the application native. Since it will be used for nearly everything, this means a boost for everything (UI, Apps, calculations, ...) and a more efficient CPU Managment (longer battery life, while increasing performance).
Its nothing inside the kernel, it communicates with the kernel, like other parts of the OS.
So what are the disadvantages?
It needs more space, usually machine code is bigger than bytecode.
It needs to compile as soon as you flip the switch in developer settings and depending on your system configuration,
this might take a while and can cause problems.
I hope this explains the new and shiny ART a little bit, feel free to correct me, all in all i like the move from Google here
EDIT 1: https://source.android.com/devices/tech/dalvik/art.html
You can dual boot from Developer options if both are installed.)
The dalvikvm command line tool can run with either of them now. See runtime_common.mk. That is included from build/target/product/runtime_libdvm.mk or build/target/product/runtime_libdvm.mk or both.
A new PRODUCT_RUNTIMES variable controls which runtimes are included in a build. Include it within either build/target/product/core_minimal.mk or build/target/product/core_base.mk.
Add this to the device makefile to have both runtimes built and installed, with Dalvik as the default:
PRODUCT_RUNTIMES := runtime_libdvm_default
PRODUCT_RUNTIMES += runtime_libart