Android(Linux)内核'HZ'变量

时间:2013-05-09 05:42:22

标签: linux-kernel android-wifi

我目前正在研究WiFI的内核源代码(net / mac80211) (三星的Galaxy S3 --- GT-I9300 ---内核)

我已经看到了如下代码:

/*
 * Scanning implementation
 *
 * Copyright 2003, Jouni Malinen <jkmaline@cc.hut.fi>
 * Copyright 2004, Instant802 Networks, Inc.
 * Copyright 2005, Devicescape Software, Inc.
 * Copyright 2006-2007  Jiri Benc <jbenc@suse.cz>
 * Copyright 2007, Michael Wu <flamingice@sourmilk.net>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

#include <linux/if_arp.h>
#include <linux/rtnetlink.h>
#include <linux/pm_qos_params.h>
#include <net/sch_generic.h>
#include <linux/slab.h>
#include <net/mac80211.h>

#include "ieee80211_i.h"
#include "driver-ops.h"
#include "mesh.h"

#define IEEE80211_PROBE_DELAY (HZ / 33)
#define IEEE80211_CHANNEL_TIME (HZ / 33)
#define IEEE80211_PASSIVE_CHANNEL_TIME (HZ / 8)

在代码的底部,它定义了关于变量'HZ'的PROBE_DELAY,CHANNEL_TIME,PASSIVE_CHANNEL_TIME

因此,我输入grep -r "HZ" ./ >> ~/grep_result来查找定义HZ的位置。

但是,结果是,没有HZ的定义,宣言。

我在哪里可以找到HZ的确切值?

如果我找到HZ值,单位度量是多少?

1 个答案:

答案 0 :(得分:3)

HZ通常定义为CONFIG_HZ。 CONFIG_HZ是在make config进程

期间定义的

通用定义在

  
    

包括/ ASM-通用/ param.h;

  

特定于体系结构的定义在

  
    

arch // include / asm / param.h

  

往往只是将其定义为CONFIG_HZ;请注意,您可能会在

中找到一些硬编码的HZ定义
  
    

arch // include / asm / uapi / param.h

  

内核不使用HZ的这些定义,它们是用户空间API接口值;

希望这有帮助。