Lý do bạn không tìm thấy tên cho điều này là nó không phải là hệ điều hành - đó là sự vắng mặt của một hệ điều hành. Thường thì điều này được gọi là một chương trình "trần kim loại". Ý tưởng chung về lập trình trần kim loại là có một chút mã có mục đích chung - một "bootloader" - thiết lập bộ điều khiển bộ nhớ và các thứ phần cứng khác trên bảng, sau đó chuyển điều khiển đến chương trình của bạn. (Hệ điều hành cũng có bộ nạp khởi động, do đó, chương trình của bạn là thay thế hệ điều hành.) Uboot là bộ tải khởi động nguồn mở khá phổ biến, do đó có thể là nơi tốt để bắt đầu tìm kiếm thông tin.
Một trong những điều khó hiểu về lập trình kim loại trần là, vì không có hệ điều hành để xử lý bất kỳ giao tiếp phần cứng nào, bạn phải suy nghĩ về "printf thực sự có ý nghĩa như thế nào những gì dữ liệu đi đến những gì ngoại vi? " và "làm cách nào để tôi đến đó?" Một lần nữa, một số bộ nạp khởi động cung cấp hỗ trợ cho loại điều này, mặc dù nó không phải luôn luôn tầm thường để kết nối tất cả lên. Một lần nữa, Uboot là một ví dụ điển hình.
Trong khi đó, bản thân thư viện C thực sự sẽ được trình biên dịch của bạn cung cấp, chứ không phải trình khởi động.
(Tôi cũng nên thêm, như là một lưu ý tên: Công ty tôi làm việc để tạo một loạt các trình biên dịch kim loại thô và Linux, được gọi là Sourcery CodeBench.Đối với CodeBench, các phiên bản kim loại thường được đặt tên theo đặc tả ABI mà chúng sử dụng để liên kết các chương trình, vì vậy các phiên bản "ELF" hoặc "EABI" là tất cả các trình biên dịch thô, và tôi nghĩ đó là một cách khá phổ biến để đề cập đến điều này sắp xếp mọi thứ, vì vậy bạn cũng sẽ thấy loại tên đó xung quanh.)
Nguồn
2012-10-25 07:44:41
Tôi không hoàn toàn chắc chắn ý bạn là gì. Bạn đang cố gắng tìm một hệ điều hành nào? Tôi biết [uC/OS] (http://en.wikipedia.org/wiki/MicroC/OS-II) được viết bằng C và chạy trên vi điều khiển, nhưng mặc dù vậy, các tính năng của nó khá tốt. – ppeterka
Nếu bạn chỉ tìm kiếm thứ gì đó có dấu chân nhỏ, Linux có thể dễ dàng phù hợp với hóa đơn mà không có bất kỳ chương trình không gian người dùng nào ngoại trừ cho bạn và libc. Mặc dù glibc mặc định có một dấu chân lớn, có rất nhiều dự án libc dấu chân nhỏ. – Linuxios