linux内核下点亮led(未使用中断版本)
头文件:
#ifndef _LED_CONFIG_H
#define _LED_CONFIG_H
#define LED_CON 0
#define LED_ON 1
#define LED_OFF 2
#endif
内核下面的驱动模块:
#include <linux/module.h>
#include <linux/init.h>
#include <linux/io.h>
#include <linux/cdev.h>
#include <linux/fs.h>
#include <linux/slab.h>
#include "../led_config.h"
#include <linux/errno.h>
#define PHYS_BASE 0x56000040
#define SIZE 12
#define setbit(data,pos,len,val) do{\
data &=~((~(~0<<len))<<pos);\
data |=val<<pos;\
}while(0)
struct led_driver{
unsigned long gpecon;
unsigned long gpedat;
unsigned long gpeup;
unsigned long virt_base;
struct cdev led_dev;
unsigned long major;
unsigned long minor;
dev_t devno;
void (*conf)(struct led_driver *);
void (*on)(struct led_driver *);
void (*off)(struct led_driver *);
};
struct led_driver *md;
void con_led(struct led_driver *led)
{
unsigned long tmp;
相关文档:
我想在redhat下使用摄像头 但是现有版本不支持 所以我想升级内核 这样可能会支持摄像头
于是我从网上下载了 2.4.26版本的内核 通过网上介绍的那些方法 升级内核 升级后重启电脑 进入新内核时 遇到下面的问题
VFS:Cannot open root device "sda2" or 08:01
Please append a correct "root=" boot option
kernel pa ......
Linux安装JDK步骤1. 先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm)
,推荐SUN的官方网站www.sun.com,下载后放在/home目录中,当然其它地方也行。
进入安装目录
#cd /home
#cp
jdk-1_5_0_02-linux-i586.rpm /usr/local
#cd /usr/local
给所有用户添加可执行的
权限
#chmod +x jdk-1_5_0_02-linux-i586.rpm.bin
......
http://www.linuxjournal.com/
Linux Kernel Newbies
一方适合内核开发初级黑客的乐土——该网站几乎能够满足所有磨刀霍霍向内核的新手的需求。
http://kernelnewbies.org/
http://vger.kernel.org/
了解如何使用linux内核列表
http://www.tux.org/lkml/
Linux
新闻周刊,它有一个专区报道有关内核的重要 ......
问题的引出:
当对同一文件句柄(在Windows下)或是文件描述符(在Linux下)进行随机读写操作时,会存在文件指针的定位与读\写俩个步骤,但由于这不是一个原子操作,就可能产生如下问题:进程A对某文件先定位到 f1 处,然后被中断,然后进程B对同一文件定位到 f2 处,然 ......
2007 年 4 月 17 日
Linux® 系统调用 ——
我们每天都在使用它们。不过您清楚系统调用是如何在用户空间和内核之间执行的吗?本文将探究 Linux
系统调用接口(SCI),学习如何添加新的系统调用(以及实现这种功能的其他方法),并介绍与 SCI 有关的一些工具。
系统调用
就是用户空间 ......