学习内容:MPI2 standart ,
资料来源:http://www.mpi-forum.org/docs/mpi2-report.pdf
要点:MPI2 IO 标准
etype 基本类型
filetype 由一个或多个etype组成,中间允许由空洞
displacement:以字节为单位,从文件第一个字节开始
offset:以etype为单位,从displacement开始
view:文件视图?现在还不是很理解,详见Page 232, Figure9.3
Data access routines:
Data is moved between files and processes by issuing
read and write calls. There are three orthogonal aspects
to data access:
1. positioning (explicit offset vs. implicit file pointer),
2. synchronism (blocking vs. nonblocking and split collective), and
3. coordination (noncollective vs. collective).
重点要掌握P220 的那张data access routines列表,非常详尽。
Wednesday, March 15, 2006
Monday, March 13, 2006
PVFS2 components
1. pvfs2-server
2. system interface
3. management interface
4. Linux kernel driver
5. pvfs2-client
6. ROMIO PVFS2 device
PVFS2 objects:
1. directory
2. metafile
3. datafile
4. symbolic link
Handles and its range, an example:
Name pvfs2-fs
ID 584761686
RootHandle 1048576
Range cse-wang-server 4-715827885
Range cse-wang05b 715827886-1431655767
Range cse-wang11 1431655768-2147483649
Range cse-wang-server 2147483650-2863311531
Range cse-wang05b 2863311532-3579139413
Range cse-wang11 3579139414-4294967295
TroveSyncMeta yes
TroveSyncData no
AttrCacheKeywords datafile_handles,metafile_dist
AttrCacheKeywords dir_ent, symlink_target
AttrCacheSize 4093
AttrCacheMaxNumElems 32768
2. system interface
3. management interface
4. Linux kernel driver
5. pvfs2-client
6. ROMIO PVFS2 device
PVFS2 objects:
1. directory
2. metafile
3. datafile
4. symbolic link
Handles and its range, an example:
Name pvfs2-fs
ID 584761686
RootHandle 1048576
Range cse-wang-server 4-715827885
Range cse-wang05b 715827886-1431655767
Range cse-wang11 1431655768-2147483649
Range cse-wang-server 2147483650-2863311531
Range cse-wang05b 2863311532-3579139413
Range cse-wang11 3579139414-4294967295
TroveSyncMeta yes
TroveSyncData no
AttrCacheKeywords datafile_handles,metafile_dist
AttrCacheKeywords dir_ent, symlink_target
AttrCacheSize 4093
AttrCacheMaxNumElems 32768
Friday, March 10, 2006
cvs for lsfs-pvfs2 project
1. 建立repository
cvs -d D:/server_root/cvs init
cd /home/penggu/DOEproject/lsfs-pvfs2-imp/user-level/pvfs2-1.4.0
cvs -d D:/server_root/cvs import -m "initial import into CVS" pvfs2-1.4.0-dev penggu start
2.check out
cd /home/penggu/DOEproject/lsfs-pvfs2-imp/user-level/dev
cvs -d D:/server_root/cvs co pvfs2-1.4.0-dev
cvs -d D:/server_root/cvs init
cd /home/penggu/DOEproject/lsfs-pvfs2-imp/user-level/pvfs2-1.4.0
cvs -d D:/server_root/cvs import -m "initial import into CVS" pvfs2-1.4.0-dev penggu start
2.check out
cd /home/penggu/DOEproject/lsfs-pvfs2-imp/user-level/dev
cvs -d D:/server_root/cvs co pvfs2-1.4.0-dev
Tuesday, March 07, 2006
pvfs2 cvs check out and update
Dowload module:
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs login
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs co pvfs2
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
Update:
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs login
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs update -P -d
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
如何想要自动化管理,需要三个script文件:
cvs_checkout.sh, cvs_update.sh and cvs_login.exp
------------------------------------
cvs_checkout.sh
------------------------------------
#!/bin/bash
expect cvs_login.exp
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs co pvfs2
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
------------------------------------
cvs_update.sh
------------------------------------
#!/bin/bashexpect
cvs_login.exp
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs update -P -d
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
cvs_login.exp
----------------------------------
set remote_server cvs.parl.clemson.edu
set my_password fakeone
# Open an cvs session to a remote server, and wait for a password prompt.
spawn cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs login
expect "password:"
# Send the password, and then wait for an bash prompt.
send "$my_password\r"
expect eof
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs login
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs co pvfs2
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
Update:
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs login
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs update -P -d
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
如何想要自动化管理,需要三个script文件:
cvs_checkout.sh, cvs_update.sh and cvs_login.exp
------------------------------------
cvs_checkout.sh
------------------------------------
#!/bin/bash
expect cvs_login.exp
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs co pvfs2
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
------------------------------------
cvs_update.sh
------------------------------------
#!/bin/bashexpect
cvs_login.exp
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs update -P -d
cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs logout
cvs_login.exp
----------------------------------
set remote_server cvs.parl.clemson.edu
set my_password fakeone
# Open an cvs session to a remote server, and wait for a password prompt.
spawn cvs -d :pserver:anonymous@cvs.parl.clemson.edu:/anoncvs login
expect "password:"
# Send the password, and then wait for an bash prompt.
send "$my_password\r"
expect eof
Monday, March 06, 2006
SSH Without a Password
The steps assume that a DSA key is being used. To use a RSA key substitute 'rsa' for 'dsa'. The steps assume that you are using a Bourne-like shell (sh, ksh or bash) Some of this information came from: http://www.der-keiler.de/Mailing-Lists/securityfocus/Secure_Shell/2002-12/0083.html
For our testing purpose, we define two servers and one client
SSH client: cse-wang-server
SSH server: cse-wang05b cse-wang11
Steps:1. On the client run the following commands:
mkdir -p $HOME/.ssh
chmod 0700 $HOME/.ssh
ssh-keygen -t dsa -f $HOME/.ssh/id_dsa -P ''
cd $HOME/.ssh/
mv id_dsa.pub id_dsa.pub-`hostname -s`
for server in cse-wang05b.unl.edu cse-wang11.unl.edu ; do
echo "Host ${server}" >> config
echo " IdentityFile ~/.ssh/id_dsa" >> config
scp id_dsa.pub-`hostname -s` ${server}:./.ssh/
done
2.On the server run the following commands:
cd $HOME/.ssh && ln -s authorized_keys2 authorized_keys
cd $HOME/.ssh/
for client in cse-wang-server ; do
cat id_dsa.pub-${client} >> authorized_keys2
done
chmod 0600 authorized_keys2
3.On the client, test the ssh connectionssh cse-wang05b.unl.edu
For our testing purpose, we define two servers and one client
SSH client: cse-wang-server
SSH server: cse-wang05b cse-wang11
Steps:1. On the client run the following commands:
mkdir -p $HOME/.ssh
chmod 0700 $HOME/.ssh
ssh-keygen -t dsa -f $HOME/.ssh/id_dsa -P ''
cd $HOME/.ssh/
mv id_dsa.pub id_dsa.pub-`hostname -s`
for server in cse-wang05b.unl.edu cse-wang11.unl.edu ; do
echo "Host ${server}" >> config
echo " IdentityFile ~/.ssh/id_dsa" >> config
scp id_dsa.pub-`hostname -s` ${server}:./.ssh/
done
2.On the server run the following commands:
cd $HOME/.ssh && ln -s authorized_keys2 authorized_keys
cd $HOME/.ssh/
for client in cse-wang-server ; do
cat id_dsa.pub-${client} >> authorized_keys2
done
chmod 0600 authorized_keys2
3.On the client, test the ssh connectionssh cse-wang05b.unl.edu
Subscribe to:
Posts (Atom)