Ê×ÏÈÒªÓÐһ̨´øÓÐTPM 1.2оƬ£¬×°ÓÐlinuxϵͳµÄ¼ÆËã»ú¡£
ʹÓÃÏÂÃæÕâÌõÃüÁî¿ÉÒԲ鿴ϵͳÄÚºËtpmÇý¶¯Çé¿ö£º
$ ls -la /lib/modules/`uname -r`/kernel/drivers/char/tpm
×Ü¼Æ 100
drwxr-xr-x 2 root root 4096 02-03 21:47 .
drwxr-xr-x 7 root root 4096 02-03 21:47 ..
-rwxr--r-- 1 root root 9812 01-21 15:27 tpm_atmel.ko
-rwxr--r-- 1 root root 11128 01-21 15:27 tpm_bios.ko
-rwxr--r-- 1 root root 15860 01-21 15:27 tpm_infineon.ko
-rwxr--r-- 1 root root 19184 01-21 15:27 tpm.ko
-rwxr--r-- 1 root root 10796 01-21 15:27 tpm_nsc.ko
-rwxr--r-- 1 root root 16516 01-21 15:27 tpm_tis.ko
tpm_tisÄ£¿é¿ÉÒÔÍêȫʹÓÃTPM1.2¡£ÐèÒªÕâ¸öÄ£¿é£¬Ã»µÄ»°¿ÉÄÜÐèÒªÖØбàÒëеÄÄںˡ£
½ÓÏÂÀ´¿ÉÒÔÕ⼸ÌõÃüÁî¼ÓÔØTPMÇý¶¯£º
$ sudo modprobe tpm_bios
$ sudo modprobe tpm
$ sudo modprobe tpm_tis force=1 interrupts=0
$ dmesg
...
[xxx.yyy] tpm_tis tpm_tis: 1.2 TPM (device-id 0x4A10, rev-id 78)
Èç¹ûÏÔʾÓÐÀàËÆÒÔÉÏÐÅÏ¢£¬ËµÃ÷ÉèÖóɹ¦¡£
ÐèÒª°²×°TrouSerstºÍtpm-toolsÀ´¹ÜÀíTPM¡£
$ sudo /etc/init.d/tcsd start
ÓÃÉÏÃæÕâÌõÃüÁîÀ ......
Ê×ÏÈÒªµ¼ÈëÕâЩͷÎļþ
#include
#include
#include
#include
#include
#include
È»ºó¿´Ò»ÏÂʵ¼ÊµÄ²Ù×÷
1¡¢²é¿´ÎļþϵͳÐÅÏ¢
asmlinkage long get_files_info(char * filesystem_type)//È¡µÃµ±Ç°Ä¿Â¼µÄÎļþϵͳÐÅÏ¢
{
struct fs_struct *fs ;
struct vfsmount *mnt ;
struct super_block *mnt_sb ;
struct file_system_type *s_type;
read_lock(¤t->fs->lock);
fs = current->fs;
mnt = fs->pwdmnt;
mnt_sb = mnt-> mnt_sb ;
s_type = mnt_sb -> s_type;
printk("PWD Filesystem Type is : %s\n",s_type->name);
copy_to_user(filesystem_type,s_type->name,strlen(s_type->name));
printk("PWD= %ld\n",mnt_sb->s_blocksize);
read_unlock(¤t->fs->lock);
return 0;
}
2¡¢²é¿´fat_boot_sector ÐÅÏ¢
asmlinkage long get_FAT_boot(char * filesystem_type)//È¡µÃfatÎļþϵͳµÄÐÅÏ¢
{
struct fs_struct *fs ;
struct vfsmount *mnt ;
......
1. ÍøÂç×Óϵͳ
* ϵͳµ÷ÓýӿÚ
* ÐÒéÎ޹زã
* ÐÒéʵÏÖ²ã
* Çý¶¯Î޹زã
* Çý¶¯³ÌÐò²ã
×¢£ºµ÷ÓýӿÚ<->ÐÒé²ã<->Çý¶¯³ÌÐò
2. Íø¿¨Çý¶¯³ÌÐò
* λÓÚÊý¾ÝÁ´Â·²ã
3. ¹Ø¼üÊý¾Ý½á¹¹
* struct net_device
* struct sk_buffer
4. ³õʼ»¯
* Éú³Énet_device£¬²¢³õʼ»¯Æä³ÉÔ±
* ¸ù¾ÝÐèÒª£¬¶ÔÍø¿¨×ÔÉí¼Ä´æÆ÷½øÐÐÉèÖã¬Èç¶Ë¿ÚÀàÐÍÑ¡Ôñ¡¢Ë«¹¤Ñ¡ÔñµÈµÈ
5. ½ÓÊÕ
* ͨ¹ýÖжÏ
* Ö÷ÒªÁ÷³Ì
·ÖÅäskb
¶ÁÊý¾Ý
netif_rx(skb)
6. ·¢ËÍ
* hard_start_transmit ......
¸ÅÊö£º
ÏûÏ¢¶ÓÁÐÊÇlinuxϽø³Ì¼äͨÐŵÄÒ»ÖÖ·½Ê½£¬Ò»°ãÓÃÓÚ´«ËÍÉÙÁ¿Êý¾Ý£¬Èç¹û´óÁ¿Êý¾ÝÐèÒªÔÚ½ø³Ì¼ä¹²Ïí£¬Ôò¿ÉÒÔÓù²ÏíÄÚ´æ¡£
º¯Êý½Ó¿ÚʹÓãº
linuxÏÂÌṩÁËÒÔϼ¸¸ö½Ó¿Ú£¬ÓÃÓÚÏûÏ¢¶ÓÁеÄʹÓã¬Ê¹ÓÃÒ»°ã¹ý³ÌÈçÏ£º
1. µ÷ÓÃftok½Ó¿Ú²úÉúÒ»¸ökey.
ʹÓÃftokµÄºÃ´¦ÊÇ£¬·ÃÎÊͬһ¸öÏûÏ¢¶ÓÁеIJ»Í¬½ø³Ì¿ÉÒÔͨ¹ýͬһ¸öÎļþ·ÃÎÊÏàͬµÄ¶ÓÁÐ.
ÁíÍ⣬Èç¹ûÎļþ±»É¾³ý£¬¼´Ê¹ÖØвúÉúºóÄÚÈÝһģһÑù£¬ÈÔÈ»¿ÉÄܲúÉú²»Í¬µÄkey
£¬ÒòΪÎļþµÄinodeÓëkeyÖµµÄ²úÉúÓйء£
2. µ÷ÓÃmsgget(ʹÓÃkey×÷Ϊ²ÎÊý)²úÉúÒ»¸ö¶ÓÁÐ
3. ½ø³Ì¿ÉÒÔÓÃmsgsnd·¢ËÍÏûÏ¢µ½Õâ¸ö¶ÓÁУ¬ÏàÓ¦µÄ±ðµÄ½ø³ÌÓÃ
msgrcv¶ÁÈ¡¡£
ÕâÀïÐèҪעÒâmsgsnd¿ÉÄÜ»áʧ°ÜµÄÁ½¸öÇé¿ö:
a) ¿ÉÄܱ»Öжϴò¶Ï(°üÀ¨msgsndºÍmsgrcv). ÓÈÆäÊÇ´óÁ÷Á¿Ó¦ÓÃÖиüÈÝÒ׳öÏÖ.
±È½Ï°²È«µÄÓ÷¨ÊÇÅжϲÙ×÷ÊÇ·ñ±»Öжϴò¶Ï£¬Èç¹û±»´ò¶Ï£¬ÔòÐèÒª¼ÌÐø³¢ÊÔ¡£
b) ÏûÏ¢¶ÓÁÐÂú
......
Ãæ¶Ô×ÅһЩºó׺Ϊtar¡¢tar.gz¡¢tar.bz2……¾ÍÓÐЩãȻÁË£¬
ÆäʵÀí½âÁË£¬×ÔÈ»¾ÍÓÈжø½âÁË¡£
Ê×ÏÈÒªÃ÷È·Ò»¸ö¸ÅÄlinuxÏÂÃæµÄ´ò°üºÍѹËõÊÇÁ½ÂëÊ£¬
Ò²¾ÍÊÇÄã¿ÉÒÔ¶ÔÎļþ½øÐдò°ü£¬µ«ÊDz»Ñ¹Ëõ¡£
À´¿´¸öÀý×Ó£º
ÔÚÎҵĸùĿ¼ÏÂÓиöÃûΪwallpaperµÄÎļþ¼Ð£¬ÀïÃæÊÇһЩǽֽ£¬
ÎÒÏÖÔÚ¶ÔÕâ¸öÎļþ¼Ð½øÐдò°ü£¬µ«²»²»Ñ¹Ëõ¡£
Ö±½ÓÊäÈëtar cvf wallpaper.tar wallpaper»Ø³µ¾ÍÉú³ÉÁËÒ»¸öwallpaperµÄ°ü¡£
²Ù×÷¹ý³ÌÈçÏÂͼ£º
ÕâÀïµÄtarÊÇÒ»¸ö´ò°üÃüÁºóÃæµÄcvfÊDzÎÊý£¬
cµÄÒâ˼Êǽ¨Á¢Ò»¸ö´ò°üÎļþ(Èç¹û»»³Éx¾Í±íʾ½â°ü)£¬vÔÚѹËõ¹ý³ÌÖÐÏÔʾÎļþ£¬
fÊÇʹÓÃÎļþÃû£¬È»ºó¼ÓÉÏÄãÒªÉú³ÉµÄ°üÃû£¬ÔÙ¼ÓѹËõµÄĿ¼¾Í¿ÉÒÔÁË¡£
ÏÖÔÚÎÒÃÇÒѾѧ»á´ò°üÁË£¬½ô½Ó×ÅÎÒÃǶÔËü½øÐÐѹËõ£º
ÊäÈëgzip wallpaper.tar »Ø³µ£¬¾ÍÉú³ÉÁËÒ»¸öwalllpaper.tar.gzµÄѹËõ°ü¡£
ÕâÀïµÄgzipÊÇÒ»¸öѹËõÃüÁÄÇÊDz»ÊÇÒ»¶¨ÒªÑ¡ÓÃtarÀ´´ò°ü£¬È»ºóÔÙÓÃgzipÀ´Ñ¹ËõÄØ£¬
Æäʵ²»ÓÃÕâôÂé·³£¬Ö»ÒªÔÚtar ºóÃæ¼ÓÉϲÎÊýz¾Í¾ß±¸ÁËgzipµÄ¹¦ÄÜ£¬»»¾ä»°ËµÆäʵֻҪÓãº
tar zcvf wallpaper.tar.gz wallpaperÕâ¸öÃüÁî¾Í¿ÉÒÔÖ±½ÓÉú³Éwallpaper.tar.gzÎļþ¡£
¹ý³ÌÈçÏ£º
ѹËõ°üµÄ½¨Á¢¾ÍÊÇÕâÑù£¬Óò»Í¬µÄ³ÌÐòѹËõµÄÎ ......
Ŀ¼
2.1 ÆÕͨÎļþ£»
2.2 Ŀ¼£»
2.3 ×Ö·ûÉ豸»ò¿éÉ豸Îļþ£»
2.4 Ì×½Ó¿ÚÎļþ£»
2.5 ·ûºÅÁ´½ÓÎļþ£»
1¡¢LinuxÎļþµÄÀ©Õ¹Ãû£»
2¡¢Linux ÎļþÀàÐÍ£»
3¡¢¹ØÓÚ±¾ÎÄ£»
4¡¢ºó¼Ç£»
5¡¢²Î¿¼Îĵµ£»
6¡¢Ïà¹ØÎĵµ£»
++++++++++++++++++++++++++++++++++++++
ÕýÎÄ
++++++++++++++++++++++++++++++++++++++
1¡¢LinuxÎļþµÄÀ©Õ¹Ãû£»
һ̸µ½ÎļþÀàÐÍ£¬´ó¼Ò¾ÍÄÜÏëµ½WindowsµÄÎļþÀàÐÍ£¬±ÈÈçfile.txt¡¢file.doc¡¢file.sys¡¢file.mp3¡¢file.exeµÈ£¬¸ù¾ÝÎļþµÄºó׺¾ÍÄÜÅжÏÎļþµÄÀàÐÍ¡£µ«ÔÚLinuxÒ»¸öÎļþÊÇ·ñÄܱ»Ö´ÐУ¬ºÍºó׺ÃûûÓÐÌ«´óµÄ¹Øϵ£¬Ö÷Òª¿´ÎļþµÄÊôÐÔÓйء£µ«ÎÒÃÇÁ˽âÒ»ÏÂLinuxÎļþµÄºó׺Ãû»¹ÊÇÓбØÒªµÄ£¬ÌرðÊÇÎÒÃÇ×Ô¼º´´½¨Ò»Ð©Îļþ£¬×îºÃ»¹ÊǼӺó׺Ãû£¬ÕâÑù×öµÄÄ¿µÄÊǽö½öÊÇΪÁËÎÒÃǵÄÔÚÓ¦ÓÃʱ·½±ã¡£
ÏÖÔÚµÄLinux×ÀÃæ»·¾³ºÍWindowsÒ»ÑùÖÇÄÜ»¯£¬ÎļþµÄÀàÐÍÊǺÍÏàÓ¦µÄ³ÌÐò¹ØÁªµÄ¡£ÔÚÎÒÃÇ´ò¿ªÄ³¸öÎļþʱ£¬ÏµÍ³»á×Ô¶¯ÅжÏÓÃÄĸöÓ¦ÓóÌÐò´ò¿ª¡£Èç¹û´ÓÕâ·½ÃæÀ´Ëµ£¬Linux×ÀÃæ»·¾³ºÍWindows×ÀÃæûÓÐÌ«´óµÄÇø±ð¡£
ÔÚLinuxÖУ¬´øÓÐÀ©Õ¹ÃûµÄÎļþ£¬Ö»ÄÜ´ú±í³ÌÐòµÄ¹ØÁª£¬²¢²»ÄÜ˵Ã÷ÎļþÊÇ¿ÉÒÔÖ´ÐУ¬´ÓÕâ·½ÃæÀ´Ëµ£¬LinuxµÄÀ©Õ¹ÃûûÓÐÌ«´óµÄÒâÒå¡£
file.tar.gz file.t ......