LinuxÏÂÉèÖö˿ÚȨÏÞµÄϵͳµ÷ÓÃÓÐÁ½¸ö£ºiopermºÍiopl
Linux
ÏÂÉèÖö˿ÚȨÏÞµÄϵͳµ÷ÓÃÓÐÁ½¸ö£º
ioperm
ºÍ
iopl
¡£
Ò»¡¢
ioperm
ºÍ
iopl
½éÉÜ¡£
1.ioperm
¹¦ÄÜÃèÊö£º
Ϊµ÷Óýø³ÌÉèÖÃ
I/O
¶Ë¿Ú·ÃÎÊȨÄÜ¡£
ioperm
µÄʹÓÃÐèÒª¾ßÓг¬¼¶Óû§µÄȨÏÞ£¬Ö»ÓеͶ˵Ä
[0-0x3ff] I/O
¶Ë¿Ú¿É±»ÉèÖã¬ÒªÏëÖ¸¶¨¸ü¶à¶Ë¿ÚµÄȨÄÜ£¬¿ÉʹÓÃ
iopl
º¯Êý¡£ÕâÒ»µ÷ÓÃÖ»¿ÉÓÃÓÚ
i386
ƽ̨¡£
Ó÷¨£º
#include <unistd.h> /* for libc5 */
#include <sys/io.h> /* for glibc */
int ioperm(unsigned long from, unsigned long num, int turn_on);
²ÎÊý£º
from
£ºÆðʼ¶Ë¿ÚµØÖ·¡£
num
£ºÐèÒªÐÞ¸ÄȨÄܵĶ˿ÚÊý¡£
turn_on
£º¶Ë¿ÚµÄÐÂȨÄÜλ¡£
1
Ϊ¿ªÆô£¬
0
Ϊ¹Ø±Õ¡£
·µ»Ø˵Ã÷£º
³É¹¦Ö´ÐÐʱ£¬·µ»Ø
0
¡£Ê§°Ü·µ»Ø
-1
£¬
errno
±»ÉèΪÒÔϵÄij¸öÖµ
EINVAL
£º²ÎÊýÎÞЧ
EIO
£ºÕâÒ»µ÷Óò»±»Ö§³Ö
EPERM
£ºµ÷Óýø³ÌȨÄܲ»×ã¡£
2. iopl
¹¦ÄÜÃèÊö£º¸Ãµ÷ÓÃÓÃÓÚÐ޸ĵ±Ç°½ø³ÌµÄ²Ù×÷¶Ë¿ÚµÄȨÏÞ¡£¿ÉÒÔÓÃÓÚËùÓÐ
65536
¸ö¶Ë¿ÚµÄȨÏÞ¡£Òò´Ë£¬
ioperm
Ï൱Óڸõ÷ÓõÄ×Ó¼¯¡£ºÍ
ioperm
Ò»Ñù£¬ÕâÒ»µ÷ÓýöÊÊÓÃÓÚ
i386
ƽ̨¡£
Ó÷¨£º
#include <sys/io.h>
int iopl(int level);
²ÎÊý£º
level
£º
¶Ë¿ÚµÄȨÏÞ¼¶±ð
¡£Îª
3
ʱ¿ÉÒÔ¶Áд¶Ë¿Ú¡£Ä¬ÈÏȨÄܼ¶±ðΪ
0
£¬Óû§¿Õ¼ä²»¿É¶Áд¡£
·µ»Ø˵Ã÷£º³É¹¦Ö´ÐÐʱ£¬·µ»Ø
0
¡£Ê§°Ü·µ»Ø
-1
£¬
errno
±»ÉèΪÒÔϵÄij¸öÖµ
EINVAL
£º
level
Öµ´óÓÚ
3
ENOSYS
£ºÎ´ÊµÏָõ÷ÓÃ
EPERM
£ºµ÷Óýø³ÌȨÄܲ»×ã¡£
¶þ¡¢³ÌÐòʾÀý
1. ioperm.c
²Ù×÷µÍÓÚ
0x3FF
µÄ¶Ë¿Ú
¸Ã³ÌÐòÊ×ÏÈÉèÖÃ
0x3FF
¶Ë¿ÚµÄ¶ÁдȨÏÞ£¬È»ºó¶Á³öÔÏȵÄÖµ£¬È»ºó½«ÔÖµµÄ
LSB
·×ª²¢Ð´»Ø¶Ë¿Ú£¬²¢Ôڴ˶ÁÈ¡¶Ë¿ÚÖµ¡£
/*Godbach. Dec 18, 2008
Description:This function is used to test ioperm()*/
#include <stdio.h>
#include <unistd.h>
#include <sys/io.h>
#define PORT_ADDR 0x3FF
int main(void)
{
int ret;
char port_val;
/*set r/w permission of port_addr on, only one port*/
ret = ioperm(PORT_ADDR, 1, 1);
if(ret < 0){
Ïà¹ØÎĵµ£º
·find path -option [ -print ] [ -exec -ok command ] {} \;
#-print ½«²éÕÒµ½µÄÎļþÊä³öµ½±ê×¼Êä³ö
#-exec command {} \; -----½«²éµ½µÄÎļþÖ´ÐÐcommand²Ù×÷,{} ºÍ \;Ö®¼äÓпոñ
#-ok ºÍ-execÏàͬ£¬Ö»²»¹ýÔÚ²Ù×÷ǰҪѯ ......
ÔÚ³¬¼¶Óû§ÏÂÏÔʾLinuxϵͳÖÐÕýÔÚÔËÐеÄÈ«²¿½ø³Ì£¬Ó¦Ê¹ÓõÄÃüÁî¼°²ÎÊýÊÇ ps -aux ¡£
Linux psÃüÁîÏê½â£º
1)ps a ÏÔʾÏÖÐÐÖն˻úϵÄËùÓгÌÐò,°üÀ¨ÆäËûÓû§µÄ³ÌÐò.
2)ps -A ÏÔʾËùÓгÌÐò.
3)ps c Áгö³ÌÐòʱ,ÏÔʾÿ¸ö³ÌÐòÕæÕýµÄÖ¸ÁîÃû³Æ,¶ø²»°üº¬Â·¾¶,²ÎÊý»ò³ ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
Linux
ÊÀ½çºÜ¾«²Ê£¬ÁîÈËÑÛ»¨çÔÂÒ¡£½üÆÚÒÔÀ´£¬¸÷ÖÖÇáÐÍ
Linux
°æ±¾²»¶ÏµÇ̨ÁÁÏ֪࣬ÃûµÄ
Puppy
£¨Ð¡¹·Ö®Ãû£©±ãÊÇÒ»Àý¡£ºÎ¹Ê£¿
......
linuxÖйØÓÚÁ´½ÓÀàÐÍ·ÖΪӲÁ´½ÓºÍÈíÁ´½Ó
Ó²Á´½ÓÖ¸Áî ln Îļþ Á´½ÓÃû³Æ
ÈíÁ´½ÓÖ¸Áî ln -s Îļþ Á´½ÓÃû³Æ
¹²Í¬µã£º
¶¼¿ÉÒÔͨ¹ýÁ´½ÓÃû³ÆÈ¥·ÃÎʱ»Á´½ÓµÄÎļþ
²»Í¬µã£º
Ó²Á´½Ó»á²úÉúÒ»¸öºÍÔ´ÎļþÏàͬµÄÎļþ ²»ÂÛ´óСºÍÊôÐÔ
ɾ³ýÔ´Îļþ²»»á¶ÔÁ´½ÓÎļþ²úÉúÓ°Ïì
&nbs ......
1¡£ÒªÊ¹Óÿí×Ö·ûÖ§³Ö£¬Ê¹ÓÃw¿ªÍ·µÄһϵÁж«Î÷£¬Èçwstring£¬wofstreamµÈ¡£ÔÚʹÓÃwstringµÄʱºò£¬³£Á¿×Ö·û´®Ç°ÃæÒª¼ÓÉÏL£¬ÕâÑù²ÅÄÜת»»³Éwchar_tÐ͵Ä
else if(fileName.substr(fileName.rfind(L"."))==L".prj")
2¡£Ò»¸öÎļþÁ÷£¨ÎÞÂÛÊÇofstream»¹ÊÇwofstream£©£¬Ö»Ö§³Öconst char*×÷ΪÎļþÃû£¬¶ÔÓÚ¿í×Ö·ûµÄwstringµÄÎļþÃû ......