Chinaunix首页 | 论坛 | 博客
  • 博客访问: 439531
  • 博文数量: 123
  • 博客积分: 2686
  • 博客等级: 少校
  • 技术积分: 1349
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-23 22:11
文章分类
文章存档

2012年(3)

2011年(10)

2010年(100)

2009年(10)

我的朋友

分类: LINUX

2010-07-13 00:11:45

 1.kobject结构体

struct kobject {
    const char        *name;
    struct list_head    entry;
    struct kobject        *parent;
    struct kset        *kset;
    struct kobj_type    *ktype;
    struct sysfs_dirent    *sd;
    struct kref        kref;
    unsigned int state_initialized:1;
    unsigned int state_in_sysfs:1;
    unsigned int state_add_uevent_sent:1;
    unsigned int state_remove_uevent_sent:1;
    unsigned int uevent_suppress:1;
};


2. 如何添加到kset的?
先把kobject的kset成员指向目的kset,即包含这个kobject的kset;
调用kobject_add(kobj) --> kobj_kset_join(kobj), kobj_kest_join函数的作用就是把kobj自身加入到自身的kset的链表里面。

首先,kobject已经指向包含本身的kset中了;
其次,kobj_kset_join把kobject加到自己成员kset中去;
最后,kobject就添加到了包含这个kset中去了。
在这个函数中把自己&kobj添加到kest中去。

Identify performance bottlenecks with OProfile for Linux on POWER



http://www.ibm.com/developerworks/systems/library/es-oprofile/
阅读(748) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~