Bạn cần hiểu những gì syscalls là. Trên Linux, chúng là API đất thấp nhất có thể user (ngược lại Win32 API có thể trộn các syscalls hạt nhân thực với một số hàm thư viện. libc
cũng kết hợp trên Linux). fork(2), execve(2), open(2), pipe(2), mmap(2), read(2), poll(2), close(2), dup2(2), sigaction(2) là syscalls quan trọng (nhưng có khoảng 300 trong số họ).
Đừng mong đợi từng chức năng của cửa sổ khả dụng trên Linux (và ngược lại). Thậm chí không nghĩ như vậy tương đương. Nhận suy nghĩ khác về Linux. (Cụ thể, processes rất khác nhau trên Linux và trên Windows).
Đừng quên rằng Linux là phần mềm miễn phí và bạn có thể đi sâu vào mã nguồn của mọi chức năng bạn đang sử dụng trên Linux. Đọc nó, tìm kiếm, cải thiện nó .....
Đọc trang intro(2) trang đầu tiên và một số trang người đàn ông khác (đặc biệt là syscalls(2), intro(3) v.v ...). Đọc cũng ví dụ: Advanced Linux Programming và Advanced Unix Programming.
Một số thư viện cố gắng đưa ra yếu tố và cung cấp sự trừu tượng chung cho cả Posix (ví dụ: Linux) và Windows. Cụ thể là Qt (và cũng là Gtk).
Nếu bạn quan tâm đến giao diện đồ họa, hãy hiểu vai trò quan trọng của X11 (lưu ý rằng máy chủ X11 gần nhất với màn hình bàn phím &; hầu hết các ứng dụng đồ họa là máy khách X11). Trong năm 2016, X11 có xu hướng bị thay thế bởi Wayland (nhưng bạn sẽ không nhận thấy rằng việc triển khai "chi tiết" - một thực tế lớn - nếu bạn mã chống lại Qt hoặc GTK)
Nếu bạn viết một ứng dụng chỉ sử dụng các cuộc gọi Qt (những người không được ghi nhận là đặc trưng cho Linux hoặc Windows) ngoài các hàm C++ chuẩn, nó phải là nguồn di động từ Linux sang Windows và ngược lại.
Nguồn
2013-01-04 18:04:36
[Mainsoft] (http://www.mainsoft.com/content/mainsoft-unix-and-linux-overview) cung cấp một khả năng (mặc dù, ở mức giá nghiêm trọng). –
Qt là một lớp trừu tượng. Nó có các triển khai cụ thể nền tảng ánh xạ các lệnh Qt đến hoạt động gốc cơ bản. Nó phụ thuộc vào đó gọi win32 api bạn muốn cổng. Một số cửa sổ như vậy cụ thể mà họ không có khả năng làm việc ở bất cứ nơi nào khác. – Chriseyre2000
Win32 là một bộ các thư viện bán liên quan lớn cho mọi thứ từ các yếu tố GUI đến đồ họa 3D đến thao tác socket. Linux có nhiều mô đun hơn và bạn có thể muốn chọn và chọn một số thư viện để sử dụng trong việc chuyển dự án của mình. – meagar