extern unsigned long volatile __jiffy_data jiffies;
extern u64 __jiffy_data jiffies_64;
OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
OUTPUT_ARCH(i386)
ENTRY(phys_startup_32)
jiffies = jiffies_64;
OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
OUTPUT_ARCH(i386)
jiffies = jiffies_64;
#include <stdio.h>
unsigned long long jiffies_64 = 0x112345678;
unsigned long jiffies;
int main()
{
printf ("jiffies_64 = 0x%llx\n", jiffies_64);
printf ("jiffies_64 = %p\n", &jiffies_64);
printf ("jiffies = 0x%lx\n", jiffies);
printf ("jiffies = %p\n", &jiffies);
return (0);
}
[beyes@SLinux jiffies]$ gcc -Wall -std=c99 -o jiffies jiffies.c jiffies.lds
[beyes@SLinux jiffies]$ ./jiffies
jiffies_64 = 0x112345678
jiffies_64 = 0x80496f0
jiffies = 0x12345678
jiffies = 0x80496f0
/*
* Have the 32 bit jiffies value wrap 5 minutes after boot
* so jiffies wrap bugs show up earlier.
*/
#define INITIAL_JIFFIES ((unsigned long)(unsigned int) (-300*HZ))
欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) | Powered by Discuz! X3.2 |