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

linux mmapÇý¶¯ÊµÏÖ

ÔÚʵÏÖÇý¶¯³ÌÐòµÄmmapº¯Êýʱ£¬Òª×¢ÒâÓ³ÉäµØÖ·µÄת»»ÎÊÌ⣬¼û´úÂë¡£
¶¨ÒåÒ»¸öÉ豸½á¹¹Ì壺
struct leedriver
{
struct cdev cdev;
unsigned char mem[MEMSIZE];
};
ÕâÀïÃæÕâ¸öMEMSIZE£¬×îС¶¼ÒªÊÇ4096£¬ÒòΪÄÚ´æÓ³ÉäÊÇÒÔҳΪµ¥Î»µÄ¡£
ÔÚʵÏÖsimple_remap_mmapº¯Êýʱ£¬´úÂëÈçÏÂ
static int simple_remap_mmap(struct file *filp, struct vm_area_struct *vma)
{
vma->vm_pgoff = ((u32)virt_to_phys(leedriverp->mem)) >> PAGE_SHIFT;
printk("vma->vm_pgoff = %lx\n",vma->vm_pgoff);
if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff,
vma->vm_end - vma->vm_start,
vma->vm_page_prot))
return -EAGAIN;
vma->vm_ops = &simple_remap_vm_ops;
simple_vma_open(vma);
return 0;
}

×¢Ò⺯Êý¿ªÍ·µÄvma->vm_pgoff = ((u32)virt_to_phys(leedriverp->mem)) >> PAGE_SHIFT;
leedriverp->memÊǸöÄÚºËÐéÄâµØÖ·£¬Ó¦¸Ãͨ¹ývirt_to_physת»»³ÉÎïÀíµØÖ·£¬ÔÙ½øÐÐ×óÒƲÙ×÷£¬¾ÍOKÁË¡£
Ö®ºó¶¨ÒåÒ»ÏÂvm_ops
static struct vm_operations_struct simple_remap_vm_ops = {
.open = simple_vma_open,
.close = simple_vma_close,
};

²¢ÇÒÔÚfile_operationsÖÐÌí¼Ó.mmap£½simple_remap_mmap£¬Õû¸ö¹ý³Ì¾ÍÍê³ÉÁË


Ïà¹ØÎĵµ£º

Linux¹²Ïí¿â

¹²Ïí¿âµÄÃüÃû¹ßÀý
°´ÕÕ¹²Ïí¿âµÄÃüÃû¹ßÀý£¬Ã¿¸ö¹²Ïí¿âÓÐÈý¸öÎļþÃû£ºreal name¡¢sonameºÍlinker
name¡£ÕæÕýµÄ¿âÎļþ£¨¶ø²»ÊÇ·ûºÅÁ´½Ó£©µÄÃû×ÖÊÇreal
name£¬°üº¬ÍêÕûµÄ¹²Ïí¿â°æ±¾ºÅ¡£ÀýÈçÉÏÃæµÄlibcap.so.1.10¡¢libc-2.8.90.soµÈ¡£
sonameÊÇÒ»¸ö·ûºÅÁ´½ÓµÄÃû×Ö£¬Ö»°üº¬¹²Ïí¿âµÄÖ÷°æ±¾ºÅ£¬Ö÷°æ±¾ºÅÒ»Ö¼´¿É±£Ö¤¿âº¯ÊýµÄ½Ó¿ ......

(ת)LinuxϵÄCppUnit µÄHelloWorldÊÖ¼Ç

ת×Ô£ºhttp://blog.csdn.net/panyuequn/archive/2009/12/07/4958454.aspx
°æȨÉùÃ÷£º±¾ÎÄ°æȨËùÊô Tx7do@ÉϺ£°ë¶¡£¬¿ÉÒÔËæÒ⸴ÖÆ´«²¥£¬µ«ÊDZí°Ñ°æȨ¸øÈÓÀ²=¡£=
²Ù×÷ϵͳϵͳ£ºUbuntu6£¬g++
Èí¼þ°æ±¾£ºcppunit-1.10.2.tar.gz
£¨1£©»ñµÃÔ´Â룺
    µ½cppunit.sourceforge.netÉÏÏÂÔØÔ´´úÂë¡£½«Æ临ÖƵ½µ½l ......

Linux¹Ø»úÃüÁî

1 shutdown:
[NAME
]  shutdown - bring the system down
SYNOPSIS
       /sbin/shutdown [-t sec] [-arkhncfF] time [warning-message]
DESCRIPTION
       shutdown  brings  the  system  down  in a secure way.&nb ......

Linux¿Í»§¶ËʹÓÃSSHµÄÃüÁî¹ÜÀílinux·þÎñÆ÷






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
TD P { margin-bottom: 0cm }
A:link { so-language: zxx }
-->
µÇ½£ºssh [hostname] 
ÊäÈëÃÜÂ룺*****
µÇ
½ÒÔºó¾Í¿ÉÒÔÏñ¿ØÖÆ×Ô¼ºµÄ»úÆ÷Ò»Ñù¿ØÖÆËüÁË£¬²»¹ýûÓпÉÊÓ»¯µÄ½çÃæ¡£²»¹ýÏÖÔÚ
ÎÒËùʹÓùýµÄÁ½¸ö°æ±¾Linux( ......

Gambas£ºLinux Ï嵀 Basic

¼ò½é
Basic ÊÇʹÓõÄ×î¹ã·ºµÄ¡¢×î¼òµ¥µÄ±à³ÌÓïÑÔÖ®Ò»£¬ÓÈÆäÊǶÔÓÚÐÂÊÖ¡£ Æù½ñΪֹ£¬×î³£ÓÃµÄ Basic ¿ª·¢»·¾³ÊÇ Microsoft µÄ Visual Basic ¼¯³É¿ª·¢»·¾³¡£ ½üÀ´£¬Linux µÄʹÓ÷¶Î§ÒѾ­ÑÓÉìµ½ÁË×ÀÃæ»·¾³¡£´Ó×î³õµÄ½öÏÞÓÚ·þÎñÆ÷Ó¦Óã¬Ê¹µÃÈ˶¼ÊÇÁìµ¼Õߣ¬ËüÕýÔÚ±ä³ÉÒ»¸ö¿Í»§¶Ë¼ÆËã»úµÄ²Ù×÷ϵͳ£¬Âú×ãÁËÀàËÆÔĶÁµç×ÓÓʼþ¡¢ÉÏÍø ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ