Skip to main content

Hệ điều hành

Enrollment in this course is by invitation only

VỀ MÔN HỌC NÀY!

Xin chào tất cả các bạn!
Các bạn sinh viên thân mến, các bạn đang bắt đầu làm quen với môn học Hệ điều hành trong chương trình Đại học FUNiX. Thuật ngữ "Hệ điều hành" được biết đến rộng rãi bởi mọi người, mà hầu như ai cũng từng nghe đến những cái tên như Windows 10, Android, iOS, MacOS...  khi lần đầu tiên sử dụng hoặc lựa chọn khi mua máy tính hoặc thiết bị di động như smartphone. Chúng ta cũng đều hiểu rằng, để các thiết bị đó có thể hoạt động và cài đặt các ứng dụng tiện ích đó thì hệ điều hành luôn phải được cài đặt trước tiên. Vậy hệ điều hành có vai trò gì trong hệ thống máy tính? Hệ điều hành hoạt động như thế nào? Khóa học này được thiết kế để cung cấp cho học viên các kiến thức về kiến trúc và nguyên lý hoạt động của hệ điều hành máy tính.

ĐỐI TƯỢNG THAM GIA

  • Là những người có mong muốn học lấy bằng Đại Học
  • Là những người muốn bổ sung kiến thức, kỹ năng cơ bản trong hệ điều hành máy tính
  • Là những người muốn có kỹ năng quản lý tài nguyên trên máy tính gồm phần cứng và phần mềm ứng dụng, dữ liệu
  • Là những người muốn khám phá một số hoạt động của hệ điều hành Linux, xây dựng được chương trình tương tác và sử dụng các cơ chế điều khiển của hệ điều hành

MỤC TIÊU MÔN HỌC

Sau khi học xong môn này, học viên sẽ đạt được các chuẩn kiến thức, kỹ năng đầu ra như sau:

  • Trình bày khái niệm cơ bản và kiến trúc hệ điều hành hiện đại.
  • Sử dụng các thao tác để xem thông tin hệ thống trong hệ điều hành.
  • Sử dụng và thao tác ngôn ngữ C / C++ trên Linux
  • Giải thích được khái niệm tiến trình, trạng thái và vòng đời của tiến trình.
  • Sử dụng các thao tác để làm việc với thư mục trong Linux.
  • Trình bày được các dạng của bộ lập lịch CPU.
  • Giải thích được thuật toán và cơ chế lập lịch của hệ điều hành Linux.
  • Trình bày và giải thích được các kỹ thuật về cấp phát bộ nhớ.
  • Thực hành được các câu lệnh làm việc với Bash Shell
  • Giải thích được khái niệm và các dạng của phân trang tương ứng.
  • Trình bày khái niệm về bộ nhớ ảo và thời gian truy cập của bộ nhớ trung bình.
  • Trình bày khái niệm của bộ đệm và phân bổ khung cho tiến trình.
  • Trình bày khái niệm về chia sẻ bộ nhớ và cơ chế đồng bộ hóa.
  • Giải thích được các cơ chế đồng bộ hóa tương ứng.
  • Thao tác và trình bày được bài toán Producer - Consumer
  • Trình bày khái niệm về tắc nghẽn (deadlock)
  • Giải thích được kỹ thuật và cách kiểm soát đối với deadlock.
  • Trình bày được cấu trúc và thao tác với thuộc tính trong quản lý tệp tin của hệ điều hành
  • Giải thích được những lời gọi hệ thống khi làm việc với hệ thống nhập/xuất
  • Sử dụng các thao tác để làm việc với tệp tin trong hệ điều hành
  • Trình bày được các phương pháp phân bổ tệp.
  • Thao và giải thích được hoạt động của đa luồng / đa tiến trình.
  • Biên dịch và chạy chương trình đa luồng / đa tiến trình trong hệ điều hành Linux

THÔNG TIN VỀ KHÓA HỌC


TRẢI NGHIỆM HỌC TẬP

Môn học sẽ có 4 học phần với 21 bài học. Mỗi bài sẽ có một (hoặc vài) đoạn video yêu cầu học viên phải xem kỹ, thực hành theo hướng dẫn và trả lời quiz. Xuyên suốt môn học, các bài Quiz, Lab sẽ giúp các bạn tăng cường việc ghi nhớ và vận dung lý thuyết đã học vào các bài toán thực tế. Ở mỗi phần học, môn học thiết kế các bài tập lớn (Assignment) giúp các bạn có hình dung và trải nghiệm thao tác quản lý trên hệ điều hành.

Trong thời gian học (dự kiến là 6 tuần), việc phân bổ tuần học là rất quan trọng. Nếu các bạn có bất cứ câu hỏi nào hãy kết nối với Mentor để được giải đáp.


ĐẶC ĐIỂM CỦA MÔN HỌC

Khóa học được thiết kế nhằm cung cấp các kiến thức và kỹ năng nền tảng mà một kỹ sư phần mềm cần phải có:

  • Hiểu về các khái niệm chính về hệ điều hành.
  • Hiểu ngôn ngữ Shell cơ bản trên Linux.
  • Hiểu về các khái niệm chính về quản lý tiến trình.
  • Hiểu về các khái niệm chính về quản lý bộ nhớ.
  • Hiểu về các khái niệm chính về hệ thống tệp tin.
  • Hiểu về các khái niệm chính của hệ thống I/O.
  • Hiểu về các khái niệm chính về deadlock.
  • Sử dụng hệ điều hành Linux.
  • Sử dụng lệnh shell cơ bản trong hệ thống Linux.
  • Hiểu ngôn ngữ C / C++ cơ bản trên Linux.

CHUYÊN GIA THIẾT KẾ VÀ PHẢN BIỆN MÔN HỌC

THIẾT KẾ MÔN HỌC

Chuyên gia Bùi Trọng Tùng

  • Giảng viên tại Viện Công nghệ thông tin và Truyền thông, Đại học Bách khoa Hà Nội
  • 10 năm kinh nghiệm giảng dạy và đào tạo thực hành tại các trường Đại học, cơ quan, công ty (Đại học Bách khoa Hà Nội, Đại học Hùng Vương, Đại học Tây Bắc, Bộ Công an, Tập đoàn VNPT) trong các lĩnh vực Mạng máy tính, An toàn bảo mật thông tin
  • 7 năm kinh nghiệm quản trị mạng và hệ thống
  • Personal Website: https://users.soict.hust.edu.vn/tungbt/
PHẢN BIỆN MÔN HỌC

Chuyên gia Nguyễn Quốc Long

  • Giảng viên bộ môn IT – Trường Đại học FPT 
  • 12 năm kinh nghiệm làm việc trong lĩnh vực CNTT, thiết kế và thi công hệ thống Mạng máy tính và nghiên cứu An toàn thông tin.
  • 10 năm giảng dạy và đào tạo thực hành các môn học, chứng chỉ quốc tế (Đại học FPT, Đại học Duy Tân, iSpace, NIIT, Trường Tân Center)
  • Đạt các chứng chỉ: Google UX Certificate, UI/UX Design của California Institute of the Arts, Web Design for Everybody của University of Michigan...
  • Profile Online: https://www.linkedin.com/in/nguyen-quoc-long-18534b19b/

FUNIX WAY

Mục đích của các chương trình học theo FUNiX Way là người học tự tin và thành thạo trong môi trường số, có thể kiếm được thu nhập bằng nghề mà mình theo học hoặc sử dụng những gì đã học được để làm tốt hơn việc hiện tại, có động lực và khả năng nâng cao tay nghề, có thể làm thành viên dự án chuyên môn và tham gia cộng đồng nghề như một thành viên có trách nhiệm.

NGUỒN HỌC LIỆU

Khóa học MOOC này được cung cấp trên nền tảng Udemy. Đây là nền tảng cung cấp các khóa học trực tuyến đại chúng mở được đánh giá rất cao trong các nền tảng MOOC hiện nay trên thế giới.


KÊNH PHẢN HỒI

FUNiX sẵn sàng đón nhận và trao đổi về mọi ý kiến góp ý, phản hồi liên quan đến học liệu qua email program@funix.edu.vn