I have just started developing and writing linux kernel modules and device drivers. I am having a lot of trouble understanding new data types that I haven't encountered while writing application programs. For instance, I am having difficulty understanding what is the purpose of size_t, ssize_t, loff_t etc? Why use these types instead of the usual data types? When were these new types introduced? Where can I understand all of these new data types?? Thanks in advance!!
Jump to Post
These are "abstract" types that express certain types that are compatible with the architecture of the CPU you are running on. For example, size_t is the size of an unsigned integer, a 64-bit value on 64-bit systems, and a 32-bit value on 32-bit systems. An ssize_t is a signed value, …
All 2 Replies
We're a friendly, industry-focused community of 1.20 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.