Эти данные располагаются в ядре, в массиве (0x80 элементов), на который указывет nt!FsRtlLegalAnsiCharacterArray. Индекс элемента массива в нем является численным значением символа. Каждый элемент – маска флагов, сигнализирующая: для каких файловых систем разрешено использовать символ в имени файла.
Флаги:
- 0x01 - символ разрешен к использованию на файловой системе FAT
- 0x02 - символ разрешен к использованию на файловой системе HPFS
- 0x04 - символ разрешен к использованию на файловой системе NTFS
- 0x08 - разрешен к использованию в качестве WILD-символа (задание маски)
- 0x10 - символ разрешен к использованию на файловой системе NTFS в имени потока (stream)
Таблица взята из ядра Windows (актуальность проверена на линейке Windows 2000-Seven):
Символ | FAT | HPFS | NTFS | NTFS:Stream | WILD |
0x00 ^@ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x01 ^A | ![]() | ![]() | ![]() | ![]() | ![]() |
0x02 ^B | ![]() | ![]() | ![]() | ![]() | ![]() |
0x03 ^C | ![]() | ![]() | ![]() | ![]() | ![]() |
0x04 ^D | ![]() | ![]() | ![]() | ![]() | ![]() |
0x05 ^E | ![]() | ![]() | ![]() | ![]() | ![]() |
0x06 ^F | ![]() | ![]() | ![]() | ![]() | ![]() |
0x07 ^G | ![]() | ![]() | ![]() | ![]() | ![]() |
0x08 ^H | ![]() | ![]() | ![]() | ![]() | ![]() |
0x09 ^I | ![]() | ![]() | ![]() | ![]() | ![]() |
0x0A ^J | ![]() | ![]() | ![]() | ![]() | ![]() |
0x0B ^K | ![]() | ![]() | ![]() | ![]() | ![]() |
0x0C ^L | ![]() | ![]() | ![]() | ![]() | ![]() |
0x0D ^M | ![]() | ![]() | ![]() | ![]() | ![]() |
0x0E ^N | ![]() | ![]() | ![]() | ![]() | ![]() |
0x0F ^O | ![]() | ![]() | ![]() | ![]() | ![]() |
0x10 ^P | ![]() | ![]() | ![]() | ![]() | ![]() |
0x11 ^Q | ![]() | ![]() | ![]() | ![]() | ![]() |
0x12 ^R | ![]() | ![]() | ![]() | ![]() | ![]() |
0x13 ^S | ![]() | ![]() | ![]() | ![]() | ![]() |
0x14 ^T | ![]() | ![]() | ![]() | ![]() | ![]() |
0x15 ^U | ![]() | ![]() | ![]() | ![]() | ![]() |
0x16 ^V | ![]() | ![]() | ![]() | ![]() | ![]() |
0x17 ^W | ![]() | ![]() | ![]() | ![]() | ![]() |
0x18 ^X | ![]() | ![]() | ![]() | ![]() | ![]() |
0x19 ^Y | ![]() | ![]() | ![]() | ![]() | ![]() |
0x1A ^Z | ![]() | ![]() | ![]() | ![]() | ![]() |
0x1B ESC | ![]() | ![]() | ![]() | ![]() | ![]() |
0x1C FS | ![]() | ![]() | ![]() | ![]() | ![]() |
0x1D GS | ![]() | ![]() | ![]() | ![]() | ![]() |
0x1E RS | ![]() | ![]() | ![]() | ![]() | ![]() |
0x1F US | ![]() | ![]() | ![]() | ![]() | ![]() |
0x20 space | ![]() | ![]() | ![]() | ![]() | ![]() |
0x21 ! | ![]() | ![]() | ![]() | ![]() | ![]() |
0x22 " | ![]() | ![]() | ![]() | ![]() | ![]() |
0x23 # | ![]() | ![]() | ![]() | ![]() | ![]() |
0x24 $ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x25 % | ![]() | ![]() | ![]() | ![]() | ![]() |
0x26 & | ![]() | ![]() | ![]() | ![]() | ![]() |
0x27 ' | ![]() | ![]() | ![]() | ![]() | ![]() |
0x28 ( | ![]() | ![]() | ![]() | ![]() | ![]() |
0x29 ) | ![]() | ![]() | ![]() | ![]() | ![]() |
0x2A * | ![]() | ![]() | ![]() | ![]() | ![]() |
0x2B + | ![]() | ![]() | ![]() | ![]() | ![]() |
0x2C , | ![]() | ![]() | ![]() | ![]() | ![]() |
0x2D - | ![]() | ![]() | ![]() | ![]() | ![]() |
0x2E . | ![]() | ![]() | ![]() | ![]() | ![]() |
0x2F / | ![]() | ![]() | ![]() | ![]() | ![]() |
0x30 0 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x31 1 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x32 2 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x33 3 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x34 4 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x35 5 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x36 6 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x37 7 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x38 8 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x39 9 | ![]() | ![]() | ![]() | ![]() | ![]() |
0x3A : | ![]() | ![]() | ![]() | ![]() | ![]() |
0x3B ; | ![]() | ![]() | ![]() | ![]() | ![]() |
0x3C < | ![]() | ![]() | ![]() | ![]() | ![]() |
0x3D = | ![]() | ![]() | ![]() | ![]() | ![]() |
0x3E > | ![]() | ![]() | ![]() | ![]() | ![]() |
0x3F ? | ![]() | ![]() | ![]() | ![]() | ![]() |
0x40 @ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x41 A | ![]() | ![]() | ![]() | ![]() | ![]() |
0x42 B | ![]() | ![]() | ![]() | ![]() | ![]() |
0x43 C | ![]() | ![]() | ![]() | ![]() | ![]() |
0x44 D | ![]() | ![]() | ![]() | ![]() | ![]() |
0x45 E | ![]() | ![]() | ![]() | ![]() | ![]() |
0x46 F | ![]() | ![]() | ![]() | ![]() | ![]() |
0x47 G | ![]() | ![]() | ![]() | ![]() | ![]() |
0x48 H | ![]() | ![]() | ![]() | ![]() | ![]() |
0x49 I | ![]() | ![]() | ![]() | ![]() | ![]() |
0x4A J | ![]() | ![]() | ![]() | ![]() | ![]() |
0x4B K | ![]() | ![]() | ![]() | ![]() | ![]() |
0x4C L | ![]() | ![]() | ![]() | ![]() | ![]() |
0x4D M | ![]() | ![]() | ![]() | ![]() | ![]() |
0x4E N | ![]() | ![]() | ![]() | ![]() | ![]() |
0x4F O | ![]() | ![]() | ![]() | ![]() | ![]() |
0x50 P | ![]() | ![]() | ![]() | ![]() | ![]() |
0x51 Q | ![]() | ![]() | ![]() | ![]() | ![]() |
0x52 R | ![]() | ![]() | ![]() | ![]() | ![]() |
0x53 S | ![]() | ![]() | ![]() | ![]() | ![]() |
0x54 T | ![]() | ![]() | ![]() | ![]() | ![]() |
0x55 U | ![]() | ![]() | ![]() | ![]() | ![]() |
0x56 V | ![]() | ![]() | ![]() | ![]() | ![]() |
0x57 W | ![]() | ![]() | ![]() | ![]() | ![]() |
0x58 X | ![]() | ![]() | ![]() | ![]() | ![]() |
0x59 Y | ![]() | ![]() | ![]() | ![]() | ![]() |
0x5A Z | ![]() | ![]() | ![]() | ![]() | ![]() |
0x5B [ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x5C backslash | ![]() | ![]() | ![]() | ||
0x5A Z | ![]() | ![]() | ![]() | ![]() | ![]() |
0x5B [ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x5C backslash | ![]() | ||||
0x5F _ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x60 ` | ![]() | ![]() | ![]() | ![]() | ![]() |
0x61 a | ![]() | ![]() | ![]() | ![]() | ![]() |
0x62 b | ![]() | ![]() | ![]() | ![]() | ![]() |
0x63 c | ![]() | ![]() | ![]() | ![]() | ![]() |
0x64 d | ![]() | ![]() | ![]() | ![]() | ![]() |
0x65 e | ![]() | ![]() | ![]() | ![]() | ![]() |
0x66 f | ![]() | ![]() | ![]() | ![]() | ![]() |
0x67 g | ![]() | ![]() | ![]() | ![]() | ![]() |
0x68 h | ![]() | ![]() | ![]() | ![]() | ![]() |
0x69 i | ![]() | ![]() | ![]() | ![]() | ![]() |
0x6A j | ![]() | ![]() | ![]() | ![]() | ![]() |
0x6B k | ![]() | ![]() | ![]() | ![]() | ![]() |
0x6C l | ![]() | ![]() | ![]() | ![]() | ![]() |
0x6D m | ![]() | ![]() | ![]() | ![]() | ![]() |
0x6E n | ![]() | ![]() | ![]() | ![]() | ![]() |
0x6F o | ![]() | ![]() | ![]() | ![]() | ![]() |
0x70 p | ![]() | ![]() | ![]() | ![]() | ![]() |
0x71 q | ![]() | ![]() | ![]() | ![]() | ![]() |
0x72 r | ![]() | ![]() | ![]() | ![]() | ![]() |
0x73 s | ![]() | ![]() | ![]() | ![]() | ![]() |
0x74 t | ![]() | ![]() | ![]() | ![]() | ![]() |
0x75 u | ![]() | ![]() | ![]() | ![]() | ![]() |
0x76 v | ![]() | ![]() | ![]() | ![]() | ![]() |
0x77 w | ![]() | ![]() | ![]() | ![]() | ![]() |
0x78 x | ![]() | ![]() | ![]() | ![]() | ![]() |
0x79 y | ![]() | ![]() | ![]() | ![]() | ![]() |
0x7A z | ![]() | ![]() | ![]() | ![]() | ![]() |
0x7B { | ![]() | ![]() | ![]() | ![]() | ![]() |
0x7C | | ![]() | ![]() | ![]() | ![]() | ![]() |
0x7D } | ![]() | ![]() | ![]() | ![]() | ![]() |
0x7E ~ | ![]() | ![]() | ![]() | ![]() | ![]() |
0x7F | ![]() | ![]() | ![]() | ![]() | ![]() |
> 0x7F | ![]() | ![]() | ![]() | ![]() | ![]() |
ΞρεΤΙκ