- 博客(9)
- 资源 (4)
- 收藏
- 关注
原创 关于stm32的USB学习笔记之usbcore.c
#include #include "usbreg.h"#include "usbcore.h"#include "usbuser.h"#include "usbcfg.h"#include "usb.h"#include "usb_hw.h"#include "usbdesc.h"#include "hid.h"#include "hiduser.h"#define _D
2012-03-26 19:43:31 6221
原创 关于stm32的USB学习笔记之USB_HW.c
#include #include #include "usbreg.h"#include "usbuser.h"#include "usbcore.h"#include "usb_hw.h"#define _DEBUG_#include "debug.h"#define USB_EP_NUM 4/*端点缓冲区的开始地址 *因为每个缓冲块都需要一个端点描术表 *而所有的端
2012-03-14 20:01:11 7254
转载 使用STM32的USB模块中后对USB缓冲区的认识
最近在使用STM32的USB模块开发个项目,还以为挺简单,结果搞了快两天才把USB的包缓冲区的访问搞定,在此做个小总结吧。 STM32的USB模块包缓冲区有512B,但是在STM32的参考手册中的存储器映像中却表明0x40006000-0x400063ff,整整多了512B,怎么会这样呢,同时在尝试着编程时也遇到了一个问题:在usb_core.c文件的Setup0_Process(voi
2012-03-14 16:07:21 7254 1
原创 关于linux0.12临界资源的一点理解和猜测
今天看代码时突然发现,好像看到linus在写代码时的一些准则了,再根据赵博士的一句话"内核开发者不可能总是关注这些细节问题的!“,然后参照自己的理解总结出来一些准则,本人初学,如果有问题还请留言指正。 1.在关于锁的操作上,希望是原子操作,所以不管什么先关中断再说 2.在互斥资源上,如果下面可能睡眠,那么先上锁再说,这点可以从inode.c中的read_inode函
2012-03-12 20:00:33 1230
原创 关于linux0.12文件系统目录大小的一个发现
今天看到empty_dir函数发现他并不是比较i_size==32来判断是否为空,而是去读所有的块来判断是否为空,然后就觉得很奇怪,不过总觉得事出必有因,翻来覆去的找了一下,终于有了点发现,去看了一下add_entry和sys_rmdir这两个函数终于发现了一个事实!那就是目录文件的大小只会增大不会减小。下面是实验的截图:在这个实验里我们可以看到当我建立了test2 test3 test4
2012-03-11 15:38:14 870
原创 关于linux0.12中的add_entry中bread中的些猜测
今天看到文件系统namei.c中的add_entry部分了,发现一个问题 block = create_block(dir,i/DIR_ENTRIES_PER_BLOCK); if (!block) return NULL; if (!(bh = bread(dir->i_dev,block))) { i += DIR_
2012-03-08 16:03:23 1341 1
转载 uid gid euid egid详解
由于用户在UNIX下经常会遇到SUID、SGID的概念,而且SUID和SGID涉及到系统安全,所以用户也比较关心这个问题。关于SUID、SGID的问题也经常有人提问,但回答的人一般答得不够详细,加上曾经回答过两个网友的问题,还查了一些资料,决定整理成本文,以供大家参考。限于本人的水平问题,文章中如果有不当之处,请广大网友指正。一、UNIX下关于文件权限的表示方法和解析SUID 是
2012-03-07 21:33:41 20964 1
原创 linux0.12中文件系统的一些理解
在看文件系统始终觉得有点理解不了,今天偶有所悟还是赶紧记下来为好!看文件系统时要搞清以下几点:1.文件系统是用专门的工具来格式化的,也就是说内核中文件系统的代码是不含文件系统的初始化的。其实所谓的操作系统安装就是通过一个工具来制作文件系统然后将系统文件拷入最后再加个引导,但是这个过程比单纯的格式化要麻烦许多,因为安装时要制作根文件系统而不是仅仅格式化,但原理相似!2.要搞明白在设备中,各种
2012-03-04 20:55:22 1161
原创 我的初级muttrc配置
#设置邮件的编辑器set editor="vim"#设置邮件的发送程序set sendmail="/usr/sbin/exim4"set check_new = yesset timeout = 60#将各个邮箱分类存储set record="/home/findstr/.mail/sent" #发件箱set postponed="/home/finds
2012-03-01 15:29:14 3651
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人