MPI_FILE_READ_SHARED(fh, buf,count,datatype,status)
INOUTfh共享文件句柄
OUTbuf 读取数据存放的缓冲区
IN count 读取数据的个数
IN datatype读取数据的数据类型
OUTstatus返回的状态信息
int MPI_File_read_shared(MPI_File fh, void * buf, int count, MPI_Datatype datatype,
MPI_Status * status)
MPI_FILE_READ_SHARED(FH, BUF, COUNT,DATATYPE, STATUS,IERROR)
<type> BUF(*)
INTEGER FH, COUNT, DATATYPE, STATUS(MPI_STATUS_SIZE), IERROR

MPI_FILE_READ_SHARED从句柄fh对应的共享文件中读取count个数据类型为datatype的数据,放到buf中,返回的状态是status。这一调用使用的文件指针是共享指针,即该读取操作完成后,共享指针自动移到下一个数据单元的位置,其它进程再对该共享文件进行操作时,文件指针的位置是本调用完成后指针移动过的位置。

MPI_FILE_WRITE_SHARED(fh, buf,count,datatype,status)
INOUTfh共享文件句柄
IN buf 写入数据存放的缓冲区
IN count 写入数据的个数
IN datatype写入数据的数据类型
OUTstatus返回的状态信息
int MPI_File_write_shared(MPI_File fh, void * buf, int count, MPI_Datatype datatype,
MPI_Status * status)
MPI_FILE_WRITE_SHARED(FH, BUF, COUNT,DATATYPE, STATUS,IERROR)
<type> BUF(*)
INTEGER FH, COUNT, DATATYPE, STATUS(MPI_STATUS_SIZE), IERROR

MPI_FILE_WRITE_SHARED向句柄fh对应的共享文件中写入数据,数据存放在buf中,共count个,数据类型为datatype。返回的状态信息是status。MPI_FILE_WRITE_SHARED调用和MPI_FILE_READ_SHARED一样,写入位置是共享文件指针对应的位置,该写入操作完成后,共享文件指针自动指向下一个数据单元的位置,指针的移动在所有的进程中都会体现出来,本写入操作完成后,其它进程对共享文件的操作是在本操作完成后指针所在的位置开始的。