




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、實驗一 熟悉Linux環(huán)境一、實驗?zāi)康模?、熟悉Linux下的基本操作命令,能在Linux下進行常用的操作。 2、了解Linux下cc或gcc編譯器的使用,能運行簡單的C語言程序。二、實驗知識預(yù)備(Linux相關(guān)的操作命令)1、 查看文件目錄的命令 lsls a 顯示指定目錄下所有子目錄與文件,包括隱藏文件ls -ld xh 以長格式顯示指定目錄xh的信息 2、 改變當(dāng)前目錄(cd)、創(chuàng)建新目錄(mkdir)、顯示當(dāng)前目錄(pwd)的命令mkdir tjl 在當(dāng)前目錄下建立子目錄tjlcd tjl 進入子目錄tjlcd . 返回上一級目錄pwd 顯示當(dāng)前工作目錄的絕對路徑3、 查看文件內(nèi)容的命
2、令 cat moremore linuxbook.txt 顯示linuxbook.txt文件的內(nèi)容cat testfile.txt 建立文件testfile.tex,文件內(nèi)容由鍵盤輸入,按下Ctrl+D組合鍵,存盤退出。4、 文件或目錄復(fù)制的命令 cp cp file1.txt file1.txt 將當(dāng)前目錄下的文件file1.txt復(fù)制成file2.txt5、刪除文件或目錄 rm rm ile1.txt 刪除當(dāng)前目錄下的文件file1.txt rm -i* 以交互方式刪除目錄下的所有非隱藏文件 rm -rf xh 強制刪除當(dāng)前目錄下的xh子目錄6、 inux下編輯文件的方法 gedit a.
3、c 打開編輯器編寫程序。7、 在Linux下編譯C程序的方法 先編譯: gcc a.c -o a 再執(zhí)行: ./a8、 取得幫助的方法man ls9、 權(quán)限操作 chmodChmod 屬性字 文件名 屬性字 u-擁有者 g-組用戶 o-其它用戶Chmod u+x tt (將文件tt加上擁有者可執(zhí)行)Chmod 700 a (設(shè)置文件a權(quán)限為可執(zhí)行)Chmod +x a (同上)三、實驗內(nèi)容1.登錄linux系統(tǒng),熟悉終端窗口的操作,了解linux文件系統(tǒng)。2在終端練習(xí)相關(guān)的命令。3編寫程序:輸出顯示hello,everyone!的C語言程序,并編譯和執(zhí)行。附錄1 Linux 文件系統(tǒng)結(jié)構(gòu)1、
4、Linux目錄結(jié)構(gòu)Linux文件系統(tǒng)是樹狀的結(jié)構(gòu),系統(tǒng)中每個分區(qū)都是一個文件系統(tǒng),都有自己的目錄層次。Linux會將這些分屬不同分區(qū)的、單獨的文件系統(tǒng)按樹狀的方式形成一個系統(tǒng)的總目錄層次結(jié)構(gòu)。目錄提供了一個管理文件方便而有效的途徑,最上層是根目錄,其他的所有目錄都是從根目錄出發(fā)而生成的,如下圖。微軟的DOS和Windows也是采用樹狀結(jié)構(gòu),但是其樹狀結(jié)構(gòu)的根是磁盤分區(qū)的盤符,有幾個分區(qū)就有幾個樹狀結(jié)構(gòu),它們之間的關(guān)系是并列的。但在Linux中,無論操作系統(tǒng)管理幾個磁盤分區(qū),這樣的目錄樹都只有一個。 /root/bin /home /dev /etc /lib /sbin /tmp /use /
5、var/X11R6 /src /lib /local /man /bin圖 Linux的目錄結(jié)構(gòu)Linux使用標(biāo)準(zhǔn)的目錄結(jié)構(gòu),在安裝時,安裝程序就已經(jīng)為用戶創(chuàng)建了文件系統(tǒng)和完整而固定的目錄結(jié)構(gòu),并指定了每個目錄的作用和其中的文件類型。2、 目錄功能簡介 /bin 存放常用的二進制執(zhí)行命令,如ls、mv、rm、 mkdir和telnet等。通常與/usr/bin的內(nèi)容是一樣的。 /dev 存放與設(shè)備有關(guān)的特殊文件?;镜腢NUX和Linux系統(tǒng)都將設(shè)備當(dāng)成文件,如/dev/fd0代表軟盤,/dev/cdrom則表示光盤。/etc 存放系統(tǒng)管理和配置文件,如LILO的參數(shù)、用戶的賬號和密碼,以及系
6、統(tǒng)的主要設(shè)置。/home 為用戶設(shè)置的目錄,比如用戶服務(wù)user的主目錄就是/home/usre。/lib 標(biāo)準(zhǔn)程序設(shè)計庫,又叫動態(tài)鏈接共享庫,在Linux執(zhí)行或編譯內(nèi)核時,均會用到。/slib 系統(tǒng)管理命令,存放的是系統(tǒng)管理員使用的管理程序,如fdisk、mount、 mkswap等。/boot 放置Linux核心與啟動和關(guān)閉系統(tǒng)有關(guān)的文檔。/tmp 公用的臨時文件存儲點。/root 系統(tǒng)管理員的主目錄。/mnt 系統(tǒng)提供這個目錄是讓用戶臨時裝載其他的文件系統(tǒng),如裝載軟盤的文件系統(tǒng)。/lost+found 這個目錄平時是空的,系統(tǒng)非正常關(guān)機時而留下的文件會放在這里。類似于Windows下的*
7、.chk文件。/proc 虛擬的目錄,是系統(tǒng)內(nèi)存的映射??芍苯釉L問這個目錄來獲取系統(tǒng)信息。/var 這是系統(tǒng)在工作時預(yù)先設(shè)置的工作目錄,如各種服務(wù)的日志文件和收發(fā)的郵件等。/use 最龐大和最重要的目錄之一,要用到的應(yīng)用程序和文件幾乎都在這個目錄下。其中主要有:/usr/X11R6 存放X Windows的目錄。/usr/bin 眾多的應(yīng)用程序。/usr/sbin 超級用戶的一些管理程序。/usr/doc Linux系統(tǒng)的說明文檔。/usr/include Linux下開發(fā)和編譯應(yīng)用程序所需要的頭文件。/usr/lib 存放常用的動態(tài)鏈接訓(xùn)和軟件包的配置文件。/usr/man 存儲幫助文檔。/
8、usr/src Linux內(nèi)核的源代碼就放在這里,編譯內(nèi)核時必須用到。/usr/local/bin 本地增加的命令,通常用于軟件的升級。/usr/local/lib 本地增加的庫。實驗二 進程管理一、實驗?zāi)康?1 )加深對進程概念的理解,明確進程和程序的區(qū)別。(2)進一步認(rèn)識并發(fā)執(zhí)行的實質(zhì)。(3)學(xué)習(xí)通過進程執(zhí)行新的目標(biāo)程序的方法。二、實驗知識預(yù)備三、實驗內(nèi)容1如何獲得當(dāng)前進程和父進程的ID號,以及其用戶和組的相關(guān)信息( pid.c)。#include #include #include int main() pid_t myPid; pid_t myParentPid; gid_t myGi
9、d; uid_t myUid; myPid=getpid(); myParentPid=getppid(); myGid=getgid(); myUid=getuid(); printf(my process id is %dn,myPid); printf(my parents process id is %dn,myParentPid); printf(my user id is %dn,myUid); printf(my group id is %dn,myGid); return 0; 2一個程序如何運行另一個程序 答案:調(diào)用execvpexccvp目標(biāo)在指定路徑中查找并執(zhí)行一個文件頭
10、文件#include函數(shù)Result=execvp(const char *file,const char *argv)參數(shù)File 要執(zhí)行的文件名Argv 字符串?dāng)?shù)組返回值-1 如果出錯例:exec_test.c#include #include #include #include #include int main(int argc, char *argv) /以NULL結(jié)尾的字符串?dāng)?shù)組的指針,適合包含v的exec函數(shù)參數(shù) char *arg = ls, -a, NULL; /* * 創(chuàng)建子進程并調(diào)用函數(shù)execl * execl 中希望接收以逗號分隔的參數(shù)列表,并以NULL指針為結(jié)束標(biāo)志
11、 */ if( fork() = 0 ) / in clild printf( 1-execl-n ); if( execl( /bin/ls, ls,-a, NULL ) = -1 ) perror( execl error ); exit(1); sleep(1); /* *創(chuàng)建子進程并調(diào)用函數(shù)execv *execv中希望接收一個以NULL結(jié)尾的字符串?dāng)?shù)組的指針 */ if( fork() = 0 ) / in child printf(2-execv-n); if( execv( /bin/ls,arg) 0) perror(execv error ); exit(1); sleep(
12、1); /* *創(chuàng)建子進程并調(diào)用 execlp *execlp中 *l希望接收以逗號分隔的參數(shù)列表,列表以NULL指針作為結(jié)束標(biāo)志 *p是一個以NULL結(jié)尾的字符串?dāng)?shù)組指針,函數(shù)可以DOS的PATH變量查找子程序文件 */ if( fork() = 0 ) / in clhild printf(3-execlp-n); if( execlp( ls, ls, -a, NULL ) 0 ) perror( execlp error ); exit(1); sleep(1); /* *創(chuàng)建子里程并調(diào)用execvp *v 望接收到一個以NULL結(jié)尾的字符串?dāng)?shù)組的指針 *p 是一個以NULL結(jié)尾的字符
13、串?dāng)?shù)組指針,函數(shù)可以DOS的PATH變量查找子程序文件 */ if( fork() = 0 ) printf(4-execvp-n); if( execvp( ls, arg ) 0 ) perror( execvp error ); exit( 1 ); sleep(1); /* *創(chuàng)建子進程并調(diào)用execle *l 希望接收以逗號分隔的參數(shù)列表,列表以NULL指針作為結(jié)束標(biāo)志 *e 函數(shù)傳遞指定參數(shù)envp,允許改變子進程的環(huán)境,無后綴e時,子進程使用當(dāng)前程序的環(huán)境 */ if( fork() = 0 ) printf(5-execle-n); if( execle(/bin/ls, ls
14、, -a, NULL, NULL) = -1 ) perror(execle error ); exit(1); sleep(1); /* *創(chuàng)建子進程并調(diào)用execve * v 希望接收到一個以NULL結(jié)尾的字符串?dāng)?shù)組的指針 * e 函數(shù)傳遞指定參數(shù)envp,允許改變子進程的環(huán)境,無后綴e時,子進程使用當(dāng)前程序的環(huán)境 */ if( fork() = 0 ) printf(6-execve-n); if( execve( /bin/ls, arg, NULL ) = 0) perror(execve error ); exit(1); return 0;2 如何建立新的進程 Fork目標(biāo)創(chuàng)建進
15、程頭文件#include函數(shù)Pid_t=fork(void)參數(shù)沒有返回值-1 如果出錯0 返回到子進程Pid 將進程的進程ID傳給父進程例:#includemain()int fork_rv; print(before:my pid is %dn,getpid(); fork_rv=fork();if (fork_rv=-1) perror(fork);else if(fork_rv=0) printf(“I am the child.mypid=%dn”,getpid();else printf(“I am the parent,my child.is %dn”,fork_rv);運行結(jié)果
16、: before:my pid is 5931 I am the parent,my child is 5932 I am the child, my pid=5932 3vfork(1)執(zhí)行程序fork.c,寫出輸出結(jié)果。#include #include #include #include int main()pid_t pid;/ pid 實質(zhì)是一個整數(shù)int n = 0;/定義一個局部變量pid = fork();/創(chuàng)建進程if(pid 0)/返回值大于0,表示是父進程,返回的子進程IDwhile(1)printf(this is father processn);printf(fat
17、her n=%dn,n);sleep(1);/休眠一秒鐘return 0;(2)執(zhí)行程序vfork.c,寫出輸出結(jié)果。#include #include #include #include int main()pid_t pid;/ pid 實質(zhì)是一個整數(shù)int n = 0;/定義一個局部變量pid = vfork();/創(chuàng)建進程if(pid =3)break;exit(1);if(pid 0)/返回值大于0,表示是父進程,返回的子進程IDwhile(1)printf(this is father processn);printf(father n=%dn,n);sleep(1);/休眠一秒鐘
18、return 0;4 終止進程#include#includeint main()printf(using _exit-n);printf(This is the content in buffer);_exit(0); #include#includeint main()printf(using exit-n);printf(This is the content in buffer);exit(0); 5 父進程如何等待子進程的退出 Wait目標(biāo)等待進程結(jié)束頭文件#include#include函數(shù)Pid_t result=wait(int * statusptr)參數(shù)Statusptr子
19、進程的運行結(jié)果返回值-1 如果出錯Pid 結(jié)束進程的進程ID例:waitdemo.c#includemain()int newpid;int delay=2; int child_code(),parent_code(); printf(before:mypid is %dn,getpid(); if(newpid=fork()=-1) perror(fork);else if(newpid=0) child_code(delay);else parent_code(newpid);int child_code(int delay) printf(child %d here.will slee
20、p for %d secondsn,getpid(),delay); sleep(delay); printf(child done.about to exitn); exit(17);int parent_code(int childpid)int wait_rv; wait_rv=wait(0); printf(done waiting for %d.wait returned:%dn,childpid,wait_rv);運行結(jié)果: befora:mypid is 10328 child 10329 here.will sleep for 2 seconds child done. Abo
21、ut to exit do waiting for 10329.wait returned:10329實驗三 編程實現(xiàn)自己的shell一、實驗?zāi)康牧私鈙hell的功能和其執(zhí)行程序的過程,編寫自己的shell程序。二、實驗知識預(yù)備1. 通過PS命令查看用戶空間的進程 $ps pid tty time cmd 1775 pts/1 00:00:17 bash 1981 pts/1 00:00:00 ps 可以設(shè)置參數(shù): -a :列出所在進程,包括其他終端由其他用戶運行 的程序。 -l:更出各個進程的詳細(xì)狀態(tài)。2shell進程控制和程序控制的一個工具Shell是一個管理進程和運行進程的程序。有三個主
22、要功能。(1)運行程序:shell是一個程序啟動器。(2)管理輸入和輸出:shell將進程的輸入和輸出連接到一個文件或其他的進程。(3)編程3shell如何運行程序的(1)用戶鍵入程序名 a.out(2)Shell建立一個新的進程來運行這個程序;(3)Shell將程序從磁盤載入(4)程序在它的進程中運行直到結(jié)束4如何編程實現(xiàn)自己的shell為了要寫一個shell,需要:(1)運行一個程序(2)建立一個進程(3)等待exit()三、實驗內(nèi)容1編輯程序psh1.c,編譯并執(zhí)行。#include#include#include#define maxargs 20#define arglen 100i
23、nt main()char *arglistmaxargs+1; int numargs; char argbufarglen; char *makestring(); numargs=0; while(numargs0)arglistnumargs=0; execute(arglist); numargs=0; return 0;int execute(char *arglist)execvp(arglist0,arglist);perror(execvp failed);exit(1);char *makestring(char *buf)char *cp,*malloc(); bufst
24、rlen(buf)-1=0; cp=malloc(strlen(buf)+1); if(cp=0)fprintf(stderr,no memoryn); exit(1);strcpy(cp,buf);return cp;2編輯程序psh2.c,編譯并執(zhí)行。#include#include#include#define maxargs 20#define arglen 100int main()char *arglistmaxargs+1; int numargs; char argbufarglen; char *makestring(); numargs=0; while(numargs0)
25、arglistnumargs=0; execute(arglist); numargs=0; return 0;int execute(char *arglist)int pid,exitstatus;pid=fork();switch(pid)case -1:perror(fork failed); exit(1);case 0: execvp(arglist0,arglist); perror(excvp failed); exit(1);default:while(wait(&exitstatus)!=pid); printf(child exited with status %d,%d
26、n,exitstatus8,exitstatus&0377);char *makestring(char *buf)char *cp,*malloc(); bufstrlen(buf)-1=0; cp=malloc(strlen(buf)+1); if(cp=0)fprintf(stderr,no memoryn); exit(1);strcpy(cp,buf);return cp;3測試運行結(jié)果(1)分別執(zhí)行psh1和psh2,執(zhí)行過程中,輸入ps命令寫出兩個程序運行的結(jié)果。并分析區(qū)別和原因。(2)在執(zhí)行psh2過程程,輸入./psh1和ps命令寫程序運行的結(jié)果。、實驗四 線程通訊一、實驗?zāi)?/p>
27、的用clone()創(chuàng)建四個輕進程(線程),用參數(shù)指明共享內(nèi)存等資源,通過共享內(nèi)存模擬生產(chǎn)者-消費者問題。二、實驗知識預(yù)備1.int clone(int(*fn)(void *arg),void *stack, int flag,void *arg); fn-輕進程所執(zhí)行的函數(shù);stack-所使用的棧 arg-是調(diào)用過程的對應(yīng)參數(shù) flag-是組合值 CLONE_VM:表示子進程共享父進程內(nèi)存 CLONE_FS:表示子進程共享父進程的文件系統(tǒng) CLONE_SIGHAND:表示子進程共享父進程的消息處理機制 CLONE_PID:指子進程繼承父進程的id號2. 信號燈類Sem_t sSem_init
28、(s,m,n)sem_wait(&s)Sem_post(&s)3.互斥鎖類Pthread_mutex_t mutexPthread_mutex_init(&mutex,NULL)Pthread_mutex_lock(&mutex)Pthread_mutex_unlock三、實驗內(nèi)容1編輯程序 clone.c#include #include #include #include #include int producer(void *args);int consumer(void *args);pthread_mutex_t mutex;sem_t product;sem_t warehouse
29、;char buffer84;int bp=0;main(int argc,char *argv) pthread_mutex_init(&mutex,NULL); sem_init(&product,0,0); sem_init(&warehouse,0,8); int clone_flag,arg,retval; char *stack; clone_flag=CLONE_VM; int i; for(i=0;i2;i+) arg=i; stack=(char*)malloc(4096); retval=clone(void*)producer,&(stack4095),clone_fla
30、g, (void*)&arg); stack=(char*)malloc(4096); retval=clone(void*)consumer,&(stack4095),clone_flag, (void*)&arg); exit(1);int producer(void *args) int id=*(int*)args); int i; for(i=0;i10;i+) sleep(i+1); sem_wait(&warehouse); pthread_mutex_lock(&mutex); if(id=0) strcpy(bufferbp,aaa0); else strcpy(buffer
31、bp,bbb0); bp+; printf(producer %d produce %s in %dn,id,bufferbp,bp-1); pthread_mutex_unlock(&mutex); sem_post(&product); printf(producer %d is over!n,id); int consumer(void *args) int id=*(int*)args); int i; for(i=0;i10;i+) sleep(10-i); sem_wait(&product); pthread_mutex_lock(&mutex); bp-; printf(con
32、sumer %d get %s in %d n,id,bufferbp,bp+1); strcpy(bufferbp,zzz0); pthread_mutex_unlock(&mutex); sem_post(&warehouse); printf(consumer %d is over!n,id); 2編譯gcc clone.c -o cl lpthread3.執(zhí)行4分析執(zhí)行的結(jié)果實驗五 進程高級通訊一、實驗?zāi)康模河肞ipe()創(chuàng)建一個管道,然后用fork()創(chuàng)建兩個生產(chǎn)進程和兩個消費進程,它們之間能過pipe()傳遞信息。二、實驗知識預(yù)備1. pid=fork() 創(chuàng)建一個子進程,子進程是
33、父進程的完整復(fù)制。 返回值對于父進程,是子進程的ID,對于子進程值為0。2Ret_val=pipe(fd) 創(chuàng)建一個管道文件,參數(shù)定義為int fd2 返回值為兩個文件描述符,放置在fd中。 fd0用于管道文件的讀fd1用于管道文件的寫3子進程1: write(fd1,buf1,count1);子進程2: read(fd0,buf2,count2)三、實驗內(nèi)容1編輯程序 jc.c#include sys/types.h#include sys/file.h#include unistd.hchar r_buf4;char w_buf4;int pipe_fd2;pid_t pid1,pid2,
34、pid3,pid4;int producer(int id);int consumer(int id);int main(int argc,char *argv) if (pipe(pipe_fd)0) printf(pipe create error.n); exit(-1); else printf(pipe is created successfully!n); if(pid1=fork()=0) producer(1); if(pid2=fork()=0) producer(2); if(pid3=fork()=0) consumer(1); if(pid4=fork()=0) con
35、sumer(2); close(pipe_fd0); close(pipe_fd1);int i,pid,status;for(i=0;i4;i+) pid=wait(&status);exit(0);int producer(int id)printf(producer %d is running!n,id); close(pipe_fd0); int i=0; for(i=1;i10;i+)sleep(3); if(id=1) strcpy(w_buf,aaa0); else strcpy(w_buf,bbb0); if(write(pipe_fd1,w_buf,4)=-1) printf
36、(write to pipe errorn); close(pipe_fd1); printf(producer %d is over!n,id); exit(id); int consumer(int id)close(pipe_fd1);printf(consumer %d is running!n,id); if(id=1) strcpy(w_buf,ccc0); else strcpy(w_buf,ddd0);while(1) sleep(1); strcpy(r_buf,eee0); if(read(pipe_fd0,r_buf,4)=0) break; printf(consume
37、r %d get %s,while the w_buf is %sn,id,r_buf,w_buf); close( pipe_fd0 ); printf(consumer %d is over!n,id); exit(id); #include #include #include #include #include int producer(void *args);int consumer(void *args);pthread_mutex_t mutex;sem_t product;sem_t warehouse;char buffer84;int bp=0;main(int argc,c
38、har *argv) pthread_mutex_init(&mutex,NULL); sem_init(&product,0,0); sem_init(&warehouse,0,8); int clone_flag,arg,retval; char *stack; clone_flag=CLONE_VM; int i; for(i=0;i2;i+) arg=i; stack=(char*)malloc(4096); retval=clone(void*)producer,&(stack4095),clone_flag, (void*)&arg); stack=(char*)malloc(40
39、96); retval=clone(void*)consumer,&(stack4095),clone_flag, (void*)&arg); exit(1);int producer(void *args) int id=*(int*)args); int i; for(i=0;i10;i+) sleep(i+1); sem_wait(&warehouse); pthread_mutex_lock(&mutex); if(id=0) strcpy(bufferbp,aaa0); else strcpy(bufferbp,bbb0); bp+; printf(producer %d produce %s in %dn,id,bufferbp,bp-1); pthread_mutex_unlock(&mutex); sem_post(&product); printf(producer %d is over!n,id); int consumer(void *args) int id=*(int*)args); int i; for(i=0;i”),當(dāng)主程序無任務(wù)可調(diào)度時執(zhí)行,以空耗一個時間單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年鳳梨酥項目投資價值分析報告
- 2025至2030年中國廢酒精回收系統(tǒng)行業(yè)發(fā)展預(yù)測及投資策略報告
- 2025至2030年中國工商用制冷、空調(diào)設(shè)備零部件行業(yè)發(fā)展預(yù)測及投資策略報告
- 2025年靜電粉末涂裝設(shè)備項目可行性研究報告
- 2025年環(huán)境實驗機項目可行性研究報告
- 電力現(xiàn)場安全培訓(xùn)
- 2025年全科醫(yī)師考試知識更新策略試題及答案
- 復(fù)習(xí)要點2025年臨床執(zhí)業(yè)醫(yī)師考試試題及答案
- 2025年發(fā)熱塊項目可行性研究報告
- 中小學(xué)教師資格考試中自主學(xué)習(xí)的試題及答案
- 財務(wù)報表分析-第五章 營運能力分析
- mm立式矯直機輥系設(shè)計
- (教學(xué)設(shè)計)專題4 第2單元 基礎(chǔ)課時13 羧酸的性質(zhì)及應(yīng)用2023-2024學(xué)年新教材高中化學(xué)選擇性必修3(蘇教版2019)
- 《建筑玻璃膜應(yīng)用技術(shù)規(guī)程 JGJT351-2015》
- 2024年黑龍江龍東地區(qū)初中畢業(yè)學(xué)業(yè)統(tǒng)一考試中考物理試卷(真題+答案解析)
- 人教版音樂三年級下冊第五單元 打字機 教案
- 國際物流專員聘用協(xié)議
- 《探究杠桿的平衡條件》說課稿(全國實驗說課大賽獲獎案例)
- 2024年廣東省公需課《百縣千鎮(zhèn)萬村高質(zhì)量發(fā)展工程與城鄉(xiāng)區(qū)域協(xié)調(diào)發(fā)展》考試答案
- 2024年江西省初中學(xué)業(yè)水平考試數(shù)學(xué)試題卷
- 《小蝦》學(xué)習(xí)任務(wù)群教學(xué)課件
評論
0/150
提交評論