add first buffer impl basic for read/write