Mục tiêu của môn học − Về kiến thức: Cung cấp cho sinh viên: • Khái niệm, kiến thức cơ sở về hệ điều hành đa chương trình, đa người dùng, tiêu biểu là hệ điều hành Unix • Các lệnh cơ bả
Trang 11 Thông tin về giảng viên
− Chức danh, học hàm, học vị: ThS
− Thời gian, địa điểm làm việc: Từ 8g đến 16h30g, P305, nhà E3, Khoa công nghệ thông tin, Đại học công nghệ, ĐHQGHN, 144 Đường Xuân Thuỷ, Cầu
Giấy, Hà Nội
trường Đại học công nghệ, ĐHQGHN, 144 Đường Xuân Thuỷ, Cầu Giấy, Hà Nội
− Các hướng nghiên cứu chính: Tính toán song song, các phương pháp lập luận
mờ
− TS Nguyễn Hải Châu, Khoa CNTT, E3, ĐHCN, ĐHQGHN, 144, Xuân Thuỷ,
Cầu Giấy, Hà Nội ĐT: 7547813, Email: chaunh@vnu.edu.vn
− ThS Đặng Thanh Hải, Khoa CNTT, E3, ĐHCN, ĐHQGHN, 144, Xuân Thuỷ,
Cầu Giấy, Hà Nội ĐT: 7547813, Email: haidt82@yahoo.com
− ThS Trương Thị Thu Hiền, Khoa CNTT, E3, ĐHCN, ĐHQGHN, 144, Xuân
Thuỷ, Cầu Giấy, Hà Nội ĐT: 7547813, Email: hienttt@vnu.edu.vn
2 Thông tin chung về môn học
− Mã môn học:
− Môn học: - Bắt buộc:
- Lựa chọn:
− Các môn học tiên quyết: Nguyên lý hệ điều hành, mạng và truyền thông
− Các môn học kế tiếp:
− Các yêu cầu đối với môn học (nếu có):
− Giờ tín chỉ đối với các hoạt động:
Trang 2• Tự học: 0
− Địa chỉ Khoa/ bộ môn phụ trách môn học: Bộ môn Các hệ thống thông tin, P304-305 nhà E3, ĐHQGHN, 144 đường Xuân Thuỷ, Cầu Giấy, Hà Nội
3 Mục tiêu của môn học
− Về kiến thức: Cung cấp cho sinh viên:
• Khái niệm, kiến thức cơ sở về hệ điều hành đa chương trình, đa người dùng, tiêu biểu là hệ điều hành Unix
• Các lệnh cơ bản thao tác với hệ điều hành Unix và Linux như thao tác với
hệ thống tệp, thao tác với người dùng, hệ thống mạng trong Unix
• Các cách làm việc, ngôn ngữ lập trình của hệ điều hành Unix
− Về kỹ năng:
• Sinh viên bước đầu làm quen với làm việc và quản trị hệ thống trên một hệ điều hành đa người dùng
− Thái độ, chuyên cần, nghiêm chỉnh chấp hành giờ học trên lớp và giờ tự học, chuẩn bị tốt các câu hỏi trước khi lên lớp
4 Tóm tắt nội dung môn học
Giới thiệu về hệ điều hành Unix, xuất xứ, các đặc trưng cơ bản của Unix so với các hệ điều hành khác
− Giới thiệu các lệnh thao tác với hệ thống
− Các lệnh thao tác với hệ thống tệp
− Các lệnh thao tác với việc quản trị quá trình
− Các lệnh liên quan đến việc quản lý người dùng
− Mạng và truyền thông trên Unix
− Lập trình Shell và C trên Unix
5 Nội dung chi tiết môn học
Chương 1 Giới thiệu chung về Unix
1.1 Giới thiệu về Unix
1.1.1 Xuất xứ và quá trình tiến hoá hệ điều hành
1.1.2 Một số đặc trưng của Unix
1.2 Sơ bộ về các thành phần
1.2.1 Sơ bộ về nhân
1.2.2 Sơ bộ về shell
1.3 Giới thiệu về sử dụng lệnh trong Linux
1.3.1 Các quy ước khi viết lệnh
Trang 31.3.2 Làm đơn giản các thao tác gõ lệnh
1.3.3 Tra cứu lệnh bằng man
Chương 2 Thao tác với hệ thống
2.1 Quá trình khởi động
2.2 Thủ tục đăng nhập và các lệnh thoát khỏi hệ thống 2.2.1 Đăng nhập
2.2.2 Ra khỏi hệ thống
2.3 Lệnh thay đổi mật khẩu
2.4 Lệnh thiết đặt ngày giờ, xem lịch hệ thống
2.4.1 Lệnh xem, thiết đặt ngày giờ
2.4.2 Lệnh xem lịch
2.5 Lệnh xem thông tin hệ thống
2.6 Các lệnh hệ thống khác
Chương 3 Hệ thống tệp
3.1 Tổng quan về hệ thống tệp
3.1.1 Một số khái niệm
3.1.2 Sơ bộ kiến trúc nội tại của hệ thống
3.1.3 Giới thiệu về inode, các liên kết tượng trưng
3.2 Quyền truy nhập thư mục và tệp
3.2.1 Quyền truy nhập
3.2.2 Các lệnh cơ bản
3.3 Thao tác với thư mục
3.3.1 Một số thư mục đặc biệt
3.3.2 Các lệnh cơ bản về thư mục
3.4 Các lệnh làm việc với tệp
3.4.1 Các kiểu tệp có trong Linux
3.4.2 Các lệnh tạo tệp
3.4.3 Các lệnh thao tác trên tệp
3.4.4 Các lệnh thao tác theo nội dung tệp
3.4.5 Các lệnh tìm tệp
3.5 Nén và sao lưu các tệp
3.5.1 Sao lưu các tệp
3.5.2 Nén dữ liệu
3.6 Mount và unmount
Trang 4Chương 4 Quản trị tiến trình
4.1 Tiến trình trong Unix
4.1.1 Sơ bộ về tiến trình
4.1.2 Các hệ thống con trong nhân
4.1.3 Các cấu trúc điều khiển
4.2 Các lệnh cơ bản liên quan đến tiến trình
4.2.1 Lệnh fg và lệnh bg
4.2.2 Hiển thị quá trình đang chạy bằng lệnh ps
4.2.3 Hủy quá trình với lệnh kill
Chương 5 Quản trị tài khoản người dùng
5.1 Tài khoản người dùng
5.2 Các lệnh quản lý người dùng
5.2.1 Thêm người dùng
5.2.2 Thay đổi thuộc tính người dùng
5.2.3 Xóa bỏ người dùng
5.3 Các lệnh cơ bản liên quan đến nhóm người dùng 5.3.1 Thêm nhóm người dùng
5.3.2 Sửa đổi thuộc tính của nhóm người dùng 5.3.3 Xóa nhóm người dùng
5.4 Các lệnh cơ bản khác
Chương 6 Truyền thông và mạng trong Unix
6.1 Lệnh truyền thông
6.1.1 Lệnh write
6.1.2 Lệnh mail
6.1.3 Lệnh talk
6.1.4 Lệnh telnet và ssh
6.1.5 Lệnh ftp và wget
6.2 Các dịch vụ mạng trong Unix
6.2.1 Hệ thống thông tin mạng NIS
6.3 Hệ thống tệp trên mạng
6.3.1 Hệ thống mạng NFS
6.3.2 Sử dụng mount và umount với NFS
Chương 7 Lập trình Shell trên Unix
Trang 57.1 Giới thiệu về lập trình shell
7.1.1 Cách thức pipes
7.1.2 Các yếu tố cơ bản trong lập trình shell
7.2 Một số lệnh lập trình trên shell
7.2.1 Sử dụng các toán tử bash
7.2.2 Điều khiển luồng
7.2.3 Các toán tử định hướng vào ra
7.2.4 Hiện dòng văn bản
7.2.5 Lệnh read độc dữ liệu cho biến người dùng
7.2.6 Lệnh set
7.2.7 Tính toán trên các biến
7.2.8 Chương trình ví dụ
Ôn tập
6 Học liệu
6.1 Học liệu bắt buộc
[1] Hà Quang Thụy, Nguyễn Trí Thành, Hệ điều hành Unix và Linux, 2004, bản điện
tử
6.2 Học liệu tham khảo
[2] M J Bach, The design of the Unix operating system, Prentice-Hall, 1986
[3] Daniel P Bovet, Marco Cesati, Understanding Linux Kernel, 2nd edition,
O'Reilly & Associates, 2002
[4] W Richard Stevens, Advanced Programming in the UNIX Environment,
Addison-Wesley, 1992
[5] S Kochan, P Wood, Unix shell programming, 3rd edition, Sam Publishing, 2003
7 Hình thức tổ chức dạy học
7.1 Lịch trình chung:
Nội dung (ND)
Hình thức tổ chức dạy học môn học
Tổng
hành, thí nghiệm, điền dã
Tự học, tự nghiên cứu
Lý thuyết Bài tập Thảo luận
ND 1: Giới thiệu về hệ điều
hành Unix
Trang 6ND 2: Cách làm việc và các
thao tác cơ bản với hệ thống
Unix
ND 3: Hệ thống tệp của Unix,
quyền truy cập tệp và thư
mục
ND 4: Khái niệm tiến trình và
ND 5: Quản trị tài khoản
người dùng và nhóm người
dùng
ND 6: Truyền thông cơ bản
trong Unix
ND 7: Lập trình Shell trên
Unix
Trang 77.2 Lịch trình tổ chức dạy học cụ thể
Nội dung 1, tuần 1: Giới thiệu chung về hệ điều hành Unix
Hình thức tổ
chức dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
Lý thuyết Từ
đến Tại GĐ2
Giới thiệu về hệ điều hành Unix, các hệ Unix-like
và Linux Bài tập Từ
đến Tại GĐ2 Thảo luận Từ
đến Tại GĐ2 Thực hành,
thí nghiệm,
điền dã, …
Từ
đến Tại Phòng
TH số …
Tự học, tự
nghiên cứu Tại thư viện hoặc ở
nhà
Nắm được các khái niệm cơ sở
về hệ điều hành Unix
Nội dung 2, tuần 2: Thao tác cơ bản với hệ điều hành Unix
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
đến Tại GĐ2
Cách làm việc và các thao tác cơ bản với hệ thống Unix
đến
Thử nghiệm đăng nhập, đăng xuất
hệ thống, thử các
Trang 8Tại GĐ2 lệnh cơ bản
đến Tại GĐ2 Thực hành, thí
nghiệm, điền dã, …
Tự học, tự nghiên
Nội dung 3, tuần 3: Hệ thống tệp, quyền truy cập tệp
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
đến Tại GĐ2
Hệ thống tệp của Unix, quyền truy cập tệp và thư mục
Nghiên cứu khái niệm hệ thống tệp, tệp, thư mục trong Windows để có cơ
sở so sánh
đến Tại GĐ2
Cấu trúc hệ thống tệp, quyền truy cập, liên kết mềm
và cứng
đến Tại GĐ2 Thực hành, thí
nghiệm, điền dã, …
Tự học, tự nghiên
cứu Tại thư viện, ở nhà Làm các bài tập được giao về nhà
Nội dung 4, tuần 4: Hệ thống tiến trình
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
Trang 9Lý thuyết Từ
đến Tại GĐ2
Khái niệm tiến trình, các lệnh thao tác với tiến trình
đến Tại GĐ2
Thử nghiệm các lệnh với tiến trình
đến Tại GĐ2 Thực hành, thí
nghiệm, điền dã, …
Tự học, tự nghiên
cứu Tại thư viện, ở nhà Phân biệt được sự khác nhau của tiến
trình và chương trình
Nội dung 5, tuần 5: Quản trị người dùng và nhóm người dùng
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
đến Tại GĐ2
Quản trị tài khoản người dùng và nhóm người dùng
đến Tại GĐ2
Thực hành các lệnh về quản trị người dùng
đến Tại GĐ2 Thực hành, thí
nghiệm, điền dã, …
Trang 10Tự học, tự nghiên
Nội dung 6, tuần 6: Truyền thông cơ sở trong Unix
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
đến Tại GĐ2
Truyền thông cơ bản trong Unix
đến Tại GĐ2
Các lệnh truyền thông cơ bản trong Unix: write, mail, talk
đến Tại GĐ2 Thực hành, thí
nghiệm, điền dã, …
Tự học, tự nghiên
logic trong một ứng dụng đơn giản
Nội dung 7, tuần 7, 8, 9: Lập trình shell trên Unix
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
đến Tại GĐ2
Giới thiệu cách lập trình trên shell script, sử dụng shell script để xây dựng nhanh các ứng dụng trên Unix
Trang 11Bài tập Từ
đến Tại GĐ2
Làm các bải tập lập trình shell
đến Tại GĐ2
-
Thực hành, thí
nghiệm, điền dã, …
Tự học, tự nghiên
Nội dung 8, tuần 10: Ôn tập
Hình thức tổ chức
dạy học Thời gian, địa điểm Nội dung chính Yêu cầu SV chuẩn bị Ghi chú
đến Tại GĐ2
Ôn tập các nội dung
đã học để trợ giúp cho các giờ thực hành và chuẩn bị thi hết môn
đến Tại GĐ2
đến Tại GĐ2
-
Thực hành, thí
nghiệm, điền dã, …
Tự học, tự nghiên
UNIX/Linux và Windows
Trang 128 Chính sách đối với môn học và các yêu cầu khác của giảng viên
Yêu cầu và cách thức đánh giá, sự hiện diện trên lớp, mức độ tích cực tham gia các hoạt động trên lớp, các qui định về thời hạn, chất lượng các bài tập, bài kiểm tra…
− Chuẩn bị tốt các phần được giao tự học
− Có mặt trên lớp ít nhất là 16/20 giờ học
9 Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập môn học
9.1 Kiểm tra đánh giá định kỳ
Bao gồm các phần sau:
(%)
Ghi chú
1 Thi cuối kỳ trên phòng máy tính Có cả câu
9.2 Tiêu chí đánh giá các loại bài tập
− Bài tập về lý thuyết
• Trình bày tốt bản chất vấn đề yêu cầu, có mở rộng: 100% số điểm của bài tập
• Trình bày đúng bản chất vấn đề yêu cầu: 80-90%
• Trình bày được vấn đề ở mức trung bình: 50-70%
• Trình bày chưa đúng bản chất, nội dung: 0-40%
− Bài tập về ứng dụng:
• Làm tốt cả diễn giải và đáp số theo đáp án: 100%
9.3 Lịch thi, kiểm tra (kể cả thi lại)
STT Nội dung thi, kiểm tra Lịch thi Lịch kiểm tra Ghi chú
chung của
Trường
Trang 132 Thi lại Theo lịch
chung của
Trường