BIÊN DỊCH VÀ CÀI ĐẶT NACHOS

Similar documents
CÀI ĐẶT MẠNG CHO MÁY IN LBP 3500 và LBP 5000

TÀI LIỆU Hướng dẫn cài đặt thư viện ký số - ACBSignPlugin

CMIS 2.0 Help Hướng dẫn cài đặt hệ thống Máy chủ ứng dụng. Version 1.0

Bài 15: Bàn Thảo Chuyến Du Ngoạn - cách gợi ý; dùng từ on và happening

CHƯƠNG I. TỔNG QUAN VỀ HỆ THỐNG DCS- CENTUM CS 3000

Chúng ta cùng xem xét bài toán quen thuộc sau. Chứng minh. Cách 1. F H N C

Hướng dẫn cài Windows 7 từ ổ cứng HDD bằng ổ đĩa ảo qua file ISO bằng hình ảnh minh họa

NATIVE ADS. Apply from 01/03/2017 to 31/12/2017

Chương 3: Chiến lược tìm kiếm có thông tin heuristic. Giảng viên: Nguyễn Văn Hòa Khoa CNTT - ĐH An Giang

XÂY DỰNG MÔ HÌNH CƠ SỞ DỮ LIỆU PHÂN TÁN CHO HỆ THỐNG THÔNG TIN ĐẤT ĐAI CẤP TỈNH VÀ GIẢI PHÁP ĐỒNG BỘ HÓA CƠ SỞ DỮ LIỆU TRÊN ORACLE

CHƯƠNG IX CÁC LỆNH VẼ VÀ TẠO HÌNH (TIẾP)

nhau. P Z 1 /(O) P Z P X /(Y T ) khi và chỉ khi Z 1 A Z 1 B XA XB /(Y T ) = P Z/(O) sin Z 1 Y 1A PX 1 P X P X /(Y T ) = P Z /(Y T ).

Phương thức trong một lớp

PHÁT TRIỂN ỨNG DỤNG WEB

Sổ tay cài đặt Ubuntu từ live CD

Bottle Feeding Your Baby

Các bước trong phân khúc thi truờng. Chương 3Phân khúc thị trường. TS Nguyễn Minh Đức. Market Positioning. Market Targeting. Market Segmentation

Định hình khối. Rèn kim loại

PREMIER VILLAGE PHU QUOC RESORT

5/13/2011. Bài 3: Báo cáo kết quả kinh doanh. Nội dung. Trình bày báo cáo kết quả kinh doanh

PHÂN TÍCH DIỄN BIẾN LƯU LƯỢNG VÀ MỰC NƯỚC SÔNG HỒNG MÙA KIỆT

NHỊP ĐẬP THỊ TRƯỜNG QUÝ 3, 2015

Model SMB Lưỡi dao, bộ phận cảm biến nhiệt và lòng bình bằng thép không gỉ 304 an toàn cho sức khỏe.

Ths. Nguyễn Tăng Thanh Bình, Tomohide Takeyama, Masaki Kitazume

Điểm Quan Trọng về Phúc Lợi

BẢN TIN THÁNG 05 NĂM 2017.

Giáo dục trí tuệ mà không giáo dục con tim thì kể như là không có giáo dục.

KIỂM TOÁN CHU TRÌNH BÁN HÀNG VÀ NỢ PHẢI THU

BỘ THÔNG TIN VÀ TRUYỀN THÔNG TRUNG TÂM INTERNET VIỆT NAM TÀI LIỆU HƯỚNG DẪN TRIỂN KHAI DNSSEC TẠI CÁC NHÀ ĐĂNG KÝ TÊN MIỀN

CƠ SỞ DỮ LIỆU PHÂN TÁN

Thiết bị quang~ Bởi: Khoa CNTT ĐHSP KT Hưng Yên

CÁC BIỆN PHÁP BẢO VỆ THEO THỦ TỤC Quyền Giáo Dục Đặc Biệt của Gia Đình Quý vị

QUY CÁCH LUẬN VĂN THẠC SĨ

TRƯỜNG ĐẠI HỌC SƯ PHẠM TP. HỒ CHÍ MINH TRUNG TÂM TIN HỌC HƯỚNG DẪN CÀI ĐẶT CÔNG CỤ VÀ PHẦN MỀM

BÀI TẬP DỰ ÁN ĐÂU TƯ (Học kỳ 3. Năm )

Đường thành phố tiểu bang zip code. Affordable Care Act/Covered California Tư nhân (nêu rõ): HMO/PPO (khoanh tròn)

2.1.3 Bảng mã ASCII Bộ vi xử lý (Central Processing Unit, CPU) Thanh ghi... 16

PHÂN PHỐI CHUẨN. TS Nguyen Ngoc Rang; Website: bvag.com.vn; trang:1

So sánh các phương pháp phân tích ổn định nền đường đắp

Hiện nó đang được tân trang toàn bộ tại Hải quân công xưởng số 35 tại thành phố Murmansk-Nga và dự trù trở lại biển cả vào năm 2021.

ĐÁNH GIÁ ẢNH HƯỞNG CỦA CHIỀU RỘNG TẤM ĐẾN BIẾN DẠNG GÓC KHI HÀN TẤM TÔN BAO VỎ TÀU THỦY

ĐIỀU KHIỂN ROBOT DÒ ĐƯỜNG SỬ DỤNG BỘ ĐIỀU KHIỂN PID KẾT HỢP PHƯƠNG PHÁP PWM

Bài giảng Kiến trúc của hệ vi xử lý

Thỏa Thuận về Công Nghệ của UPS

Tạp chí phân tích Hóa, Lý và Sinh học - Tập 20, số 3/2015

Tng , , ,99

Ô NHIỄM ĐẤT, NƯỚC VÀ CÁC PHƯƠNG PHÁP XỬ LÝ

BẢN TIN THÁNG 09 NĂM 2015

SB 946 (quy định bảo hiểm y tế tư nhân phải cung cấp một số dịch vụ cho những người mắc bệnh tự kỷ) có ý nghĩa gì đối với tôi?

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc Số: 02/2014/TT-BTTTT Hà Nội, ngày 10 tháng 3 năm 2014 THÔNG TƯ

MỐI QUAN HỆ GIỮA ĐỘ THOÁNG KHÍ CỦA BAO BÌ BẢO QUẢN CHẤT LƯỢNG CỦA NHÃN XUỒNG CƠM VÀNG TRONG QUÁ TRÌNH TỒN TRỮ

MICROMASTER kw 11 kw

CHƯƠNG VII HÌNH CẮT, MẶT CẮT VÀ KÍ HIỆU VẬT LIỆU

Chương 17. Các mô hình hồi quy dữ liệu bảng

AT INTERCONTINENTAL HANOI WESTLAKE 1

Thông Tin Dành Cho Gia Đình và Bệnh Nhân. Mụn Trứng Cá. Nguyên nhân gây ra mụn trứng cá là gì? Các loại khác nhau của mụn trứng cá là gì?

Để được hỗ trợ về sản phẩm, truy cập vào Đây là phiên bản trên Internet của xuất bản này. Chỉ in ra để sử dụng cá nhân.

Các tùy chọn của họ biến tần điều khiển vector CHV. Hướng dẫn vận hành card cấp nước.

Register your product and get support at. POS9002 series Hướng dẫn sử dụng 55POS9002

Công ty Cổ phần Tập đoàn Ma San Thông tin về Công ty

Hướng dẫn GeoGebra. Bản chính thức 3.0

Ông ta là ai vậy? (3) Who is he? (3) (tiếp theo và hết)

Khám phá thế giới với Thẻ Tín Dụng ANZ Travel Visa Platinum

Savor Mid-Autumn Treasures at Hilton Hanoi Opera! Gìn giữ nét đẹp cổ truyền

Bộ Kế hoạch & Đầu tư Sở Kế hoạch & Đầu tư Điện Biên

TRƢỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP.HCM

Abstract. Recently, the statistical framework based on Hidden Markov Models (HMMs) plays an important role in the speech synthesis method.

GIỚI THIỆU. Nguồn: Nguồn:

NGHIÊN CỨU ĐẶC ĐIỂM BIẾN ĐỘNG DÒNG CHẢY VÙNG VEN BIỂN HẢI PHÒNG

Những Điểm Chính. Federal Poverty Guidelines (Hướng dẫn Chuẩn Nghèo Liên bang) như được

The W Gourmet mooncake gift sets are presently available at:

ACBS Trade Pro. Hướng dẫn sử dụng

Chương1: CÁC THAO TÁC CƠ BẢN TRONG CORELDRAW

MỞ ĐẦU... 1 CHƯƠNG I. TỔNG QUAN MỘT SỐ KHÁI NIỆM CƠ BẢN...

SAVOR MID-AUTUMN FESTIVAL WITH HILTON

NGHIÊN CỨU NHIỆT PHÂN BAO BÌ CHẤT DẺO PHẾ THẢI THÀNH NHIÊN LIỆU LỎNG

khu vực Vịnh Nha Trang

EMPEA Guidelines (Vietnamese Edition) CÁC HƯỚNG DẪN CỦAEMPEA

SỬ DỤNG ENZYME -AMYLASE TRONG THỦY PHÂN TINH BỘT TỪ GẠO HUYẾT RỒNG

PHÂN TÍCH MÓNG CỌC CHỊU TẢI TRỌNG NGANG VÀ KỸ THUẬT LẬP MÔ HÌNH TƯƠNG TÁC CỌC-ĐẤT PHI TUYẾN

Bạn có thể tham khảo nguồn tài liệu được dịch từ tiếng Anh tại đây: Thông tin liên hệ:

ỨNG DỤNG MÔ HÌNH THỦY LỰC MỘT CHIỀU (1D) KẾT HỢP VỚI HAI CHIỀU (2D) TRÊN ĐOẠN SÔNG HẬU

Chuyên đề: TỪ VỰNG LUYỆN THI THPTQG FOOD AND DRINK 2

lõi ngôn ngữ trung gian của ActionScript.

PHƯƠNG PHÁP TẠO HÌNH TỔN KHUYẾT VÙNG MẮT

khu vực ven biển Quảng Bình - Quảng Nam

HỘI NGHỊ KHOA HỌC TOÀN QUỐC VỀ SINH THÁI VÀ TÀI NGUYÊN SINH VẬT LẦN THỨ 5

Tạp chí Khoa học Trường Đại học Cần Thơ Số chuyên đề: Thủy sản (2014)(1):

MICROMASTER 440 0,12 kw 250 kw

ABBYY FineReader 14. Hướng dẫn của quản trị viên hệ thống ABBYY Production LLC. Mọi quyền được bảo lưu.

NHỮNG CẬP NHẬT MỚI VỀ THUẾ CUỐI NĂM Thứ Tư, ngày 18 tháng 10 năm 2017 KCN Amata City Bien Hoa

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM QCVN 4-1: 2010/BYT QUY CHUẨN KỸ THUẬT QUỐC GIA VỀ PHỤ GIA THỰC PHẨM - CHẤT ĐIỀU VỊ

Chụp MRI: Cột Sống Làm thế nào để chuẩn bị và sự việc sẽ như thế nào

CHỌN TẠO GIỐNG HOA LAN HUỆ (Hippeastrum sp.) CÁNH KÉP THÍCH NGHI TRONG ĐIỀU KIỆN MIỀN BẮC VIỆT NAM

Trịnh Minh Ngọc*, Nguyễn Thị Ngoan

Rọi MRI Bụng Làm thế nào để chuẩn bị cho cuộc rọi hình của quý vị

PHÂN TÍCH TÍNH CHẤT SẢN PHẨM KHÍ, CONDENSATE MỎ THÁI BÌNH NHẰM BỔ SUNG CHO HỆ THỐNG CƠ SỞ DỮ LIỆU DẦU KHÍ VIỆT NAM

XÂY DỰNG GIẢN ĐỒ SỞ THÍCH SỬ DỤNG PHƯƠNG PHÁP FLASH PROFILE TRONG ĐÁNH GIÁ CHẤT LƯỢNG YAOURT TRÁI CÂY NHIỆT ĐỚI

HƯỚNG DẪN SỬ DỤNG WORD CHƯƠNG I Làm quen với giao diện mới

Trí Tuệ Nhân Tạo. Nguyễn Nhật Quang. Viện Công nghệ Thông tin và Truyền thông Trường Đại học Bách Khoa Hà Nội

Transcription:

BIÊN DỊCH VÀ CÀI ĐẶT NACHOS Khuyến cáo: nên sử dụng phiên bản Linux: Redhat 9 hoặc Fedora core 3 1. Giới thiệu Nachos Nachos là một phần mềm mã nguồn mở (open-source) giả lập một máy tính ảo và một số thành phần cơ bản của hệ điều hành chạy trên máy tính ảo này nhằm giúp cho việc tìm hiểu và xây dựng các thành phần phức tạp hơn của hệ điều hành + Máy ảo được giả lập có kiến trúc MIPS với hầu hết các thành phần và chức năng của một máy thật như: thanh ghi, bộ nhớ, bộ xử lý, bộ lệnh, chu kỳ thực thi lệnh, cơ chế ngắt, chu kỳ đồng hồ, + Hệ điều hành Nachos chạy trên máy ảo Nachos hiện là một hệ điều hành đơn chương Tới đây, tạm thời chưa quan tâm tới hoạt động của Nachos, xem nó như một hộp đen. Nhiệm vụ đầu tiên là cài đặt thành công Nachos và chạy được một số chương trình ví dụ sẵn có (trong thư mục code/test). + Làm sao để biên dịch Nachos? Để biên dịch Nachos (hay bất kỳ chương trình C nào khác) trên Linux, sử dụng trình biên dịch gcc. Một điểm cần lưu ý ở đây là các kiến trúc máy khác nhau (x86, MIPS, ) sẽ dùng các trình biên dịch gcc khác nhau (ngoài ra còn khác nhau với từng bản phân phối (distro) của Linux (Fedora core, Ubuntu, ), thậm chí từng phiên bản trong cùng 1 bản phân phối). + Làm sao để biên dịch các chương trình C (các ví dụ kèm theo trong thư mục code/test và các chương trình sẽ viết sau này) trên Nachos? Cần lưu ý là các chương trình này được biên dịch để chạy trên hệ điều hành Nachos cho kiến trúc máy MIPS chứ không phải trên hệ điều hành Linux cho kiến trúc máy x86. Như vậy, không thể dùng trình biên dịch gcc trên hệ điều hành Linux của máy thật (x86) được mà cần phải tạo ra một trình biên dịch gọi là Cross-compiler để thực hiện biên dịch các chương trình C trên hệ điều hành Nachos cho kiến trúc máy MIPS. 2. Cài đặt Cross-compiler a. Cross-compiler là gì? Tham khảo http://en.wikipedia.org/wiki/cross-compiler b. Vai trò của Cross-compiler khi sử dụng Nachos Cross-compiler được dùng để biên dịch các chương trình C thành các chương trình thực thi trên hệ điều hành Linux cho kiến trúc máy MIPS (COFF). Công cụ coff2noff (được viết sẵn trong phần mềm Nachos) được dùng để chuyển đổi định dạng COFF thành định dạng NOFF, định dạng chạy trên hệ điều hành Nachos cho kiến trúc máy MIPS. Khoa CNTT ĐH Khoa Học Tự Nhiên 1

c. Cài đặt Cross-compiler i. Yêu cầu: Đã cài đặt gcc-3.x trên hệ điều hành Linux ii. Các bước thực hiện Giả sử đang làm việc tại thư mục /root Tạo thư mục lưu bài tập hệ điều hành % mkdir hdh Copy các tập tin sau vào thư mục hdh (có thể dùng WinSCP) binutils-2.11.2.tar.gz gcc-2.95.3.tar.gz Vào thư mục hdh, giải nén các tập tin này % cd hdh % tar -xzvf binutils-2.11.2.tar.gz % tar xzvf gcc-2.95.3.tar.gz Tạo thư mục chứa Cross-compiler sẽ được cài đặt % mkdir cross-compiler Tạo Cross-compiler cho Biên dịch binutils trước kiến trúc máy MIPS % cd binutils-2.11.2/ %./configure --host=i686-pc-linux-gnu --target=decstationultrix --prefix=/root/hdh/cross-compiler % make % make install Cài đặt binutils thành công sẽ tạo các file sau trong thư mục /root/hdh/cross-compiler/decstation-ultrix/bin/: ar as ld nm ranlib strip Lưu ý, không nên biên dịch gcc ngay trong thư mục chứa mã nguồn (gcc-2.95.3). Do đó, trước khi tiến hành biên dịch gcc, cần tạo thư mục chứa kết quả biên dịch (thư mục này nên đặt cùng cấp với thư mục cross-compiler tạo ở trên).: % cd.. % mkdir gcc-obj Và tạo thư mục giả system-include % mkdir cross-compiler/decstation-ultrix/sys-include Vào thư mục gcc-obj, thực hiện cấu hình gcc % cd gcc-obj Khoa CNTT ĐH Khoa Học Tự Nhiên 2

%../gcc-2.95.3/configure --host=i686-pc-linux-gnu -- target=decstation-ultrix --prefix=/root/hdh/cross-compiler --with-gnu-as --with-gnu-ld --with-as=/root/hdh/crosscompiler/decstation-ultrix/bin/as --with-ld=/root/hdh/crosscompiler/decstation-ultrix/bin/ld --enable-languages=c --disablemultilib --disable-libgcj Biên dịch gcc % make Nếu quá trình biên dịch có lỗi tạo libgcc2.a thì cứ thực hiện tiếp cài đặt (vì Nachos không phụ thuộc vào bất kỳ thư viện nào) % make -k install Cài đặt gcc thành công sẽ tạo thêm file gcc trong thư mục /root/hdh/cross-compiler/decstation-ultrix/bin/ 3. a. Yêu cầu Đã cài đặt gcc-2.x hoặc gcc-3.x trên Linux Đã cài đặt thành công Cross-compiler b. Các bước thực hiện: Copy tập tin sau vào thư mục hdh (có thể dùng WinSCP) nachos-3.4.tar.gz Giả sử đang làm việc tại thư mục /root Vào thư mục hdh, giải nén các tập tin này % cd hdh % tar -xzvf nachos-3.4.tar.gz Trước khi biên dịch Nachos, cần sửa lại trong file ~/nachos/code/test/makefile đường dẫn của Cross-compiler (GCCDIR) tới thư mục chứa Cross-compiler đã cài đặt thành công ở bước trên (/root/hdh/cross-compiler/decstation-ultrix/bin/). Hoàn toàn có thể copy thư mục cross-compiler/decstation-ultrix/ và thư mục chứa mã nguồn Nachos nachos-3.4 tới máy khác để biên dịch Nachos mà không cần biên dịch lại Cross-compiler. Thường 2 thư mục này cùng cấp với nhau nên khi chỉnh đường dẫn tới Crosscompiler có thể để đường dẫn tương đối như sau: # if you are cross-compiling, you need to point to the right # executables and change the flags to ld and the build Khoa CNTT ĐH Khoa Học Tự Nhiên 3

# procedure for as GCCDIR =../../../cross-compiler/decstation-ultrix/bin/ LDFLAGS = -T script -N ASFLAGS = -mips2 CPPFLAGS = $(INCDIR) # if you aren't cross-compiling: # GCCDIR = # LDFLAGS = -N -T 0 # ASFLAGS = # CPPFLAGS = -P $(INCDIR) PATH = $(GCCDIR):/lib:/usr/bin:/bin CC = $(GCCDIR)gcc -B../../../cross-compiler/ AS = $(GCCDIR)as LD = $(GCCDIR)ld CPP = gcc -E INCDIR =-I../userprog -I../threads CFLAGS = -G 0 -c $(INCDIR) Biên dịch Nachos % cd nachos-3.4/code % gmake all 4. Chạy thử chương trình trên Nachos %./userprog/nachos rs 1023 x./test/halt Kết quả nhận được: Machine halting! Ticks: total 42 idle 0, system 30, user 12 Disk I/O: reads 0, writes 0 Console I/O: reads 0, writes 0 Paging: faults 0 Network I/O: packets received 0, sent 0 Cleaning up Nếu chạy ra kết quả như trên, nghĩa là thành công quá trình cài đặt Nachos trên Linux Khoa CNTT ĐH Khoa Học Tự Nhiên 4

...Nhiệm vụ tiếp theo: Tìm hiểu hoat động của Nachos để có thể thêm các system call vào hệ điều hành Nachos Tìm hiểu các thành phần cơ bản của hệ điều hành Nachos đã được xây dựng để xây dựng các thành phần phức tạp hơn Khoa CNTT ĐH Khoa Học Tự Nhiên 5