LinuxÉ豸Çý¶¯³ÌÐòѧϰ£¨1£© ×Ö·ûÉ豸Çý¶¯³ÌÐò
LinuxÉ豸Çý¶¯³ÌÐòѧϰ£¨1£©
-×Ö·ûÉ豸Çý¶¯³ÌÐò
½ñÌì½øÈë
¡¶LinuxÉ豸Çý¶¯³ÌÐò£¨µÚ3°æ£©¡·µÚÈýÕÂ×Ö·ûÉ豸Çý¶¯³ÌÐòµÄѧϰ¡£
ÕâÒ»ÕÂÖ÷Ҫͨ¹ý½éÉÜ×Ö·ûÉ豸
scull£¨Simple Character Utility for Loading Localities£¬ÇøÓò×°ÔØµÄ¼òµ¥×Ö·û¹¤¾ß£©µÄ
Çý¶¯³ÌÐò±àд£¬À´Ñ§Ï°LinuxÉ豸Çý¶¯µÄ»ù
±¾ÖªÊ¶¡£scull¿ÉÒÔÎªÕæÕýµÄÉ豸Çý¶¯³ÌÐòÌṩÑù°å¡£
Ò»¡¢Ö÷É豸ºÅºÍ´ËÉ豸ºÅ
Ö÷É豸ºÅ±íʾÉ豸¶ÔÓ¦µÄÇý¶¯³ÌÐò£»´ÎÉ豸ºÅÓÉÄÚºËʹÓã¬ÓÃÓÚÕýÈ·È·¶¨
É豸ÎļþËùÖ¸µÄÉ豸¡£
ÄÚºËÓÃdev_tÀàÐÍ£¨<linux/types.h>
£©À´±£´æÉ豸±àºÅ£¬dev_tÊÇÒ»¸ö32λµÄÊý£¬12λ±íʾÖ÷É豸ºÅ£¬20Ϊ±í
ʾ´ÎÉ豸ºÅ¡£
ÔÚʵ¼ÊʹÓÃÖУ¬ÊÇͨ¹ý<linux/kdev_t.h>
ÖÐ
¶¨ÒåµÄºêÀ´×ª»»¸ñʽ¡£
(dev_t)-->Ö÷É豸ºÅ¡¢´ÎÉ豸ºÅ
MAJOR(dev_t dev)
MINOR(dev_t dev)
Ö÷É豸ºÅ¡¢´ÎÉ豸ºÅ-->(dev_t)
MKDEV(int major,int minor)
½¨Á¢Ò»¸ö×Ö·ûÉ豸֮ǰ£¬Çý¶¯³ÌÐòÊ×ÏÈÒª×öµÄÊÂÇé¾ÍÊÇ»ñµÃÉ豸±àºÅ¡£ÆäÕâÖ÷Òªº¯ÊýÔÚ<linux/fs.h>
ÖÐÉùÃ÷£º
int
register_chrdev_region(
dev_t
first,
unsigned
int
count
,
char
*
name)
;
//Ö¸¶¨É豸±àºÅ
int
alloc_chrdev_region(
dev_t *
dev,
unsigned
int
firstminor,
unsigned
int
count
,
char
*
name)
; //¶¯Ì¬Éú³ÉÉ豸±àºÅ
void
unregister_chrdev_region(
dev_t first,
unsigned
int
count
)
; //ÊÍ·ÅÉ豸±àºÅ
·ÖÅäÖ®É豸ºÅµÄ×î¼Ñ·½Ê½ÊÇ£ºÄ¬ÈϲÉÓö¯Ì¬·ÖÅ䣬ͬʱ±£ÁôÔÚ¼ÓÔØÉõÖÁÊDZàÒëʱָ¶¨Ö÷É豸ºÅµÄÓàµØ¡£
ÒÔÏÂÊÇÔÚscull.cÖÐÓÃÀ´»ñÈ¡Ö÷É豸ºÃµÄ´úÂ룺
if
(
scull_major)
{
dev =
MKDEV(
scull_major,
scull_minor)
;
result =
register_chrdev_region(
dev,
scull_nr_devs,
"scull"
)
;
}
else
{
result =
alloc_chrdev_region(
&
dev,
scull_minor,
scull_nr_devs,
"scull"
);
scull_major = MAJOR(
dev);
}
if (
result < 0) {
printk(
KERN_WARNING "scull: can't get major %d\n"
, scull_major);
return result;
}
ÔÚÕⲿ·ÖÖУ¬±È½ÏÖØÒª
Ïà¹ØÎĵµ£º
fopen("/var/spool/cron/tmp","w+");
/////////////////////////////////////////
££i nclude <sys/types.h>
££i nclude <sys/stat.h>
££i nclude <fcntl.h>
££i nclude <unistd.h>
££i nclude <stdio.h>
££i nclude <string.h>
££i nclude <stdlib.h>
int main(){
in ......
±¾ÎĽâÊÍÁ½ÖÖ×îÁ÷ÐÐµÄ Linux® »ã±àÆ÷ —— GNU Assembler£¨GAS£©ºÍ Netwide
Assembler£¨NASM£© ——
Ö®¼äһЩ±È½ÏÖØÒªµÄÓï·¨²îÒìºÍÓïÒå²îÒ죬°üÀ¨»ù±¾Óï·¨¡¢±äÁ¿ºÍÄÚ´æ·ÃÎÊ¡¢ºê´¦Àí¡¢º¯ÊýºÍÍⲿÀý³Ì¡¢¶ÑÕ»´¦ÀíÒÔ¼°Öظ´Ö´ÐдúÂë¿éµÄ¼¼Êõ·½ÃæµÄ²îÒì¡£
ÓëÆäËûÓïÑÔ²»Í¬£¬»ã±àÓïÑÔ
ÒªÇ󿪷¢ÈËÔ±ÁË ......
ת×Ô£ºhttp://www.linuxdiyf.com/bbs/viewthread.php?tid=106169
LinuxϽ¨ÒéʹÓÃvsftp£¬°²È«¼òµ¥ÊµÓÃ
vsftp¼´Very Security FTP£¬¹ËÃû˼Ò壬·Ç³£°²È«µÄFTP·þÎñÆ÷¡£
Ŀ¼
1 vsFTP·þÎñÆ÷µÄ°²×°
1.1 ÄäÃû·þÎñÆ÷µÄÁ¬½Ó£¨¶ÀÁ¢µÄ·þÎñÆ÷£©
1.2 ¿ªÆôÄäÃûFTP·þÎñÆ÷ÉÏ´«È¨ÏÞ
1.3 ¿ªÆôÄäÃû·þÎñÆ÷Ï´«µÄȨÏÞ
1.4 ......
/************************
cÓïÑÔ±àдµÄtcp socketͨÐŵÄserver¶Ë¡£
¿ÉÒÔ³ÖÐø¼àÌýmyprotÖ¸¶¨µÄ¶Ë¿Ú
´òÓ¡¶Ë¿Ú½ÓÊÕµ½µÄ×Ö·ûÁ÷
Í·ÎļþÒòΪ¼âÀ¨ºÅ±»×ªÒ壬ËùÒÔÓÃÁËÒýºÅ
************************/
#include "stdio.h"
#include "stdlib.h"
#include "errno.h"
#include "string.h& ......
linuxÏÂmd5sumµÄʹÓÃ
MD5Ëã·¨³£³£±»ÓÃÀ´ÑéÖ¤ÍøÂçÎļþ´«ÊäµÄÍêÕûÐÔ£¬·ÀÖ¹Îļþ±»È˴۸ġ£MD5
È«³ÆÊDZ¨ÎÄÕªÒªËã·¨£¨Message-Digest Algorithm
5£©£¬´ËËã·¨¶ÔÈÎÒⳤ¶ÈµÄÐÅÏ¢Öðλ½øÐмÆË㣬²úÉúÒ»¸ö¶þ½øÖƳ¤¶ÈΪ128λ£¨Ê®Áù½øÖƳ¤¶È¾ÍÊÇ32룩µÄ“Ö¸ÎÆ”£¨»ò³Æ“±¨ÎÄÕªÒª”£©£¬²»Í¬µÄÎļþ²úÉúÏà
ͬµÄ±¨Î ......