а давно мы на «ты»
long double занимает 16 байт
-mlong-double-128
чтобы использовать все 128 битов, но у этого подхода есть забавные побочные эффекты. Результат long double: 1.414213562373095048872, а не 1.414213562373095048899
num_get::get
которая пытается проинтерпретировать данные из потока как число и останавливается как только у неё перестаёт получаться. Т.е. в твоём случае -- сразу. Если мы запускаем fallocate без изменения размера файла, то что выходит? Файл не уменьшается, просто обнуляем данные в его начале.
Мы же не можем дописывать данные в конец и удалять в начале одной командой.?
Fallocate с дыркой вообще делает непонятную для меня вещь.
$ dd of=sparse bs=1G count=0 seek=1024
0+0 records in
0+0 records out
0 bytes copied, 6.9401e-05 s, 0.0 kB/s
$ stat sparse
File: sparse
Size: 1099511627776 Blocks: 0 IO Block: 4096 regular file
Device: fe03h/65027d Inode: 22684238 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/jcmvbkbc) Gid: ( 1000/jcmvbkbc)
Access: 2019-08-18 15:42:04.772367087 -0700
Modify: 2019-08-18 15:42:04.776367113 -0700
Change: 2019-08-18 15:42:04.776367113 -0700
Birth: -
$ echo test >> sparse
$ tail -c 100 sparse | hexdump -Cv
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 74 |...............t|
00000060 65 73 74 0a |est.|
00000064
$ stat sparse
File: sparse
Size: 1099511627781 Blocks: 8 IO Block: 4096 regular file
Device: fe03h/65027d Inode: 22684238 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/jcmvbkbc) Gid: ( 1000/jcmvbkbc)
Access: 2019-08-18 15:43:25.668878335 -0700
Modify: 2019-08-18 15:43:14.808809836 -0700
Change: 2019-08-18 15:43:14.808809836 -0700
Birth: -
хочу услышать совет по отладке
malloc: Incorrect checksum for freed object
Nikname_non_name, в линуксе символьные ссылки в основном прозрачны для программ, но есть нюансы, например, с получением полного пути к файлу через имя включающее в себя ссылку.