Linux ·ÃÎÊfat¸ñʽÎļþϵͳ
Ê×ÏÈÒªµ¼ÈëÕâЩͷÎļþ
#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 ;
struct super_block *mnt_sb ;
struct buffer_head * bh=NULL;
struct fat_boot_sector *fat_sector;
char c[512];
int len;
read_lock(¤t->fs->lock);
fs = current->fs;
mnt = fs->pwdmnt;
mnt_sb = mnt-> mnt_sb ;
char *fsname=mnt_sb -> s_type->name;
char *sfs="vfat";
if(strcmp(fsname,sfs)==0)//´ËʱÎļþϵͳÊÇvfat
{
sb_min_blocksize(mnt_sb, 512);
bh = sb_bread(mnt_sb, 0);
if(bh!=NULL)
{
fat_sector=(struct fat_boot_sector *)bh->b_data;
len=sprintf(c,"FATÎļþϵͳ¾ßÌå²ÎÊýÈçÏÂ:\n");
len=sprintf(c,"%sbackup boot sector= %d\n",c,fat_sector->backup_boot);
len=sprintf(c,"%ssectors/cluster= %d\n",c,fat_sector->sec_per_clus);
len=sprintf(c,"%snumber of heads= %d\n",c,fat_sector->heads);
len=sprintf(c,"%shidden sectors (unused)= %d\n",c,fat_sector->hidden);
len=sprintf(c,"%smedia code= %d\n",c,fat_sector->media);
len=sprintf(c,"%sbytes per logic
Ïà¹ØÎĵµ£º
linux fodera 13 ϰ²×° rpm gcc
ÏÈÔÚÖÕ¶ËϽøÈëFedora-13-Beta-i386-DVD ¹âÅÌÖÐµÄ Package Èí¼þ°ü
È»ºó°´ÈçÏÂ˳Ðò°²×°
rpm -ivh cpp-4.4.3-8.fc13.i686.rpm
rpm -ivh kernel-headers-2.6.33.1-24.fc13.i686.rpm
rpm -ivh glibc-headers-2.11.90-16.i686.rpm
rpm -ivh glibc-devel-2.11.90-16.i686.rpm
rpm -ivh ......
LINUXÖÐʱ¼äÓÐÁ½ÖÖ£º
1£©ÈÕÀúʱ¼ä
2£©½ø³Ìʱ¼ä
ÈÕÀúʱ¼ä¹ËÃû˼Òå¼´ÓÃÀ´»ñÈ¡ÈÕÀú£»
Ö÷񻃾¼°µ½µÄº¯ÊýÓУº
time(time_t*);
stime(time_t*);
tm* gmtime(time_t*);
tm* localtime(time_t*);
char *strftime(tm*);
char *asctime(tm*);
time_t* mktime(tm*);
Êý¾Ý½á¹¹ÈçÏ£º
time_t
struct tm{
int tm_se ......
Ö±½ÓÉÏÀý×Ó°É¡£Ö»ÊDz¶»ñij¸öÉ豸µÄÖж϶øÒÑ¡£¡£¡£
¸ÃÎļþµÄÃû×ÖÊÇirq.c
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/timer.h>
#define DEBUG
#ifdef DEBUG
#define MSG(message, args...) printk( ......
³ÉΪһÃû¾«Í¨ Linux ³ÌÐòÉè¼ÆµÄ¸ß¼¶³ÌÐòÔ±Ò»Ö±ÊDz»ÉÙÅóÓÑ×Î×ÎÒÔÇóµÄÄ¿±ê¡£¸ù¾ÝÖлªÓ¢²ÅÍøÍ³¼ÆÊý¾Ý£¬±±¾©µØÇø Linux ³ÌÐòÔ±ÔÂнƽ¾ùΪ Windows ³ÌÐòÔ±µÄ 1.8 ±¶¡¢Java ³ÌÐòÔ±µÄ 2.6 ±¶£¬ Linux ³ÌÐòÔ±ÄêÖÕ½±½ðƽ¾ùΪ Windows ³ÌÐòÔ±µÄ 2.9 ±¶¡£Í¬Ê±Êý¾ÝÏÔʾ£¬Ëæ×ʤ×÷¾ÑéµÄÔö³¤£¬ Linux ³ÌÐòÔ±Ó ......
1. #vi /etc/profile£¬Ôö¼Óulimit -HSn 65536
2. #vi /etc/security/limits.conf£¬ÎªÄãµÄÓû§Ôö¼Ó
user soft nofile 38192
user hard nofile 65536
3. ÖØÆôShell¼´¿É
4. ulimit -a ²é¿´ÉèÖÃÊÇ·ñ³É¹¦¡£
5. ²é¿´ÏµÍ³×ÜÏÞÖÆµÄÃüÁ
#cat /proc/sys/fs/file-max
6 ......