linux×Ö·ûÉ豸Çý¶¯Ñ§Ï°
½ñÌìѧϰÁËÔÚlinux2.6ƽ̨Ï嵀 char drvier £¬ÔÚlinuxÏÂÍÆ¼öʹÓõÄÊÇcdev½á¹¹ÌåÀ´ÊµÏÖ¶ÔcharacterÉ豸µÄÃèÊö£¬´úÂëÈçÏÂ
/*This module is desired for sunplusapp s3c2440_board */
#include <linux/fs.h>
#include <linux/types.h>
#include <linux/cdev.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <asm/uaccess.h>
#include <linux/errno.h>
#include <mach/regs-gpio.h>
#include <mach/hardware.h>
#include <linux/platform_device.h>
#include <linux/mm.h>
#include <linux/sched.h>
#include <asm/io.h>
#include <asm/system.h>
#define DEVICE_NAME "LED_S3C2440"
struct LED_dev{
struct cdev cdev;
char name[10];
/*...*/
}*LED_devp;
static dev_t LED_device_num;
static struct class *LED_class;
//struct class *LED_class;
static unsigned long LED_table[]={
S3C2410_GPG0,
S3C2410_GPG1,
S3C2410_GPG2,
};
static unsigned int LED_cfg_table[]={
S3C2410_GPG0_OUTP,
S3C2410_GPG1_OUTP,
S3C2410_GPG2_OUTP,
};
int LED_open(struct inode *inode, struct file *filp)
{
/*½«É豸½á¹¹ÌåÖ¸Õ븳ֵ¸øÎļþ˽ÓÐÊý¾ÝÖ¸Õë*/
filp->private_data = LED_devp;
printk("Open OK\n");
return 0;
}
/*ÎļþÊͷź¯Êý*/
int LED_release(struct inode *inode, struct file *filp)
{
printk("Release OK\n");
return 0;
}
static ssize_t LED_write(struct file *filp,const char __user *buf,size_t size,loff_t *f_pos)
{
unsigned char buff = 0;
int ret;
int i;
/*Óû§¿Õ¼ä->Äں˿ռä*/
if (copy_from_user(&buff, buf, size))
ret = - EFAULT;
printk("write:buff=0x%x,buff=0x%x,count=%d\n", buff, buf, size);
buff-=0x30;
for(i=0;i<3;i++)
{
if(i==buff)
s3c2410_gpio_setpin(LED_table[i],1);
else
s3c2410_gpio_
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
һ.ΪʲôҪѧlinux?
µ±È»×îÖØÒªÊǰ®ºÃºÍÐËȤ£¡Èç¹ûÄãÕâÖÖ±ØÒªÑ§£¬»òÕ߸ù±¾²»Ï²»¶£¬Çë²»ÒªÀË·Ñʱ¼ä£¬ÄãѧҲѧ²»ºÃ£¡
¶þ.Æð²½
ÄãÓ¦¸ÃΪ×Ô¼º´´ÔìÒ»¸öѧϰlinuxµÄ»·¾³--ÔÚµçÄÔÉÏ×°Ò»¸ölinux»òunix
ÎÊÌâ1£º°æ±¾µÄÑ¡Ôñ
±±ÃÀÓÃredhat,Å·ÖÞÓÃSuSE,×ÀÃæmandrake½Ï¶à£¬¶ødebianÊǼ¼Êõ×îÏȽøµÄlinux
¿ª·¢ÈËÔ±ÖÐÓà ......
ÈçºÎÔÚlinux¿ª»úʱ×Ô¶¯Æô¶¯smb¹²Ïí·þÎñ£¿
·½·¨1£ºntsysv£¬ÓнçÃæ£¬Ñ¡ÖÐsamba·þÎñ¼´¿É
·½·¨2. chkconfig --add smb
[root@test ~]# chkconfig --add smb
[root@test ~]# chkconfig --list smb
smb ......
Ŀ¼ÊÇLinuxϵͳ×éÖ¯ÎļþµÄÒ»ÖÖÌØÊâÎļþ¡£ÎªÊ¹Óû§¸üºÃµØÊ¹ÓÃĿ¼£¬ÎÒÃǽéÉÜÓйØÄ¿Â¼µÄһЩ»ù±¾¸ÅÄî¡£
£¨1£©¹¤×÷Ŀ¼ÓëÓû§Ö÷Ŀ¼
´ÓÂß¼ÉϽ²£¬Óû§ÔڵǼµ½LinuxϵͳÖÐÖ®ºó£¬Ã¿Ê±Ã¿¿Ì¶¼´¦ÔÚij¸öĿ¼֮ÖУ¬´ËĿ¼±»³Æ×ö¹¤×÷Ŀ¼»òµ±Ç°Ä¿Â¼£¨Working Directory£©¡£¹¤×÷Ŀ¼ÊÇ¿ÉÒÔËæÊ±¸Ä±äµÄ¡£Ó ......