The "namei" can be either individual names or file paths containing pathname separators.
FileNameJoin[{"", "name1", ...}] gives an absolute file path beginning with a pathname separator.
FileNameJoin[..., OperatingSystem->"os"] yields a file name in the format for the specified operating system. Possible choices are "Windows", "MacOSX" and "Unix".
FileNameJoin just assembles a file name; it does not actually search for the file specified.
FileNameJoin["name"] canonicalizes the file name "name", making pathname separators appropriate for your operating system.