1. A system for rendering graphics in a computing system, comprising: a command buffer configured to store a set of rendering commands, wherein the rendering commands include at least one of a state change command, a resource allocation command, a direct memory access (DMA) command, buffer data, and a synchronization command; a software client configured to write the rendering commands into the command buffer; and a software service configured to render an image corresponding to the rendering commands by: reading the rendering commands from the command buffer; and executing the rendering commands.