Thursday, 15 March 2012

64bit time_t in Linux Kernel -


I've compiled kernel 3.19.1, but still have problem with time_t just simple program with cout & lt ; & Lt; Sizeof (time_t); Returns the size of 4 bytes, not 8 bytes, as I intend, should I switch to a particular option during Menukonfig?

Currently time_t is just tall kernel In: See definition of type. So if your CPU has long type 32-bit long, time_t is 32-bit too long Basically, if you have 32-bit CPU - long If the type is on your system then 32-bit is long if you have 64-bit CPU - long type is 64-bit long.

If you need your own 64-bit type - just use long time . If you want the kernel time API to work with the 64-bit long type time_t - this is a bit hard (to change kernel sources). For example, taking a look apart, you may be interested in reading the following link:

[2]

[3]


to longer

UPDATE

( __divdi3 etc with issues)>.

Now that you have changed the size of the time_t to 64-bit, any code using time_t is used for 64-bit operations. __detail3 means: div IIN operation d ouble i on ntegers 3 < / Strong> stands for the count of operands (e.g. 1 = 2/3 ). See for details so this operation is not clearly implemented for your platform. You should either apply it to yourself (in the kernel code) or by any means use the code from GCC Next link can help you:

[ 1]

[2]

[3]


No comments:

Post a Comment