Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Linux϶ÁÓ²ÅÌÐòÁкŵijÌÐò


Linux϶ÁÓ²ÅÌÐòÁкŵijÌÐò
/*
* gethddsn.c
*
* Get serial number of ide hard disk.
* example: my Maxtor 15G 's s/n is K306S04C.
*
* Compile with: gcc -O2 gethddsn.c
*
* Xiaoming DONG <xmdong@263.net>
* Aug 24, 2000
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>  /* ioperm() */
#include <asm/io.h>  /* outb(), inb() */
/* get serial number */
int gethddsn(char *ide)
{
  unsigned int ide_info[257];
  unsigned int info_off;
  unsigned long loop2=0;
  int loop, loop1=0;
  if (ioperm(0x1f6, 1, 1)) {
    perror("ioperm"); exit(-1);
  }
  outb(0xa0, 0x1f6);
  if (ioperm(0x1f7, 1, 1)) {
    perror("ioperm"); exit(-1);
  }
  outb(0xec, 0x1f7);
  do {
    if (ioperm(0x1f7, 1, 1)) {
       perror("ioperm"); exit(-1);
    }
  } while (inb(0x1f7) != 0x58 && loop2++ < 0xffff);
  for (info_off=0; info_off != 256; info_off++) {
    if (ioperm(0x1f0, 2, 1)) {
     perror("ioperm"); exit(-1);
    }
    ide_info[info_off] = inw(0x1f0);
  }
  for (loop=10, loop1=0; loop<=19; loop++)
  {
    ide[loop1++] = (char)(ide_info[loop] / 256);
    ide[loop1++] = (char)(ide_info[loop] % 256);
  }
  ide[loop1] = 0;
  if (loop1 > 40) printf("*error*\n");
  return 0;
}
void main()  /* print hard disk number */
{
  static char serial[41];
  gethddsn(serial);
  printf("IDE hard disk s/n: %s\n", serial);
}
/* end of gethddsn.c */


Ïà¹ØÎĵµ£º

Ãæ¶Ô²»¶ÏÉý¼¶µÄÄںˣ¬ÈçºÎѧϰlinuxÉ豸Çý¶¯


Ãæ¶Ô²»¶ÏÉý¼¶µÄlinuxÄںˡ¢GNU¿ª·¢¹¤¾ß¡¢linux»·¾³Ïµĸ÷ÖÖͼÐο⣬ºÜ¶àlinuxÓ¦ÓóÌÐò
¿ª·¢ÈËÔ±ºÍlinuxÉ豸Çý¶¯¿ª·¢ÈËÔ±¼´ÐË·Ü£¬ÓÖ·³Ôê¡£Ð˷ܵÄÊÇеÄÈí¼þÈí¼þ¡¢¹¤¾ß¸øÎÒÌṩÁ˸üÇ¿´óµÄ¹¦ÄÜ£¬·³ÔêµÄÊÇÊÊÓ¦ÐÂÈí¼þµÄÌØÐÔ¡¢´î½¨Ð»·¾³ÊÇÒ»Ïî
·Ç³£·±ËöµÄÊÂÇé¡£±¾ÎÄÏë´ÓÒÔÏÂ3¸ö·½ÃæÌ½ÌÖÒ»ÏÂ“Ãæ¶Ô²»¶ÏÉý¼¶µÄÄںˣ¬ÈçºÎÑ ......

Ubuntu/linuxÏÂ×îÇ¿´óµÄÏÂÔØ¹¤¾ß£­aria2


aria2ÊÇÎÒ½ñÌìÐÂѧµ½µÄÒ»¸öÃüÁîÐеÄÏÂÔØ¹¤¾ß£¬ËäÈ»»¹Ã»Ñо¿Í¸£¬µ«ÊÇËû¾ø¶Ô±Èwget¸üºÃ.
aria2 ÊÇ Linux ÏÂÒ»¸ö²»´íµÄ¸ßËÙÏÂÔØ¹¤¾ß
¡£ÓÉÓÚËü¾ßÓзֶÎÏÂÔØÒýÇæ£¬ËùÒÔÖ§³Ö´Ó¶à¸öµØÖ·»òÕß´ÓÒ»¸öµØÖ·µÄ¶à¸öÁ¬½ÓÀ´ÏÂÔØÍ¬Ò»¸öÎļþ¡£ÕâÑù×ÔÈ»¾Í´ó´ó¼Ó¿ìÁËÎļþµÄÏÂÔØËÙ ¶È¡£aria2 Ò²¾ßÓжϵãÐø´«¹¦ÄÜ£¬ÕâʹÄãËæÊ±Äܹ»»Ö¸´ÒѾ­ÖÐ¶Ï ......

linuxÄÚºËregister_chrdev_region()ϵÁк¯Êý

ÄÚºËÖÐËùÓÐÒÑ·ÖÅäµÄ×Ö·ûÉ豸±àºÅ¶¼¼Ç¼ÔÚÒ»¸öÃûΪ chrdevs É¢ÁбíÀï¡£¸ÃÉ¢ÁбíÖеÄÿһ¸öÔªËØÊÇÒ»¸ö char_device_struct ½á¹¹£¬ËüµÄ¶¨ÒåÈçÏ£º
   static struct char_device_struct {
       struct char_device_struct *next;    // Ö¸ÏòÉ¢ÁгåÍ»Á´±íÖеÄÏÂÒ»¸öÔªËØ ......

ACEÔÚlinuxϵݲװ

±¾ÎÄÏêϸÃèÊöÁËÔÚLinux²Ù×÷ϵͳÉϰ²×°ºÍÅäÖÓ×ÔÊÊӦͨÐÅ»·¾³(ACE)”µÄ¹ý³ÌºÍ×¢ÒâÊÂÏî¡£zCkLinuxÁªÃË
ÎÄÖеÄÃèÊö»ùÓÚRedHat Linux 9²Ù×÷ϵͳºÍACE 5.4°æzCkLinuxÁªÃË
×¼±¸¹¤×÷£ºzCkLinuxÁªÃË
1.È·±£ÄãµÄLinux²Ù×÷ϵͳµÄ¿ª·¢»·¾³(gcc¡¢make……)ÊÇÍêÕûÇÒ¿ÉÓõġ£zCkLinuxÁªÃË
2.ÔÚ°²×°ACEµÄ¹ý³ÌÖÐ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ