ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
The C language convention counts array indices from 0.
So what?
Why does GRUB count from 0?
Why does hard disk device numbering start with "a" and "1"?
Seriously---there are many kinds of computer utilities and conventions--there is no standard that says that numbering should start with 0 or 1. Unfortunately, you simply have to remember what convetion is followed for each situation.
Why does hard disk device numbering start with "a" and "1"?
Seriously---there are many kinds of computer utilities and conventions
Correct. But it's interesting to note that if you use inode=0 to mean that we're not referencing an inode (yet), that makes it easy to initialize a directory block: just smear it with 0x00 bytes.
Throughout the "C" world, an all-zero value is used to indicate "nothing." For instance, a value of zero in some inode-number slot would indicate that there is no inode associated with that slot.
Many Linux and Unix systems actually use inode numbers now that are random.
Why? (We're not writing peer-reviewed papers here......)
Not to prove the point, but to provide more information. I'd like to read about this random inode number assignment idea in more detail. Why would they do this? (for example)
Not to prove the point, but to provide more information. I'd like to read about this random inode number assignment idea in more detail. Why would they do this? (for example)
Security? One might derive some useful information from a file system based on the ordering of the inodes. I totally made that up, but it seems like something the government would do.
Kevin Barry
Many Linux and Unix systems actually use inode numbers now that are random.
That might be true of a particular filesystem. But on Linux filesystems at least, many of the inode numbering schemes are simply an incrementing counter (exceptions including things like the implementation of FAT). The inode number does get hashed for lookup purposes.
Last edited by neonsignal; 01-07-2010 at 06:34 AM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.