博文
pthread_setaffinity_np(2011-11-19 09:32:00)
摘要:http://www.thinkingparallel.com/2006/08/18/more-information-on-pthread_setaffinity_np-and-sched_setaffinity/
More information on pthread_setaffinity_np and sched_setaffinity
If you're new here and like what you read, you may want to subscribe to my RSS blog feed or free email updates. Thanks for visiting!
Skimming through the activity logs of this blog, I can see that many people come here looking for information about pthread_setaffinity_np. I mentioned it briefly in my article about Opteron NUMA-effects, but barely touched it because I had found a more satisfying solution for my personal use (taskset). And while I do not have in depth knowledge of the function, maybe the test programs I wrote will be of some help to someone to understand the function better. I will also post my test program for sched_setaffinity here while I am at it, simply because the two offer similar functionality.
Problem description
Short recap: The problem both functions are trying to solve is ......
SetThreadAffinityMask设置使用多核CPU的哪个核心(2011-11-19 09:27:00)
摘要:MSDN上的描述:
C++代码
SetThreadAffinityMask
The SetThreadAffinityMask function sets a processor affinity mask for the specified thread.
DWORD_PTR SetThreadAffinityMask(
HANDLE hThread,
DWORD_PTR dwThreadAffinityMask
);
SetThreadAffinityMask
The SetThreadAffinityMask function sets a processor affinity mask for the specified thread.
DWORD_PTR SetThreadAffinityMask(
HANDLE hThread,
DWORD_PTR dwThreadAffinityMask
);
Parameters
hThread
[in] Handle to the thread whose affinity mask is to be set.
This handle must have the THREAD_SET_INFORMATION and THREAD_QUERY_INFORMATION access rights. For more information, see Thread Security and Access Rights.
dwThreadAffinityMask
[in] Affinity mask for the thread.
Windows Me/98/......
gcc强制连接静态库和动态库(2011-11-16 15:17:00)
摘要:静态库混合动态库要加特殊指令:
gcc -g -lstdc++ -g -WI,-Bdynamic -L. -lxxx -WI,-Bstatic -L. -lxxx -o main main.cc......
CentOS下mysql远程连接的失败的解决方法(转)(2011-11-16 12:37:00)
摘要:mysql远程连接失败的解决方法(CentOS版)
(1)先将mysql服务停掉
# /etc/init.d/mysqld stop
(2)查看mysql配置文件
# vi /etc/my.cnf
特
别要留意其中的两项:bind_address和skip_networking,bind_address一定不能为127.0.0.1,否则只能在本
地连接,skip_networking一定不能出现,否则只接受unix socket而不能提供tcp
socket服务,建议将bind_address和skip_networking直接都注释掉。
=========
在my.cnf中添加bind_address
=========
(3)重启mysql服务
# /etc/init.d/mysqld start
(4)对用户授权,允许指定用户远程访问,最简单的方式是将mysql库中user表中的对应的用户的host设置为%,亦即允许该用户从任意ip远程访问
# mysql -u root -ppassword //进入mysql控制台
# mysql>use mysql;
# mysql>update user set host = '%' where user = 'root'; //这个命令执行错误时可略过
# mysql>flush privileges;
# mysql>select host, user from user; //检查‘%’ 是否插入到数据库中
#mysql>quit
(5)一般情况下此时就能满足远程访问的要求,但对于某些系统还需要检查防火墙设置,和ip访问策略,以防系统对网络访问的限制造成无法远程访问mysql
对于CentOS系统而言,最好检测iptables设置。具体步骤如下
5.1 暂停iptables服务
# service iptables stop
5.......
开机自动启动VSFTPD服务(转)(2011-11-16 10:06:00)
摘要:网上找到的,我用了第三种方法,正在验证过程,先收藏了!
其实我建议大家不要开机启动,我们在需要用的时候:service vsftpd
start 用完之后 service vsftpd stop
这样做会更安全,多一个服务多一个危险。
开机默认VSFTPD服务自动启动:
方法一:
[root@localhost etc]# chkconfig --list|grep vsftpd ( 查看情况)
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@localhost etc]# chkconfig vsftpd on (执行ON设置)
方法二:
修改 /etc/rc.local , 把行/usr/local/sbin/vsftpd &
插入文件中,以实现开机自动启动。
方法三:
修改/etc/rc.local,加入/etc/rc.d/init.d/vsftpd start
又找到了一个,挺不错的:
11.2.2 启动和关闭Vsftpd
1.用命令行方式启动和停止
在Red Hat Enterprise Linux 5中,通过命令行方式启动和停止Vsftpd服务可使用如下命令。
启动Vsftpd服务
其命令为:
# service vsftpd start
为 vsftpd 启动 vsftpd: [确定]
停止Vsftpd服务
停止Vsftpd服务的命令为:
# service vsftpd stop
关闭 vsftpd: [确定]
重新启动Vsftpd服务
重新启动Vsftpd服务的命令为:
# service vsftpd restart
关闭 vsftpd: [确定]
为 vsftpd 启动 vsftpd: [确定]
检查Vsftpd服务状态
可以采用以下命令检查Vsftpd服务的运行状态:
service vsftpd status
vsftpd (pid 3571) 正在运行...
也可以使用以下命令,实现相同的结果:
# /etc/init.d/vsftp......
CentOS开启telnet服务(转)(2011-11-15 17:24:00)
摘要:服务器:CentOS-5.1(192.168.1.87)
客户机:FC6(192.168.1.86) Windows XP(192.168.1.88)
虽然telnet的明文传输有很大的安全隐患,而且现在基本上也被SSH来取代了,但是为了学习还是有必要了解一下,好了,进入正题
实验名:telnet服务器配置
一、安装telnet软件包(通常要两个)。
1、 telnet-client (或 telnet),这个软件包提供的是 telnet 客户端程序;
2、是 telnet-server 软件包,这个才是真正的 Telnet server 软件包!
安装之前先检测是否这些软件包已安装,方法如下:
[root@linuxchao root]#rpm –qa |grep telnet
telnet-server-0.17-38.e15
如果没有检测到软件包,需要进行安装,CentOS服务器模式默认已安装了telnet软件包,但是服务器需要telnet-server软件包才行(安装
包在光盘内 也可在在网络上下载安装)
我的是硬盘安装的CentOS系统,所以会挂载硬盘分区之后再挂载镜像,光盘安装方法相似!
[root@linuxchao root]mount /dev/hda6 /mnt/da #da是我在/mnt下建立的目录,hda6分区为centos镜像所在
[root@linuxchao root]mount -t iso9660 -o loop /mnt/da/CentOS-5.1-i386-bin-DVD.iso /mnt/iso #iso目录也是我建的
[root@linuxchao root]cd /mnt/iso/CentOS #这个目录是rpm包所在的目录
[root@linuxchao root]rpm -ivh telnet-server-0.17-38.e15.rpm
上面就安装好......
CentO启动关闭和服务管理(转)(2011-11-15 16:57:00)
摘要:站时没有看过, 留个标记
CentOS启动顺序
1.当我们按下电源按钮,把电源投入到机器中后,
首先被启动执行的就是这个BIOS(BasicInput/Output System)程序。
BIOS的功能是......并且访问硬盘先头512Bit的MBR(Master Boot Record)。
2.经BIOS的控制,将MBR中的Boot Record调入内存中。
这里就要说说Linux的Boot程序了,Linux的Boot程序有GRUB和LILO,
而CentOS默认的Boot程序是GRUB。
3.通过Boot程序,访问硬盘中的Linux内核程序。
4.将内核程序调入内存中。
5.内核程序调用完成后,通过内核访问硬盘中将要用到的其他文件。
内核第一个执行的文件是/sbin/init,而这个文件的设置和定义文件是/etc/inittab这个文件,
也就是说/sbin/init按照/etc/inittab的定义来执行下一步的启动,
那我们就要看看/etc/inittab文件是怎么回事儿了。
[root@linux ~]# cat -n /etc/inittab
1 #
2 # inittab This file describes how the INIT process should set up
3 # the......
Linux中搭建vsftpd不能正常访问–vsftpd防火墙设置(转)(2011-11-15 16:54:00)
摘要:
一.权限导致vsftpd不能正常访问
安装vsftpd软件后,ftp默认的家目录为/var/ftp, 就是这个/var/ftp的权限设置错误导致的,这个目录的权限是不能打开所有权限的;是您运行了chmod 777 /var/ftp所致。
如下FTP用户的家目录是不能针对所有用户、用户组、其它用户组完全开放;
[root@localhost ~]# ls -ld /var/ftp
drwxrwxrwx 3 root root 4096 2009-03-23 /var/ftp 修正这个错误,应该用下面的办法;
[root@localhost ~]# chown root:root /var/ftp
[root@localhost ~]# chmod 755 /var/ftp
二.开启LINUX服务器防火墙后,不能正常登录。
常规设置在防火墙配置文件中添加21端口,还是不能正常访问到FTP服务器。
首先要了解概念;
FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive
(也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送
PASV命令到 FTP Server。
PORT 和 PASV的简单区别如下:
Port模式FTP 客户端首先和FTP服务器的TCP
21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。
PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP
server必须和客户端建立一个新的连接用来传送数据。
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到
Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务
器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。
因为IE浏览器默认使用的是Pa......
centos 开启防火墙(2011-11-15 16:52:00)
摘要:今天弄了
centos的ftp设置
开启防火墙端口:
/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart
查看防火墙信息:
/etc/init.d/iptables status......
连接ftp时报cannot change directory(转)(2011-11-15 16:48:00)
摘要:问题:
今天发现linux下连接ftp时报500 OOPS: cannot change directory :/root
解决方法:
在终端输入命令:
setsebool ftpd_disable_trans 1
service vsftpd restart
就OK了!
setsebool ftpd_disable_trans 1
不好用
service vsftpd restart......