《操作系統》實驗實施計劃_第1頁
《操作系統》實驗實施計劃_第2頁
《操作系統》實驗實施計劃_第3頁
《操作系統》實驗實施計劃_第4頁
《操作系統》實驗實施計劃_第5頁
已閱讀5頁,還剩29頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

自考“通信工程”專業連接考試《操作系統》課程實驗環節實施方案實驗要求依據《操作系統》課程教學要求,實驗環節應要求完成五個實驗項目。考慮到自考課程教學實際情況,結合我院實驗室的條件,經任課老師、實驗指導老師、教研室主任和我院學術委員會認真商量,確定開設二個實驗項目。實驗項目、內容及要求詳見我院編制的《操作系統》課程實驗大綱。實驗環境目前,我院依據編制的《操作系統》課程實驗大綱,實驗環境基本能滿意開設的實驗項目。實驗環境主要設備為:硬件:一臺能正常啟動的計算機軟件:VisualC++6.0,Windows2003等實驗報告要求與成果評定同學每完成一個實驗項目,要求獨立認真的填寫實驗報告。實驗指導老師將依據同學完成實驗的態度和表現,結合填寫的實驗報告評定實驗成果.成果的評定按百分制評分。實驗考試同學在完成全部實驗項目后,再進行一次綜合性考試。老師可以依據同學完成的實驗項目,綜合出3套與實驗相像的考試題,由同學任選一套獨立完成。老師給出同學實驗考試成果作為最終實驗成果上報。附件附件1《操作系統》課程實驗大綱附件2實驗報告冊樣式以上對《計操作系統》課程實驗的實施方案,妥否,請貴校批示。重慶信息工程專修學院2008年3月20日附件1《操作系統》課程實驗教學大綱實驗課程負責人:盧朝江開課學期:第四學期實驗類別:專業基礎課程實驗類型:應用性實驗實驗要求:必修適用專業:通信工程課程總學時:12學時課程總學分:1分《操作系統》課程實驗項目及學時安排序號實驗項目實驗內容及要求學時實驗類型備注1實驗一:頁式存儲管理方案頁式內存管理系統模擬程序模擬頁式存儲管理,頁面的安排與回收,能顯示位視圖和頁表4應用型實驗2實驗二文件管理文件管理模擬程序模擬操作系統中的建立文件、打開文件、讀文件、寫文件、關閉文件、刪除文件、建立名目、顯示名目內容、顯示文件內容、轉變文件屬性等操作.8應用型實驗?實驗一頁式存儲管理一、實驗目的掌握頁面存儲管理的內存安排方法,位視圖的表示。二、實驗內容1、運行程序,由檢查老師給出文件名,該文件中存有內存目前狀況的位示圖的數據(0和1的文件).(程序應做提示,界面友好)。2、你所編制的程序應讀入數據,存放在相應的數據結構中。3、顯示友好的用戶界面,由檢查老師輸入內存申請(總塊數)。4、依據申請和位示圖狀態,為用戶安排內存,并建立頁表。5、輸出位示圖和頁表.三、實驗環境1、一臺能正常啟動的P41。5GHZ以上個人計算機2、安裝有VisualC++6.0軟件四、實驗原理與方法內存被劃分成2048塊(頁).用32位字長的字存放位示圖,為0的位表示該塊尚未安排,為1的位表示該塊已安排。五、實驗步驟1、啟動VisualC++6。0,創建一個新的C++源程序2、輸入相應的代碼。3、保存程序4、運行程序主要的程序代碼如下:#include〈stdio。h>#include〈iostream.h〉#include〈string.h>constintPAGES=256;//定義總塊數cWORD=32;//定義字長constintWORDNUM=PAGES/WORD;//定義總字數typedefstructnode{charjobname[20];intnum;intnums[PAGES];structnode*next;}jobs;inttable[WORDNUM][WORD];intfreenum=0;jobs*head;//初始化函數voidinitial(){inti,j;jobs*p;//初始化位示圖for(i=0;i〈WORDNUM;i++){for(j=0;j<WORD;j++){table[i][j]=0;}}//初始化作業表頭p=newjobs;strcpy(p—〉jobname,"null");p->num=0;p-〉next=NULL;head=p;}//讀入位示圖初始數據voidreadData(){inti,j;FILE*fp;charfname[20];cout〈<"請輸入初始位示圖數據文件名:"<<endl;cin>〉fname;if((fp=fopen(fname,"r"))!=NULL){for(i=0;i〈WORDNUM;i++){for(j=0;j<WORD;j++){fscanf(fp,"%d”,&table[i][j]);if(table[i][j]==1)freenum++;}}cout〈<”初始位示圖"〈<endl;for(i=0;i<WORDNUM;i++){for(j=0;j〈WORD;j++){cout〈〈table[i][j]<〈”";}cout〈〈endl;}cout〈〈"總空閑塊數:"<〈freenum;}else{cout<〈”文件不能打開”<〈endl;}}//新加入作業函數voidadd(){charjobname[20];intnum;jobs*p;inti,j,k=0;cout<<”請輸入新增的作業名:";cin>>jobname;cout<〈”新增作業所需頁數:";cin>〉num;if(num<=freenum){freenum—=num;p=newjobs;strcpy(p-〉jobname,jobname);p-〉num=num;for(k=0;k<num;k++){i=0;j=0;while(table[i][j]==1){j=0;while(table[i][j]==1)j++;if(table[i][j]==1)i++;}p->nums[k]=i*WORD+j;table[i][j]=1;}p—〉next=head->next;head—>next=p;}else{cout<<"錯誤,當前剩余頁數小于所需頁數,請稍候再試:)"<<endl;}}//完成作業函數voidfinish(){charjobname[20];jobs*p,*q;intn,i,j,num,k;cout<<"請輸入完成的作業名:";cin>>jobname;p=head-〉next;q=head;while(p!=NULL){if(strcmp(p->jobname,jobname)){q=q->next;}p=p—>next;}p=q—>next;num=p—〉num;for(k=0;k<num;k++){n=p-〉nums[k];i=n/WORD;j=n%WORD;table[i][j]=0;}freenum+=num;q->next=p->next;deletep;}//顯示當前位示圖函數voidview_table(){inti,j;cout<<”當前位示圖"<〈endl;for(i=0;i<WORDNUM;i++){for(j=0;j<WORD;j++){cout<〈table[i][j]<〈"";}cout<〈endl;}cout<〈”總空閑塊數:”〈<freenum<〈endl;}//顯示全部頁表函數voidview_pages(){jobs*p;inti;p=head->next;if(p==NULL)cout<<"當前沒有用戶作業”<〈endl;elsecout<<"當前全部的用戶作業頁表情況"<<endl;while(p!=NULL){cout〈<"作業名:"〈<p->jobname<<"所用塊數:"<〈p—〉num<〈endl;cout〈<"本作業所點塊的序列是:”〈〈endl;for(i=0;i<p->num;i++){cout〈<p—>nums[i]<<"";}cout<〈endl;p=p—〉next;}}//顯示版權信息函數voidversion(){cout<〈endl〈<endl;cout〈<"┏━━━━━━━━━━━━━━━━━━━━━━━┓"〈<endl;cout〈<"┃頁式內存管理系統模擬程序┃"<<endl;cout<〈”┠───────────────────────┨"<<endl;cout〈<"┃重慶信息工程專修學院┃"〈<endl;cout<<"┃1.0版┃"<<endl;cout<<"┃2008年3月19日┃”〈<endl;cout<<"┗━━━━━━━━━━━━━━━━━━━━━━━┛"<〈endl;cout〈〈endl〈<endl;}voidmain(){intt=1,chioce;version();initial();readData();while(t==1){cout<<endl<〈”==========================================="〈<endl;cout〈<"頁式內存管理系統模擬程序”<<endl;cout〈<”==========================================="<〈endl;cout〈<”1。加入新作業2。完成作業3。顯示當前內存位示圖4.顯示全部作業頁表0.退出”〈<endl;cout<<”請選擇:";cin〉〉chioce;switch(chioce){case1:add();break;case2:finish();break;case3:view_table();break;case4:view_pages();break;case0:t=0;break;default:cout〈<"選擇錯誤"<<endl;}}}六、思考題1。頁面的安排和回收是如何操作的.七、實驗報告要求認真填寫試驗報告,程序代碼清單要完整,精準。?實驗二文件管理一、實驗目的掌握操作系統文件管理的基本方法。二、實驗內容編寫程序代碼,模擬操作系統對文件的操作。1、運行程序,由檢查老師給出文件名,該文件中存有相應的若干命令.(程序應做提示,界面友好)。2、要求實現兩個命令:mkdir名目名(名目已存在,應給出錯誤信息。)cd名目名(名目不存在,應給出錯誤信息。)3、你所編制的程序應讀入文件,并執行其中的每一條命令。4、在屏幕上顯示文件名目的結構。(界面自己設計,但要清楚明白。)三、實驗環境(宋體小四加粗)1、一臺能正常啟動的P41.5GHZ以上個人計算機2、安裝有VisualC++6.0軟件四、實驗原理與方法模擬一個文件系統,包括名目文件,一般文件,并實現對它們的一些基本操作。假定每個名目文件最多只能占用一個塊;一個名目項包括文件名(下一級名目名),文件類型,文件長度,指向文件內容(下一級名目)的指針內容。一般文件可以只用名目項(FCB)代表。(簡略的數據結構見后面的說明)程序功能方面的要求:需要實現一個命令行操作界面,包含如下命令:1轉變名目格式:CD〈名目名〉功能:工作名目轉移到指定的名目下,只要求完成轉變到當前名目的某一個子名目下的功能,不要求實現相對名目以及肯定名目。2創建文件格式:CREATE〈文件名〉〈文件長度〉功能:創立一個指定名字的新文件,即在名目中增加一項,不考慮文件內容,但必須能輸入文件長度.3刪除文件格式:DEL〈盼望刪除的文件名〉功能:刪除指定的文件4顯示名目格式:LSALL功能:顯示全部名目以及文件,輸出時要求先輸出接近根的名目,再輸出子名目。圖示如圖。5創建名目格式:MD〈名目名〉功能:在當前路徑下創建指定的名目6刪除名目格式:RD〈名目名>功能:刪除當前名目下的指定名目,如果該名目為空,則可刪除,否則應提示是否作刪除,刪除操作將該名目下的全部文件和子名目都刪除。對于上述功能要求,完成1—4為及格,完成1—5為良,完成1-6為優。程序實現方面的要求:1對于重名(創建時),文件不存在(刪除時),名目不存在(轉變名目時)等錯誤*作情況,程序應該作出相應處理并給出錯誤信息,但是程序不得因此而退出。2界面友好,程序強壯。3界面的提示符為#,提示的命令以及調試的方法應和前面的要求全都。不要自己設計命令或者附加不要求的功能.4在考卷的說明部分(背面)有一段程序的源代碼以及對源代碼的說明,考試的編碼應在這個程序的基礎上修改而成.這段源代碼中規定了文件系統使用的數據結構和需要實現的函數框架,請將你的實現代碼填寫到合適的位置中去,可以自己添加幫助數據結構、變量、常量以及函數,但是不得轉變已有的代碼(如數據結構的定義以及函數的名稱以及參數說明)。5考試提交的源程序請命名為filesys。c.6程序設計環境使用TC2。0,在DOS操作系統下完成全部程序代碼。本程序包括實現:1轉變名目格式:CD〈名目名〉功能:工作名目轉移到指定的名目下,只要求完成轉變到當前名目的某一個子名目下的功能,不要求實現相對名目以及肯定名目.2創建文件格式:CREATE〈文件名〉〈文件長度〉功能:創立一個指定名字的新文件,即在名目中增加一項,不考慮文件內容,但必須能輸入文件長度.3刪除文件格式:DEL〈盼望刪除的文件名〉功能:刪除指定的文件4顯示名目格式:LSALL功能:顯示全部名目以及文件,輸出時要求先輸出接近根的名目,再輸出子名目。圖示如圖.5創建名目格式:MD<名目名〉功能:在當前路徑下創建指定的名目6刪除名目格式:RD<名目名>五、實驗步驟1、啟動VisualC++6.0,創建一個新的C++程序2、輸入相應的代碼。3、保存程序4、運行程序主要的代碼如下:include<stdio.h>#include<string.h>#include〈iostream。h〉#include<math.h>#include<stdlib.h>#include<iomanip。h>//******************名目和文件的結構定義******typedefstructnode{charname[50];/*名目或文件的名字*/inttype;/*0代表名目,1代表一般文件*/structnode*next;/*指向下一個兄弟結點的指針*/structnode*sub;/*指向第一個子結點的指針*/structnode*father;/*指向父結點的指針*/intsize;/*如果是文件則表示文件的大小*/}dirNode;dirNode*workDir;//定義當前工作名目dirNoderoot;//定義根名目charpath[100];//定義路徑信息//初始化函數voidinitial(){strcpy(root.name,"root”);root。type=0;root.next=NULL;root.sub=NULL;root.father=NULL;root.size=0;workDir=&root;strcpy(path,"root");}//初始化新結點函數dirNode*init(){dirNode*p;p=newdirNode;strcpy(roo,"");root.type=0;root.next=NULL;root.sub=NULL;root.father=NULL;root。size=0;returnp;}//1轉變名目voidCD(chardirName[]){dirNode*p;intflag=0;p=workDir-〉sub;if(p==NULL){cout〈<"錯誤,\"”<<dirName<〈"\"子名目不存在"<<endl;}else{while(p){if(p->type==0){if(!strcmp(p-〉name,dirName)){flag=1;break;}}p=p->next;}if(flag==1){workDir=p;strcat(path,"\\");strcat(path,p-〉name);cout<〈"工作名目已進入\”"〈<dirName〈<”\”"〈<endl;}else{cout<<"錯誤,\”"〈〈dirName<〈”\"子名目不存在"<<endl;}}}//2創建文件voidCREATE(charfileName[],intfileSize){intflag;dirNode*p,*q;q=newdirNode;strcpy(q—>name,fileName);q—>sub=NULL;q—>type=1;q->next=NULL;q—>father=workDir;q—〉size=fileSize;p=workDir—>sub;if(p==NULL){workDir-〉sub=q;cout<<”\””<<fileName〈〈"\"文件創建成功"〈<endl;}else{flag=0;while(p){if(p->type==1){if(!strcmp(p—>name,fileName)){flag=1;cout<〈"錯誤,\"”<<fileName〈〈”\"文件已存在"<<endl;}}p=p-〉next;}if(flag==0){p=workDir—〉sub;while(p->next){p=p->next;}p-〉next=q;cout<<”\"”<〈fileName<<"\"文件創建成功”〈〈endl;}}}//3刪除文件voidDEL(charfileName[]){dirNode*p,*q;intflag=0;p=workDir—>sub;if(p==NULL){cout<<"錯誤,\””<〈fileName<<"\"文件不存在”〈<endl;}else{while(p){if(p->type==1){if(!strcmp(p->name,fileName)){flag=1;break;}}p=p->next;}if(flag==1){if(p==workDir-〉sub){workDir—>sub=p->next;}else{q=workDir—>sub;while(q-〉next!=p){q=q-〉next;}q-〉next=p-〉next;deletep;}cout<〈"\""<<fileName<<"\"文件已刪除”<〈endl;}else{cout〈<"錯誤,\""〈〈fileName<<”\"文件不存在”〈〈endl;}}}//4顯示全部名目//顯示本名目下全部兄弟名目和文件voiddir(dirNode*p){while(p){if(p-〉type==0){cout.setf(2);cout〈〈setw(14)〈〈p->name〈〈setw(12)〈〈"<DIR〉"<〈endl;}else{cout.setf(2);cout<<setw(14)〈<p-〉name<<setw(12)<〈"<FILE〉"〈<setw(10)<<p—>size〈〈endl;}p=p-〉next;}}//voiddirs(dirNode*p,charstr[]){charnewstr[100];dirNode*q;cout<<str<<”下子名目及文件:”<<endl;dir(p);q=p;if(q->sub){strcpy(newstr,"");strcat(newstr,str);strcat(newstr,"\\”);strcat(newstr,q->name);dirs(q—>sub,newstr);}q=p;while(q—〉next){if(q->next—>sub){strcpy(newstr,"");strcat(newstr,str);strcat(newstr,"\\");strcat(newstr,q->next-〉name);dirs(q—>next-〉sub,newstr);}q=q—>next;}}//顯示全部名目voidLSALL(){dirNode*p;cout<〈"顯示全部名目結構”<<endl〈〈"—--—---——---——---—-——-----——-----——---—--—--"<<endl;p=root.sub;dirs(p,"root”);}//5創建名目voidMD(chardirName[]){intflag;dirNode*p,*q;q=newdirNode;strcpy(q-〉name,dirName);q—>sub=NULL;q—>type=0;q-〉next=NULL;q->father=workDir;q->size=0;p=workDir—>sub;if(p==NULL){workDir—>sub=q;cout<〈"\"”<<dirName<〈”\”子名目創建成功”<<endl;}else{flag=0;while(p){if(p—〉type==0){if(!strcmp(p—>name,dirName)){flag=1;cout<<"錯誤,\"”〈〈dirName<<"\"子名目已存在"〈<endl;}}p=p-〉next;}if(flag==0){p=workDir—>sub;while(p—>next){p=p->next;}p->next=q;cout<〈”\””<<dirName<〈”\"子名目創建成功"〈<endl;}}}//6刪除名目voidRD(chardirName[]){/*刪除當前名目下的指定名目,如果該名目為空,則可刪除,否則應提示是否作刪除,刪除操作將該名目下的全部文件和子名目都刪除*/dirNode*p,*q;intflag=0;p=workDir-〉sub;if(p==NULL){cout<<"錯誤,\""〈<dirName<〈"\"子名目不存在"<<endl;}else{while(p){if(p->type==0){if(!strcmp(p-〉name,dirName)){flag=1;break;}}p=p—>next;}if(flag==1){if(p==workDir->sub){workDir-〉sub=p-〉next;}else{q=workDir-〉sub;while(q—〉next!=p){q=q->next;}q—>next=p-〉next;deletep;}cout〈<"\""<<dirName<<"\”子名目已刪除"<<endl;}else{cout〈<"錯誤,\”"<<dirName<<"\"子名目不存在”<<endl;}}}//顯示版權信息函數voidversion(){cout〈〈endl<<endl;cout<<"┏━━━━━━━━━━━━━━━━━━━━━━━┓"<<endl;cout<<"┃模擬文件管理模擬系統┃"<〈endl;cout<<"┠───────────────────────┨"<<endl;cout<<"┃重慶信息工程專修學院┃”<〈endl;cout〈〈"┃┃"<<endl;cout<〈"┃2008年3月19日┃"<<endl;cout<〈"┗━━━━━━━━━━━━━━━━━━━━━━━┛”<〈endl;cout<〈endl<〈endl;}voidmain(){intlen,fileSize,flag,comm;charstring[50];charcommand[10];charname[40];char*s,*s1;version();initial();flag=1;while(flag){cout〈〈endl〈〈”模擬文件管理模擬系統"<<endl;cout〈〈endl〈<"CD轉變名目CREATE創建文件DEL刪除文件”<<endl〈<"LSALL顯示名目MD創建名目RD刪除名目"<<endl<<"exit退出"〈<endl;cout〈〈endl<〈"--—---———--—-—-——-—--—--——-—--—-——-—---—--"<<endl;printf(”%s:〉#",path);gets(string);len=strlen(string);if(len==0){strcpy(command,"errer”);}else{//獲得命令s=NULL;s=strchr(string,'’);if(s!=NULL){*s='\0';}strcpy(command,string);//測試命令類型if((!strcmp(command,”CD"))||!strcmp(command,"cd”)){comm=1;}else{if((!strcmp(command,"CREATE”))||!strcmp(command,"create”)){comm=2;}else{if((!strcmp(command,"DEL”))||!strcmp(command,"del”)){comm=3;}else{if((!strcmp(command,”LSALL"))||!strcmp(command,”lsall”)){comm=4;}else{if((!strcmp(command,"MD”))||!strcmp(command,"md")){comm=5;}else{if((!strcmp(command,"RD"))||!strcmp(command,”rd")){comm=6;}else{if((!strcmp(command,"EXIT"))||!strcmp(command,"exit")){comm=0;}else{comm=100;}}}}}}}switch(comm){case1://1轉變名目strcpy(name,s+1);CD(name);break;case2://2創建文件s1=strchr(s+1,’’);*s1='\0';strcpy(name,s+1);fileSize=atoi(s1+1);CREATE(name,fileSize);break;case3://3刪除文件strcpy(name,s+1);DEL(name);break;case4://4顯示名目LSALL();break;case5://5創建名目strcpy(name,s+1);MD(name);break;case6://6刪除名目strcpy(name,s+1);RD(name);break;case0://0退出系統flag=0;break;default:cout<<”命令錯誤"〈<endl;}}}}六、思考題1、新建文件是如何實現的。2、程序是如何對文件進行修改并保存的。七、實驗報告要求認真填寫試驗報告,程序代碼清單要完整,精準。實驗三實現一個簡潔的shell任務目的:學會如何在Unix系統下創建進程和管理進程,了解shell工作的基本原理.任務要求:實現一個簡潔的命令行解釋器,支持下列內部命令以及各種外部命令.Cd<名目〉更改當前的工作名目。Environ列出全部的環境變量的字符串設置。Echo<內容〉顯示echo后的內容并換行。Help簡短概要的輸出你的shell的使用方法和基本功能.Jobs輸出shell當前的一系列子進程。Quiteexitbye退出shell。同時shell應具有batchprocessing、debugging、prompt、backgroundprocessing等特征。設計方案:任務要求模擬shell實現簡潔的屬于自己的shell,所以要求從系統終端進入自己的shell,退出自己的shell后仍舊能在系統的shell中,同時執行shell時可以循環接受命令,執行完命令后等待鍵入命令.Shell的主體就是反復下面的循環過程:While(1){接收用戶輸入的命令行;解析命令行;If(用戶命令為內部命令)直接處理Elseif(用戶命令為外部命令)創建子進程執行命令Else提示錯誤的命令}轉變名目:cd命令實現名目的轉變,體現在命令顯示的時候以及使用ls命令的時候,所以進行cd操作,只要求將轉變之后的名目存下來即可,同時完善地調用cddir()函數,實現名目的更改。文件名目的更改只在cd操作中進行了更改,所以只需記錄路徑的更改,采納字符數組存儲路徑變化。環境變量顯示:運行Environ要求列出全部的環境變量的字符串設置,實行定義一個externchar**environ的變量,對字符型的指針進行移動,將環境變量打印出來。Echo命令:只需接受命令,對命令進行解析,將打印的內容隔離出來打印即可。Jobs輸出子進程:調用系統函數,可以獵取當前進程,通過獵取操作,打印出屏幕。退出:凡接收到有quiteexitbye命令,即執行退出shell,簡潔地來說就是跳出循環,結束程序。外部命令:對于外部命令,則創建子進程,讓子進程執行相關的程序.主要調用execv()函數,實現外部命令的執行。任務內容:1.接收命令定義足夠大小的字符串數組,從鍵盤接收字符串輸入,接收到換行符則停止接受,此處采納getline()函數,從stdin接收一行的數據.若輸入為空,則進入下一個循環,即再次打印提示字符串.2。解析命令使用strtok()函數實現對命令字符串進行分割,以空格為分割符,得到若干字符串,定義指針數組,分別指向各字符串.此處得到的字符串,將用于命令的比較,以及各參數的獲得.程序可以比較第一個字符串數組決定進行何種操作,而后面的參數將送入相應的執行模塊,參加程序的執行。此處不太完善的地方是對接收的字符串進行處理,將破環字符串的完整性,即程序不能再次使用命令字符串,所以需要做好備份。分割字符串數組并讓指針指向生成的數組的核心代碼如下:while((p[argc]=strtok(str,"”))!=NULL)//分割字符串{argc++;str=NULL;}3。內部命令和外部的命令的比較。利用strcmp()函數,比較指針數組指向的第一個字符串與各內部命令,若相同則跳入內部命令的執行,否則跳入外部命令。4.外部命令執行。內部命令可以直接處理,而外部命令需要

溫馨提示

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

評論

0/150

提交評論