Name: Lê Thanh Minh
ID: 21520063
Class: IT007.N11.KHTN
OPERATING SYSTEM
PRELAB 3’S REPORT
SUMMARY
Section 3.3
Task
3.3.1
3.3.2
3.3.3
3.3.4
Status
Done
Done
Done
Done
Self-scrores: 10
1
Page
2
2
6
7
Section 2.5
1. Task 3.3.1 : Trình soạn thảo văn bản vim
2. Task 2 : Trình biên dịch gcc
2
-
Ta soạn văn bản hello.c bằng vim :
-
Quan sát rõ hơn q trình biên dịch
Mục đích
Lệnh
Xem tệp tin tạm (sau Preprocessor)
gcc -E hello.c -o hello_tmp.c
Xem tệp tin hợp ngữ (sau Compiler)
gcc -S hello.c
Xem tệp tin đối tượng (Sau
Assembler)
gcc -c hello.c
Tạo tệp tin thực thi từ tệp tin đối tượng gcc hello.o -o hello
3
-
Tệp hello_tmp.c (Lệnh gcc -E hello.c -o hello_tmp.c) :
-
Tệp hello.s (Lệnh gcc -S hello.c)
4
-
Tệp hello.o (gcc -c hello.c)
-
Chuyển file hello thành thư viện
+ File hello.h
5
+ File hello.c
+ File main.c
-
Sau khi thực thi lệnh : gcc main.c hello.c -o hello ; ./hello
6
3. Task 3.3.3 : Makefile
-
File Makefile :
-
Thực hiện lệnh “make all”
Lưu ý : nên để biên dịch chính xác, thì trong thư mục hiện tại không được chứa các
tệp tin có tên all, run, hay clean. Ngược lại , muốn tồn tại các tệp tin nói trên nếu vẫn
thì phải thêm .PHONY: vào cuối Makefile để ép buộc make luôn thực thi như dưới
đây :
4. Task 3.3.4 : Trình gỡ lỗi GDB
7
8