簡單多用戶文件系統(tǒng)-操作系統(tǒng)課程設(shè)計(jì)_第1頁
簡單多用戶文件系統(tǒng)-操作系統(tǒng)課程設(shè)計(jì)_第2頁
簡單多用戶文件系統(tǒng)-操作系統(tǒng)課程設(shè)計(jì)_第3頁
簡單多用戶文件系統(tǒng)-操作系統(tǒng)課程設(shè)計(jì)_第4頁
簡單多用戶文件系統(tǒng)-操作系統(tǒng)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、簡單多用戶文件系統(tǒng)1.課程設(shè)計(jì)的目的操作系統(tǒng)課程設(shè)計(jì)是計(jì)算機(jī)專業(yè)重要的教學(xué)環(huán)節(jié),它為學(xué)生提供了一個(gè)既動(dòng)手又動(dòng)腦,將課本上的理論知識(shí)和實(shí)際有機(jī)的結(jié)合起來,獨(dú)立分析和解決實(shí)際問題的機(jī)會(huì)。為 進(jìn)一步鞏固和復(fù)習(xí)操作系統(tǒng)的基礎(chǔ)知識(shí),培養(yǎng)學(xué)生結(jié)構(gòu)化程序、模塊化程序設(shè)計(jì)的方法和能力,提高學(xué)生調(diào)試程序的技巧和軟件設(shè)計(jì)的能力,提高學(xué)生分析問題、解決問題以及綜合利用 C 語言進(jìn)行程序設(shè)計(jì)的能力。本課程設(shè)計(jì)設(shè)計(jì)一個(gè)簡單多用戶文件系統(tǒng),通過具體的文件存儲(chǔ)空間的管理、文件的物理結(jié)構(gòu)、目錄結(jié)構(gòu)和文件操作的實(shí)現(xiàn),加深理解文件系統(tǒng)的內(nèi)部功能及內(nèi)部實(shí)現(xiàn),掌握文件存儲(chǔ)空間的管理,理解文件的物理結(jié)構(gòu),掌握目錄結(jié)構(gòu)的實(shí)現(xiàn),掌握文件操

2、作的實(shí)現(xiàn)。2. 課程設(shè)計(jì)的開發(fā)語言Microsoft Visual C+ 6.0下的Win32控制臺(tái)程序,C語言。VC+是Microsoft公司的C+開發(fā)工具,具有集成開發(fā)環(huán)境,可提供編輯C語言,C+以及C+/CLI等編程語言。本課程設(shè)計(jì)的文件系統(tǒng)利用VC+軟件的編輯C語言功能,在Win32控制臺(tái)程序下操作,在DOS環(huán)境下運(yùn)行。3. 功能描述在內(nèi)存中開辟一個(gè)虛擬磁盤空間作為文件存儲(chǔ)器,在其上實(shí)現(xiàn)一個(gè)簡單多用戶的文件系統(tǒng)。文件物理結(jié)構(gòu)可采用顯式鏈接或其他方法。磁盤空閑空間的管理可選擇位示圖或其他方法。如果采用位示圖來管理文件存儲(chǔ)空間,并采用顯式鏈接分配方式,則可以將位示圖合并到FAT中。一個(gè)較實(shí)

3、用的用戶界面,方便用戶使用??商峁┮韵孪嚓P(guān)文件操作:具有l(wèi)ogin (用戶登錄)系統(tǒng)初始化(建文件卷、提供登錄模塊)列出文件目錄:dir文件內(nèi)容的查看:view新建文件:create刪除文件:delete 修改文件:modify鎖定狀態(tài)轉(zhuǎn)換:lock注銷退出:logout文件目錄結(jié)構(gòu)采用多用戶目錄結(jié)構(gòu),每個(gè)目錄項(xiàng)包含文件名、大小、是否鎖定、物理地址等信息,可以通過目錄項(xiàng)實(shí)現(xiàn)對文件的讀和寫的保護(hù)。4. 方案論證4.1概要設(shè)計(jì)本系統(tǒng)為二級(jí)文件系統(tǒng),既要實(shí)現(xiàn)對文件的增刪改查,同時(shí)又具備登陸系統(tǒng)、注冊用戶的功能,各個(gè)用戶之間的文件系統(tǒng)互不干擾。采用兩級(jí)目錄,其中第一級(jí)對應(yīng)于用戶賬號(hào),第二級(jí)對應(yīng)于用戶帳

4、號(hào)下的文件。另外,為了簡便文件系統(tǒng)未考慮文件共享,文件系統(tǒng)安全以及管道文件與設(shè)備文件等特殊內(nèi)容。系統(tǒng)采用結(jié)構(gòu)體來存儲(chǔ)用戶、文件目錄、文件數(shù)據(jù)內(nèi)容:0 48*5 48*5+44*50 48*5+44*50+264*200文件目錄區(qū)文件數(shù)據(jù)區(qū)用戶區(qū)每個(gè)分區(qū)都是由結(jié)構(gòu)體組成,每個(gè)分區(qū)的結(jié)構(gòu)體的個(gè)數(shù)由格式化系統(tǒng)時(shí)決定。為系統(tǒng)設(shè)計(jì)一個(gè)簡單的二級(jí)文件系統(tǒng),可以實(shí)現(xiàn)下列幾條命令:login(用戶登陸)、dir(列文件目錄)、view(查看文件內(nèi)容)、create(新建文件)、delete(刪除文件)、modify(修改文件)、lock(鎖定轉(zhuǎn)換)、logout(注銷)。列目錄時(shí)列出文件名、文件長度、是否鎖定

5、、物理地址,源文件可以進(jìn)行讀寫保護(hù)。主函數(shù)所有功能流程圖如圖1所示。生成虛擬磁盤文件登錄文件操作菜單查看文件內(nèi)容新建文件刪除文件修改文件鎖定狀態(tài)轉(zhuǎn)換返回操作菜單注銷退出圖1 主函數(shù)功能流程圖4.2詳細(xì)設(shè)計(jì)用戶登錄(login)模塊首次進(jìn)入系統(tǒng)時(shí),還沒有文件系統(tǒng),則會(huì)提示格式化文件系統(tǒng),創(chuàng)建分區(qū),并初始化分區(qū),系統(tǒng)的初始化要完成文件系統(tǒng)的建立,包括以下幾部分:請求內(nèi)存、設(shè)置位示圖、初始化文件索引、初始化文本塊鏈表、初始化系統(tǒng)的當(dāng)前狀態(tài)、創(chuàng)建一個(gè)根目錄做為系統(tǒng)的根。驗(yàn)證登錄用戶的身份,用戶登錄成功后會(huì)初始化當(dāng)前用戶等一系列的系統(tǒng)當(dāng)前信息,默認(rèn)用戶的類型為普通用戶,如果用戶未能通過身份驗(yàn)證,提示用戶

6、登錄失敗,退出系統(tǒng)。用戶登錄模塊的算法流程圖如圖2所示。創(chuàng)建并初始化分區(qū)是否存在用戶?新建用戶登錄創(chuàng)建成功用戶身份驗(yàn)證用戶名是否存在?登陸成功否是否是圖2 用戶登錄流程圖查看文件內(nèi)容(view)模塊查看文件內(nèi)容接收查看文件名稱文件是否存在?文件查看失敗創(chuàng)建查看文件結(jié)點(diǎn)并復(fù)制文件信息將該結(jié)點(diǎn)鏈接到查看文件鏈中操作成功,內(nèi)容以0填充否是圖3 查看文件內(nèi)容流程圖只支持在當(dāng)前用戶當(dāng)前目錄下進(jìn)行操作,前提是用戶已創(chuàng)建文件,通過用戶給定的文件名在文件索引中搜索到文件的物理文件塊ID,找到該文件元素后,將文件當(dāng)前狀態(tài)置為打開,通過類似的查找方式,找到文件的數(shù)據(jù)部分,將數(shù)據(jù)顯示到界面,默認(rèn)創(chuàng)建的時(shí)候用0填充文

7、件內(nèi)容。查看文件內(nèi)容模塊的算法流程圖如圖3所示。4.2.3新建文件(create)模塊是新建文件接收新建文件名判斷文件是否存在?判斷是否溢出接收文件大小新建文件失敗文件是否鎖定創(chuàng)建成功是否否是否圖4 新建文件模塊流程圖只支持在當(dāng)前用戶目錄下創(chuàng)建文件,根據(jù)位示圖找到一個(gè)未使用的文件塊用來存放用戶的文件信息,根據(jù)系統(tǒng)當(dāng)前狀態(tài)來構(gòu)建一個(gè)文件系統(tǒng)元素放入到找到的文件塊中,新創(chuàng)建的文件狀態(tài)為關(guān)閉,同時(shí)更新位示圖和文件索引。新建文件時(shí)要求輸入文件名稱,當(dāng)文件名稱不存在,即與當(dāng)前用戶文件目錄下的文件不發(fā)生沖突時(shí),繼續(xù)接收用戶提供的文件長度,當(dāng)文件不發(fā)生越界則接受鎖定狀態(tài),文件新建成功。新建文件模塊算法流程圖

8、如上圖4所示。刪除文件(delete)模塊刪除文件并不真正清理文件的物理存儲(chǔ)內(nèi)容,只是將文件的有效狀態(tài)更改為無效。執(zhí)行刪除文件操作時(shí),輸入要?jiǎng)h除的文件名,然后根據(jù)用戶給定的文件名判斷當(dāng)前用戶目錄下是否存在該文件,若不存在則刪除失敗,若文件存在則繼續(xù)判斷文件是否被鎖定,若文件處于鎖定狀態(tài)則刪除失敗,若處于非鎖定狀態(tài)則操作成功。刪除文件模塊的算法流程圖如圖5所示。刪除文件判斷文件是否存在?接收刪除文件名刪除失敗文件是否鎖定?釋放所占用的盤塊刪除成功否是否是圖5 刪除文件模塊流程圖修改文件(modify)模塊只支持在當(dāng)前用戶目錄下進(jìn)行操作,前提是用戶已執(zhí)行文件打開的命令,否則無法對文件進(jìn)行修改。命令

9、成功后,會(huì)等待用戶的輸入,用戶輸入完畢,按回車鍵(Enter),結(jié)束輸入,系統(tǒng)會(huì)讀入用戶的輸入內(nèi)容,保存到相應(yīng)的文件塊。如果用戶的輸入太多,會(huì)出現(xiàn)越界現(xiàn)象,從而導(dǎo)致修改文件內(nèi)容失敗。修改文件模塊的算法流程圖如圖6所示。修改文件內(nèi)容接收文件名文件是否存在?內(nèi)容長度是否越界?接收新文件內(nèi)容修改成功修改失敗否否是是圖6 修改文件模塊流程圖4.2.6鎖定狀態(tài)轉(zhuǎn)換(lock)模塊鎖定狀態(tài)轉(zhuǎn)換接收文件名文件是否存在?轉(zhuǎn)換失敗轉(zhuǎn)換成功否是圖7 鎖定狀態(tài)轉(zhuǎn)換流程圖只支持在當(dāng)前用戶目錄下進(jìn)行操作,當(dāng)文件處于鎖定狀態(tài)時(shí),文件被系統(tǒng)進(jìn)行讀寫保護(hù),文件不能被刪除,可以被讀取、修改。只有當(dāng)文件處于非鎖定狀態(tài)時(shí),才能被刪

10、除。鎖定狀態(tài)的轉(zhuǎn)換即對文件的鎖定、非鎖定狀態(tài)之間的轉(zhuǎn)換。鎖定狀態(tài)轉(zhuǎn)換模塊的算法流程圖如圖7所示。5. 程序及說明整個(gè)文件系統(tǒng)的編碼構(gòu)成主要為:Allstruct.h定義了每個(gè)分區(qū)的結(jié)構(gòu)體;Mysys.h聲明了對系統(tǒng)操作的各種方法;Myuserfile.h聲明了對文件操作的各種方法;Mymain.cpp整個(gè)系統(tǒng)的主函數(shù),操作入口;Mysys.cpp包含了mysys.h,實(shí)現(xiàn)了操作系統(tǒng)的各種方法;Myuserfile.cpp包含了myuserfile.h,實(shí)現(xiàn)了操作文件的各種方法;主要數(shù)據(jù)結(jié)構(gòu):Allstruct.h文件的內(nèi)容struct s_user /用戶區(qū)結(jié)構(gòu)體long isuse; /是否

11、使用char name20; /用戶名char psd20; /密碼long address; /目錄地址;struct s_list /目錄結(jié)構(gòu)體long isuse; /是否使用char name20; /文件名字long myaddress; /本條目錄地址long pointaddress; /指向的文件的地址long isfile; /是否鎖定long pointsize; /目標(biāo)文件的大小long nextaddress; /下條目錄的地址;struct s_file /文件結(jié)構(gòu)體long isuse; /是否使用char content256; /文件內(nèi)容long next; /

12、下個(gè)文件塊地址;6. 設(shè)計(jì)結(jié)果與分析(1)、使用Microsoft Visual C+6.0建立文件系統(tǒng)所需的編碼文件,建立完成后進(jìn)行編譯,經(jīng)多次修改無誤后運(yùn)行進(jìn)入系統(tǒng)。首次進(jìn)入系統(tǒng),還沒有文件系統(tǒng),則會(huì)提示生成虛擬磁盤文件,格式化文件系統(tǒng),創(chuàng)建分區(qū),并初始化分區(qū)。系統(tǒng)的初始化要完成文件系統(tǒng)的建立,包括以下幾部分:請求內(nèi)存、設(shè)置位示圖、初始化文件索引、初始化文本塊鏈表、初始化系統(tǒng)的當(dāng)前狀態(tài)、創(chuàng)建一個(gè)根目錄做為系統(tǒng)的根。生成虛擬磁盤文件如圖8所示。圖8 生成虛擬磁盤文件(2)、系統(tǒng)初始化后,沒有用戶,提示創(chuàng)建用戶,在輸入用戶名及兩次登錄密碼后,驗(yàn)證用戶名是否有效,若有效則將用戶名及登錄密碼添加進(jìn)

13、入存儲(chǔ)系統(tǒng),使用戶下次能正常登錄系統(tǒng),新用戶創(chuàng)建完成。用戶創(chuàng)建成功后出現(xiàn)對系統(tǒng)操作的菜單,此時(shí)菜單中的注冊菜單功能即創(chuàng)建新用戶的過程。創(chuàng)建新用戶如圖9所示。圖9 創(chuàng)建新用戶(3)、用戶登錄,驗(yàn)證登錄用戶的身份,用戶登錄成功后會(huì)初始化當(dāng)前用戶等一系列的系統(tǒng)當(dāng)前信息,顯示當(dāng)前用戶下的所有文件及其詳細(xì)信息,同時(shí)顯示對文件操作的菜單。如圖10所示。圖10 用戶登錄及文件操作菜單(4)、新注冊的用戶默認(rèn)為沒有文件,選擇創(chuàng)建文件功能項(xiàng),輸入文件名稱,文件長度及文件的鎖定狀態(tài),文件新建成功,并且每次對文件操作后顯示當(dāng)前用戶的所有文件和操作菜單。新建文件功能如圖11所示。圖11 新建文件(5)、對文件查看,默

14、認(rèn)創(chuàng)建的時(shí)候用0填充文件內(nèi)容,如圖12所示。圖12 查看文件內(nèi)容(6)、接收修改文件內(nèi)容命令后,等待用戶輸入要修改的文件名,然后輸入修改的內(nèi)容,用戶輸入完畢,按回車鍵(Enter),結(jié)束修改。修改文件內(nèi)容如圖13所示。圖13 修改文件內(nèi)容(7)、當(dāng)新建的文件為鎖定狀態(tài),不能被刪除。對文件的鎖定進(jìn)行裝換,將鎖定狀態(tài)的文件轉(zhuǎn)換成自由讀寫狀態(tài),用戶可隨意對文件進(jìn)行刪除操作。圖14 鎖定狀態(tài)轉(zhuǎn)換(8)、當(dāng)文件處于自由讀寫狀態(tài)時(shí)可對文件進(jìn)行刪除操作,刪除文件并不真正清理文件的物理存儲(chǔ)內(nèi)容,只是將文件的有效狀態(tài)更改為無效。圖15 刪除文件(9)、當(dāng)用戶完成對文件的管理,可以注銷登錄并退出系統(tǒng)。7. 設(shè)計(jì)心

15、得體會(huì)經(jīng)過一周的努力,我的課程設(shè)計(jì)基本完成了,這次課程設(shè)計(jì)培養(yǎng)了我耐心,慎密、全面地考慮問題的能力,從而加快了問題解決的速度、提高了個(gè)人的工作效率,以及鍛煉圍繞問題在短時(shí)間內(nèi)得以解決的頑強(qiáng)意志。在編寫程序的過程中,我的能力得到了提高,同時(shí)養(yǎng)成了科學(xué)、嚴(yán)謹(jǐn)?shù)淖黠L(fēng)和習(xí)慣。為此我要感謝信息學(xué)院開設(shè)了這門操作系統(tǒng)課程設(shè)計(jì),為我們提供了進(jìn)一步學(xué)習(xí)算法、操作系統(tǒng)和鞏固C語言程序計(jì)設(shè)這個(gè)平臺(tái)并。同時(shí)還要感謝對同一題目進(jìn)行攻關(guān)的同學(xué)們給予的幫助,沒他們的幫助可能有很多問題我個(gè)人不能進(jìn)行很好的解決。在此我對他們幫助給予衷心的感謝。首先,我認(rèn)為這次課程設(shè)計(jì)是對學(xué)習(xí)操作系統(tǒng)的一次綜合考察,鍛煉我綜合分析問題、解決問

16、題的能力。報(bào)課程設(shè)計(jì)的題目時(shí),為程序本身的簡單而竊喜過。但到了實(shí)驗(yàn)的時(shí)候,才發(fā)現(xiàn)并非我想象的那么簡單,實(shí)驗(yàn)過程中也出現(xiàn)了一些難題需要解決,為此去苦苦探索過。課程設(shè)計(jì)期間,幾乎每天都完全投入進(jìn)去了,就像是在做一個(gè)相當(dāng)重要的項(xiàng)目一樣的感覺。曾經(jīng)跑過圖書館幾次,只是為了一種新的想法得到實(shí)現(xiàn),也曾多次登錄網(wǎng)站瀏覽網(wǎng)頁,為了彌補(bǔ)一些知識(shí)上的紕漏,為此曾灑下了真實(shí)的汗水。當(dāng)我的想法得到實(shí)現(xiàn),又學(xué)會(huì)了新的知識(shí)的時(shí)候,心中滿是欣喜,或許這是實(shí)踐出真知的真實(shí)驗(yàn)證,有付出就有回報(bào)的真實(shí)寫照吧。其次,我感受了真誠的友誼。在實(shí)驗(yàn)中,遇到的問題是多方面的,而且有那么一部分是以前學(xué)過的C問題,但是已經(jīng)忘卻或是以前沒有真正

17、的理解過。但是你會(huì)發(fā)現(xiàn)就在你的身邊,會(huì)有那么一批人在背后熱心的幫助你,讓你身處困境卻感到無限希望。這好像是人生的一種歷程,風(fēng)風(fēng)雨雨中我們一起走過,然后為了一些坑坑洼洼彼此真誠的幫助過和無私的付出過。同學(xué)和老師的協(xié)作和彼此心的交流讓我感受到了熱情,這也是我們成長中必不可失的重要部分。最后,我認(rèn)識(shí)到了自己的不足。平心而論,以前真的沒有認(rèn)真的學(xué)習(xí)過,即使是在聽課,可是后來卻沒有對學(xué)習(xí)中出現(xiàn)的問題而仔細(xì)分析過。得過且過,迷失了我前進(jìn)的方向,而現(xiàn)在卻又重新敞開了。不論是以后的學(xué)習(xí)還是工作,我想這都是很重要的,我們需要不斷進(jìn)步的動(dòng)力。參考文獻(xiàn)1 潘新民,王燕芳. 微型計(jì)算機(jī)控制技術(shù)M. 北京:電子工業(yè)出版

18、社,2003.4:305-350 2 范立南,劉嵐. 操作系統(tǒng)實(shí)用教程M. 北京:北京大學(xué)出版社,2010.5:189-215 3 湯子瀛,哲鳳屏. 計(jì)算機(jī)操作系統(tǒng)M.西安:西安電子科技大學(xué)學(xué)出版社. 2007.5:34-1584 曾明. Linux操作系統(tǒng)應(yīng)用教程M. 陜西:陜西科學(xué)技術(shù)出版社. 2005.3:142-180 5 張麗芬,劉利雄. 操作系統(tǒng)實(shí)驗(yàn)教程M. 北京:清華大學(xué)出版社. 2001.10:264-288 6 任滿杰. 操作系統(tǒng)原理實(shí)用教程M. 北京:電子工業(yè)出版社.2003.5:251-302附錄Allstruct.hstruct s_user /用戶區(qū)結(jié)構(gòu)體long i

19、suse; /是否使用char name20; /用戶名char psd20; /密碼long address; /目錄地址;struct s_list /目錄結(jié)構(gòu)體long isuse; /是否使用char name20; /文件名字long myaddress; /本條目錄地址long pointaddress; /指向的文件的地址long isfile; /是否鎖定long pointsize; /目標(biāo)文件的大小long nextaddress; /下條目錄的地址;struct s_file /文件結(jié)構(gòu)體long isuse; /是否使用char content256; /文件內(nèi)容lon

20、g next; /下個(gè)文件塊地址;mysys.h#include #include myuserfile.hclass MSysterm /封裝了管理系統(tǒng)的方法/成員變量private:FILE *myfile;MUser myuser;/成員函數(shù)public:MSysterm()void outName(); /打印登陸后的用戶名int cheack(); /檢查虛擬文件系統(tǒng)跟是否存在int myformat(); /初始化虛擬磁盤int createuser(); /創(chuàng)建用戶int login(); /用戶登錄void mymain(); /主控制程序int logout(); /用戶注銷

21、;myuserfile.h #include class MUser /封裝了管理文件的方法 /成員變量public:FILE *myfile;char name20; /用戶名char psd20; /密碼long listaddress; /目錄地址long myaddress; /此用戶的地址private:long lastaddress; /最后一個(gè)目錄的地址/成員函數(shù)public:int createFile(); /增加文件int delFile(char filename20);/刪除文件int revampFile(char filename20);/修改文件int mydi

22、r(); /列出當(dāng)前目錄的所有文件(夾)int viewFile(char filename20);/查看文件int myConversion(char filename20);/轉(zhuǎn)換是否鎖定狀態(tài)private:int isSame(char filename_f20,char filename_s20);mymain.cpp#include #include #include mysys.h#include using namespace std;int main()char nod1;int n_select = 2 , i_1 =0;MSysterm mysys;/*文件不存在的程序入口*/if(mysys.cheack()=-1)/磁盤空間不存在cout虛擬磁盤文件不存在,是否生成? Y/N nod1;cin.clear(); / 清除流的錯(cuò)誤標(biāo)記cin.ignore(numeric_limits:max(),n); / 清空輸入流if(nod1=Y|nod1=y)cout正在創(chuàng)建。endl;if(mysys.myformat()!=1)/創(chuàng)建磁盤空間cout創(chuàng)建磁

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論