Bài viết này tổng hợp slide môn lập trình hệ thống là môn học Khoa Mạng máy tính và Truyền thông, Trường ĐH Công nghệ thông tin – ĐHQG TP.HCM.
Giới thiệu
Lập trình hệ thống là viết những ứng dụng cho hệ thống. Điểm khác biệt chủ yếu của lập trình hệ thống đối với lập trình ứng dụng là lập trình ứng dụng nhằm viết những phần mềm phục vụ cho người dùng máy tính, trong khi đó, lập trình hệ thống nhằm xây dựng những phần mềm phục vụ cho phần cứng máy tính.
Môn học cung cấp cho sinh viên những khái niệm cơ bản về lập trình hệ thống máy tính ở dạng ngôn ngữ Asssembly, cách chuyển đổi ngôn ngữ cấp cao sang mã máy và ngược lại. Môn học cung cấp kiến thức và kỹ năng tối ưu hóa chương trình, những khái niệm về stack, pointer, cache và kiến trúc máy tính để từ đó xây dựng được chương trình an toàn hơn, hiệu quả hơn và có tầm nhìn hệ thống hơn. Đồng thời, kiến thức của môn này còn phục vụ cho các kỹ thuật dịch ngược, debug và kiểm lỗi phần mềm.
Slide môn học là slide của Randy Bryant and Dave O’Hallaron từ Đại học Carnegie Mellon (Carnegie Mellon University) – là một trường đại học nghiên cứu tư thục ở Pittsburgh, Pennsylvania.
Nội dung tài liệu
Slide này gồm có 26 phần nhưng chỉ có khoảng 7 phần được đưa vào môn học Lập trình hệ thống.
Một số hình ảnh nội dung Slide:
Tải xuống
Bạn có thể tham khảo thêm Giáo trình môn học lập trình hệ thống tại Sách Computer Systems – A Programmer’s Perpective (3rd Edition).
Chương | Dung lượng | Link Google Drive | Link dự phòng (Mega.NZ) |
---|---|---|---|
01. Overview | 8.1 MB | ||
02. Bits – Ints | 1.9 MB | ||
03. Float | 0.28 MB | ||
04. Machine basics | 0.6 MB | ||
05. Machine control | 1.9 MB | ||
06. Machine procedures | 2.8 MB | ||
07. Machine data | 0.28 MB | ||
08. Machine advanced | 0.67 MB | ||
09. Memory hierarchy | 1.5 MB | ||
10. Cache memories | 1.6 MB | ||
11. Linking | 0.28 MB | ||
12. Exceptions | 0.25 MB | ||
13. Signals | 0.23 MB | ||
14. IO | 0.24 MB | ||
15. VM Concepts | 0.24 MB | ||
16. VM system | 0.5 MB | ||
17. Allocation basic | 0.22 MB | ||
18. Allocation advanced | 0.26 MB | ||
19. Internet | 0.49 MB | ||
20. Network programming | 0.68 MB | ||
21. Web services | 0.47 MB | ||
22. Concurrent programming | 0.29 MB | ||
23. Sync basic | 0.27 MB | ||
24. Sync advanced | 0.23 MB | ||
25. Optimization | 0.37 MB | ||
26. Parallelism | 0.49 MB |