1. A system for supporting efficient packet processing in a network environment, the system comprising: a network device comprising a microprocessor and a memory; a plurality of packet buffers in the memory of the network device; a direct memory access (DMA) resource pool, wherein said DMA resource pool comprises one or more DMA resources, and wherein each said DMA resource in said DMA resource pool points to a chain of packet buffers in the memory; a thread scheduling engine operating on a network host machine that pre-assigns different thread keys to each of a plurality of software threads before each of the software threads requests access to the one or more DMA resources; and a resource manager, which allocates DMA resources for use by the software threads, wherein a requesting software thread from the plurality of software threads requests access to a DMA resource by presenting its pre-assigned thread key to the resource manager, wherein the resource manager maps an assigned DMA resource to the pre-assigned thread key associated with the requesting software thread; and wherein the assigned DMA resource enables the requesting software thread to access a particular chain of packet buffers in the memory using the thread key pre-assigned to that software thread.