Added OS abstraction layer.