Tôi không chắc bạn thực sự biết những gì bạn hỏi, nếu không bạn sẽ thực hiện nó theo cách có thể trả lời được. ... Nhưng để làm hết sức mình, trả lời câu hỏi của bạn.
Bạn muốn đặt chế độ và tìm ra một số 'bộ nhớ video'? Giống như chế độ dos cũ X ngày ?? Nếu đây là những gì bạn muốn, bạn cần lập trình với Framebuffer. Như đã nói, nó sẽ hoạt động tốt hơn nhiều với DirectFB. DirectFB giống như một lớp rất mỏng, với khả năng tăng tốc, trên Framebuffer. Mức độ thấp của nó, và thực sự nó thấp đến mức bạn muốn viết ứng dụng một cách hợp lý. Bạn sẽ có thể đặt các chế độ và có quyền điều khiển theo kiểu cấp thấp hơn. Nếu bạn muốn điều khiển kiểu trực tiếp trực tiếp, bạn phải viết Framebuffer thô, về cơ bản bạn sẽ tạo ra một số ram video. Nếu bạn cảm thấy Framebuffer hoạt động kém, tôi không thể đủ căng thẳng, hãy xem DirectFB. Nếu ai đó đã tải trình điều khiển KMS, Framebuffer của họ được đặt qua KMS / libdrm.
Bây giờ đối với libdrm, đó là lib không gian người dùng để làm việc với DRM kernel. Nó không phải là Framebuffer, nó không phải là API ứng dụng, nó là một thư viện thiết bị hệ thống. Nếu bạn muốn tạo trình điều khiển thiết bị mới, libdrm là cách tuyệt đối để đi. Ví dụ, libdrm-radeon. Linux không phải là DOS, cách duy nhất để giao tiếp trực tiếp với phần cứng là thông qua kernel. Tất cả các ứng dụng thông thường không bao giờ gửi mã trực tiếp đến phần cứng, nó phải được xử lý trong một số lib / API / cuộc gọi. Có những dự án đã thực hiện phương pháp trong nhân, cho mục đích học thuật / thử nghiệm, chẳng hạn như FBUI.
Tôi hy vọng tôi ít nhất có thể chỉ cho bạn đi đúng hướng, nếu không bạn nên bình luận và cũng cập nhật câu hỏi của bạn. Tôi đã theo dõi câu hỏi này kể từ khi thụ thai, đó là ít nhất hai lần di chuyển trước đây và không có câu trả lời gần hơn. Không có thêm thông tin, thực sự không còn gì có thể nói nữa.