āĻ•ā§‡āĻ¨ āĻ†āĻŽāĻžāĻ° NVMe āĻāĻ•āĻŸāĻŋ SSD āĻĨā§‡āĻ•ā§‡ āĻ§ā§€āĻ°?

āĻ•ā§‡āĻ¨ āĻ†āĻŽāĻžāĻ° NVMe āĻāĻ•āĻŸāĻŋ SSD āĻĨā§‡āĻ•ā§‡ āĻ§ā§€āĻ°?
āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡, āĻ†āĻŽāĻ°āĻž I/O āĻ¸āĻžāĻŦāĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ•āĻŋāĻ›ā§ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻž āĻāĻŦāĻ‚ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ¤āĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ­āĻžāĻŦ āĻĻā§‡āĻ–āĻŦāĨ¤

āĻ•āĻ¯āĻŧā§‡āĻ• āĻ¸āĻĒā§āĻ¤āĻžāĻš āĻ†āĻ—ā§‡ āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒāĻĄāĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ āĻ•ā§‡āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ NVMe āĻ…āĻ¨ā§āĻ¯ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ SATA āĻĨā§‡āĻ•ā§‡ āĻ§ā§€āĻ°āĨ¤ āĻ†āĻŽāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯āĻ—ā§āĻ˛āĻŋ āĻĻā§‡āĻ–ā§‡āĻ›āĻŋ āĻāĻŦāĻ‚ āĻŦā§āĻāĻ¤ā§‡ āĻĒā§‡āĻ°ā§‡āĻ›āĻŋ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ•ā§ŒāĻļāĻ˛ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ›āĻŋāĻ˛: NVMe āĻ›āĻŋāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ…āĻ‚āĻļ āĻĨā§‡āĻ•ā§‡, āĻāĻŦāĻ‚ SSD āĻ›āĻŋāĻ˛ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻŦāĻŋāĻ­āĻžāĻ— āĻĨā§‡āĻ•ā§‡ā§ˇ

āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ¤āĻ‡, āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒāĻ°āĻŋāĻŦā§‡āĻļā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻŦāĻŋāĻ­āĻžāĻ—ā§‡āĻ° āĻĒāĻŖā§āĻ¯āĻ—ā§āĻ˛āĻŋāĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻ•āĻ°āĻž āĻ¸āĻ āĻŋāĻ• āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ‰āĻ¤ā§āĻ¤āĻ° āĻ¨āĻ¯āĻŧāĨ¤ āĻ†āĻŽāĻ°āĻž āĻŽā§‚āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻ—ā§āĻ˛āĻŋ āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻŦ, āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž-āĻ¨āĻŋāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŦ āĻāĻŦāĻ‚ āĻ‰āĻ¤ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻ‰āĻ¤ā§āĻ¤āĻ° āĻĻā§‡āĻŦāĨ¤

fsync āĻ•āĻŋ āĻāĻŦāĻ‚ āĻ•ā§‹āĻĨāĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ

āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœā§‡āĻ° āĻ—āĻ¤āĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯, āĻĄā§‡āĻŸāĻž āĻŦāĻžāĻĢāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻŦāĻžāĻĢāĻžāĻ°ā§‡āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻœāĻ¨āĻ• āĻ¸ā§āĻ¯ā§‹āĻ— āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ“āĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ‰āĻĻā§āĻŦāĻžāĻ¯āĻŧā§€ āĻŽā§‡āĻŽāĻ°āĻŋāĻ¤ā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸ā§āĻ¯ā§‹āĻ—ā§‡āĻ° āĻŽāĻžāĻ¨āĻĻāĻŖā§āĻĄ āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻŦāĻ‚ āĻĄā§āĻ°āĻžāĻ‡āĻ­ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻŦāĻžāĻĢāĻžāĻ°ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§‡āĻŸāĻž āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻŦā§‡āĨ¤

āĻāĻŽāĻ¨ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ•āĻžāĻœ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯ā§‡ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§€ āĻŦāĻžāĻĢāĻžāĻ°ā§‡ āĻĨāĻžāĻ•āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ POSIX-compliant fsync āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻ‡ āĻ¨āĻŋāĻļā§āĻšāĻ¯āĻŧāĻ¤āĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ fsync āĻ•āĻ˛ āĻŦāĻžāĻĢāĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻŦāĻžāĻ§ā§āĻ¯ āĻ•āĻ°ā§‡āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ¸āĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ†āĻ•āĻžāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§ƒāĻ¤ā§āĻ°āĻŋāĻŽ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻ¸āĻš āĻŦāĻžāĻĢāĻžāĻ°ā§‡āĻ° āĻĒā§āĻ°āĻ­āĻžāĻŦ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤

#include <fcntl.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>

int main(void) {
    /* ОŅ‚ĐēŅ€Ņ‹Đ˛Đ°ĐĩĐŧ Ņ„Đ°ĐšĐģ answer.txt ĐŊĐ° СаĐŋиŅŅŒ, ĐĩŅĐģи ĐĩĐŗĐž ĐŊĐĩŅ‚ -- ŅĐžĐˇĐ´Đ°Ņ‘Đŧ */
    int fd = open("answer.txt", O_WRONLY | O_CREAT);
    /* ЗаĐŋиŅŅ‹Đ˛Đ°ĐĩĐŧ ĐŋĐĩŅ€Đ˛Ņ‹Đš ĐŊайОŅ€ Đ´Đ°ĐŊĐŊŅ‹Ņ… */
    write(fd, "Answer to the Ultimate Question of Life, The Universe, and Everything: ", 71);
    /* ДĐĩĐģĐ°ĐĩĐŧ вид, Ņ‡Ņ‚Đž ĐŋŅ€ĐžĐ˛ĐžĐ´Đ¸Đŧ вŅ‹Ņ‡Đ¸ŅĐģĐĩĐŊиŅ в Ņ‚ĐĩŅ‡ĐĩĐŊиĐĩ 10 ŅĐĩĐēŅƒĐŊĐ´ */
    sleep(10);
    /* ЗаĐŋиŅŅ‹Đ˛Đ°ĐĩĐŧ Ņ€ĐĩСŅƒĐģŅŒŅ‚Đ°Ņ‚ вŅ‹Ņ‡Đ¸ŅĐģĐĩĐŊиК */
    write(fd, "42n", 3); 

    return 0;
}

āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽā§‡āĻ° āĻ•āĻ°ā§āĻŽā§‡āĻ° āĻ•ā§āĻ°āĻŽāĻŸāĻŋ āĻ­āĻžāĻ˛āĻ­āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§‡āĨ¤ āĻŸā§‡āĻ•ā§āĻ¸āĻŸ "āĻœā§€āĻŦāĻ¨ā§‡āĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻ‰āĻ¤ā§āĻ¤āĻ°, āĻŽāĻšāĻžāĻŦāĻŋāĻļā§āĻŦ āĻāĻŦāĻ‚ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§" āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻžāĻĢāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻŦā§‡, āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ "āĻ—āĻŖāĻ¨āĻž" āĻšāĻ˛āĻžāĻ•āĻžāĻ˛ā§€āĻ¨ āĻ°āĻŋāĻ¸ā§‡āĻŸ āĻŦā§‹āĻ¤āĻžāĻŽ āĻŸāĻŋāĻĒā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§‡āĻ¨ āĻ¤āĻŦā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ–āĻžāĻ˛āĻŋ āĻĨāĻžāĻ•āĻŦā§‡āĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡, āĻĒāĻžāĻ ā§āĻ¯ āĻ•ā§āĻˇāĻ¤āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¨āĻ¯āĻŧ, āĻ¤āĻžāĻ‡ fsync āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻāĻ‡ āĻ†āĻļāĻžāĻŦāĻžāĻĻ āĻ­āĻžāĻ— āĻ•āĻ°ā§‡ āĻ¨āĻž.

āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸āĻ—ā§āĻ˛āĻŋ āĻšāĻ˛ āĻœāĻŸāĻŋāĻ˛ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¯āĻž āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻ…āĻ¨ā§‡āĻ• āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻ¤āĻžāĻ°āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻšāĻ¤ā§‡ āĻšāĻžāĻ¯āĻŧ āĻ¯ā§‡ āĻ¤āĻžāĻ°āĻž āĻ¯ā§‡ āĻĄā§‡āĻŸāĻž āĻ˛āĻŋāĻ–āĻŦā§‡ āĻ¤āĻž āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻŦā§‡, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĄā§‡āĻŸāĻžāĻ° āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻ¤āĻž āĻāĻŸāĻŋāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡āĨ¤ āĻĄā§‡āĻŸāĻžāĻŦā§‡āĻ¸āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ˛ā§‡āĻ¨āĻĻā§‡āĻ¨ āĻ°ā§‡āĻ•āĻ°ā§āĻĄ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻ¯ā§‡ āĻ•ā§‹āĻ¨āĻ“ āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻŋāĻĻā§āĻ¯ā§ā§Ž āĻŦāĻŋāĻ­ā§āĻ°āĻžāĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĨ¤ āĻāĻ‡ āĻ†āĻšāĻ°āĻŖ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ•ā§āĻ°āĻŽāĻžāĻ—āĻ¤ āĻĒā§āĻ°āĻšā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ fsync āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻŦāĻžāĻ§ā§āĻ¯ āĻ•āĻ°ā§‡āĨ¤

fsync āĻāĻ° āĻ˜āĻ¨ āĻ˜āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•ā§‡ āĻ•ā§€ āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°ā§‡

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ I/O-āĻāĻ° āĻ¸āĻžāĻĨā§‡, āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĄāĻŋāĻ¸ā§āĻ• āĻ¯ā§‹āĻ—āĻžāĻ¯ā§‹āĻ—āĻ•ā§‡ āĻ…āĻĒā§āĻŸāĻŋāĻŽāĻžāĻ‡āĻœ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻŽā§‡āĻŽāĻ°āĻŋ āĻļā§āĻ°ā§‡āĻŖāĻŋāĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§‡ āĻŦāĻšāĻŋāĻ°āĻžāĻ—āĻ¤ āĻĄā§āĻ°āĻžāĻ‡āĻ­āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ§ā§€āĻ°āĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ā§‡ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻĄā§‡āĻŸāĻž āĻ˛ā§‡āĻ–āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ fsync āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ­āĻžāĻŦ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻāĻ¸āĻāĻ¸āĻĄāĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

  • IntelÂŽ DC SSD S4500 480 GB, SATA 3.2, 6 Gb/s āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤;
  • Samsung 970 EVO Plus 500GB, PCIe 3.0 x4, ~31 Gbps āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤āĨ¤

Ubuntu 2255 āĻšāĻžāĻ˛āĻŋāĻ¤ IntelÂŽ XeonÂŽ W-20.04-āĻ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĄāĻŋāĻ¸ā§āĻ• āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡, sysbench 1.0.18 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĄāĻŋāĻ¸ā§āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ ext4 āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻŸ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻĒāĻžāĻ°ā§āĻŸāĻŋāĻļāĻ¨ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋ āĻšāĻ˛ 100 āĻœāĻŋāĻŦāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž:

sysbench --test=fileio --file-total-size=100G prepare

āĻšāĻ˛āĻŽāĻžāĻ¨ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž:

# БĐĩС fsync
sysbench --num-threads=16 --test=fileio --file-test-mode=rndrw --file-fsync-freq=0 run

# ĐĄ fsync ĐŋĐžŅĐģĐĩ ĐēĐ°ĐļдОК СаĐŋиŅĐ¸
sysbench --num-threads=16 --test=fileio --file-test-mode=rndrw --file-fsync-freq=1 run

āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤

āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž
IntelÂŽ S4500
Samsung 970 EVO+

Fsync, MiB/s āĻ›āĻžāĻĄāĻŧāĻž āĻĒāĻĄāĻŧā§āĻ¨
5734.89
9028.86

Fsync, MiB/s āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ˛āĻŋāĻ–ā§āĻ¨
3823.26
6019.24

Fsync, MiB/s āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĒāĻĄāĻŧāĻž
37.76
3.27

Fsync, MiB/s āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ°ā§‡āĻ•āĻ°ā§āĻĄāĻŋāĻ‚
25.17
2.18

āĻāĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ¸āĻšāĻœ āĻ¯ā§‡ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ¸ā§‡āĻ—āĻŽā§‡āĻ¨ā§āĻŸ āĻĨā§‡āĻ•ā§‡ NVMe āĻ†āĻ¤ā§āĻŽāĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¨ā§‡āĻ¤ā§ƒāĻ¤ā§āĻŦ āĻĻā§‡āĻ¯āĻŧ āĻ¯āĻ–āĻ¨ āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§‡āĻ¯āĻŧ, āĻāĻŦāĻ‚ āĻ¯āĻ–āĻ¨ fsync āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻ–āĻ¨ āĻšāĻžāĻ°āĻžāĻ¯āĻŧāĨ¤ āĻāĻŸāĻŋ āĻĻā§āĻŸāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ‰āĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡:

  1. fsync āĻ›āĻžāĻĄāĻŧāĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ¯āĻŧ āĻ•ā§‡āĻ¨ āĻĒāĻĄāĻŧāĻžāĻ° āĻ—āĻ¤āĻŋ āĻ˛āĻŋāĻ™ā§āĻ•ā§‡āĻ° āĻĢāĻŋāĻœāĻŋāĻ•ā§āĻ¯āĻžāĻ˛ āĻŦā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ‰āĻ‡āĻĨāĻ•ā§‡ āĻ›āĻžāĻĄāĻŧāĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ?
  2. āĻ•ā§‡āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ¸ā§‡āĻ—āĻŽā§‡āĻ¨ā§āĻŸ SSD āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• fsync āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻ­āĻžāĻ˛?

āĻĒā§āĻ°āĻĨāĻŽ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻ‰āĻ¤ā§āĻ¤āĻ° āĻ¸āĻšāĻœ: sysbench āĻļā§‚āĻ¨ā§āĻ¯-āĻ­āĻ°āĻž āĻĢāĻžāĻ‡āĻ˛ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĨ¤ āĻāĻ‡āĻ­āĻžāĻŦā§‡, āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻŸāĻŋ 100 āĻ—āĻŋāĻ—āĻžāĻŦāĻžāĻ‡āĻŸā§‡āĻ° āĻļā§‚āĻ¨ā§āĻ¯ā§‡āĻ° āĻ‰āĻĒāĻ°ā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻĄā§‡āĻŸāĻž āĻ–ā§āĻŦ āĻ…āĻ­āĻŋāĻ¨ā§āĻ¨ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯, āĻ¤āĻžāĻ‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ OS āĻ…āĻĒā§āĻŸāĻŋāĻŽāĻžāĻ‡āĻœā§‡āĻļāĻžāĻ¨ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻž āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°ā§€āĻ•āĻ°āĻŖāĻ•ā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯āĻ­āĻžāĻŦā§‡ āĻ¤ā§āĻŦāĻ°āĻžāĻ¨ā§āĻŦāĻŋāĻ¤ āĻ•āĻ°ā§‡āĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻŋāĻ¸āĻŦā§‡āĻžā§āĻšā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ•āĻ°ā§‡āĻ¨ āĻ¤āĻŦā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻĢāĻŋāĻ“ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤

# БĐĩС fsync
fio --name=test1 --blocksize=16k --rw=randrw --iodepth=16 --runtime=60 --rwmixread=60 --fsync=0 --filename=/dev/sdb

# ĐĄ fsync ĐŋĐžŅĐģĐĩ ĐēĐ°ĐļдОК СаĐŋиŅĐ¸
fio --name=test1 --blocksize=16k --rw=randrw --iodepth=16 --runtime=60 --rwmixread=60 --fsync=1 --filename=/dev/sdb

āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž
IntelÂŽ S4500
Samsung 970 EVO+

Fsync, MiB/s āĻ›āĻžāĻĄāĻŧāĻž āĻĒāĻĄāĻŧā§āĻ¨
45.5
178

Fsync, MiB/s āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ˛āĻŋāĻ–ā§āĻ¨
30.4
119

Fsync, MiB/s āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĒāĻĄāĻŧāĻž
32.6
20.9

Fsync, MiB/s āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ°ā§‡āĻ•āĻ°ā§āĻĄāĻŋāĻ‚
21.7
13.9

Fsync āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ NVMe-āĻ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻšā§āĻ°āĻžāĻ¸ā§‡āĻ° āĻĒā§āĻ°āĻŦāĻŖāĻ¤āĻž āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻĻā§ƒāĻļā§āĻ¯āĻŽāĻžāĻ¨āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤

āĻ…āĻĒā§āĻŸāĻŋāĻŽāĻžāĻ‡āĻœā§‡āĻļāĻžāĻ¨ āĻŦāĻž āĻŦā§āĻ˛āĻžāĻĢ

āĻāĻ° āĻ†āĻ—ā§‡ āĻ†āĻŽāĻ°āĻž āĻŦāĻ˛ā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ āĻ¯ā§‡ āĻĄā§‡āĻŸāĻž āĻāĻ•āĻŸāĻŋ āĻŦāĻžāĻĢāĻžāĻ°ā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ•ā§‹āĻ¨āĻŸāĻŋāĻ¤ā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°ā§‡āĻ¨āĻŋ, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻāĻŸāĻŋ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ›āĻŋāĻ˛ āĻ¨āĻžāĨ¤ āĻāĻŽāĻ¨āĻ•āĻŋ āĻāĻ–āĻ¨āĻ“ āĻ†āĻŽāĻ°āĻž āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻœāĻŸāĻŋāĻ˛āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻŦ āĻ¨āĻž āĻāĻŦāĻ‚ āĻĻā§āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ§āĻ°āĻŖā§‡āĻ° āĻŦāĻžāĻĢāĻžāĻ°āĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻ•āĻ°āĻŦ:

  • āĻ•āĻžāĻ°ā§āĻ¯āĻ•ā§āĻ°āĻŽ;
  • āĻšāĻžāĻ°ā§āĻĄāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°

āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻŦāĻžāĻĢāĻžāĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻĨāĻžāĻ•āĻž āĻŦāĻžāĻĢāĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻŦā§‹āĻāĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻšāĻžāĻ°ā§āĻĄāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻŦāĻžāĻĢāĻžāĻ° āĻĄāĻŋāĻ¸ā§āĻ• āĻ•āĻ¨ā§āĻŸā§āĻ°ā§‹āĻ˛āĻžāĻ°ā§‡āĻ° āĻ‰āĻĻā§āĻŦāĻžāĻ¯āĻŧā§€ āĻŽā§‡āĻŽāĻ°āĻŋāĻ•ā§‡ āĻŦā§‹āĻāĻžāĻ¯āĻŧāĨ¤ fsync āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ¤āĻžāĻ° āĻŦāĻžāĻĢāĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ¸ā§āĻŸā§‹āĻ°ā§‡āĻœā§‡ āĻĄā§‡āĻŸāĻž āĻ˛ā§‡āĻ–āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻĒāĻžāĻ āĻžāĻ¯āĻŧ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āĻ° āĻ¸āĻ āĻŋāĻ• āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻ•ā§‹āĻ¨ā§‹ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻ¨ā§‡āĻ‡āĨ¤

āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻāĻ¸āĻāĻ¸āĻĄāĻŋ āĻ†āĻ°āĻ“ āĻ­āĻžāĻ˛ āĻĒāĻžāĻ°āĻĢāĻ°ā§āĻŽ āĻ•āĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻĻā§āĻŸāĻŋ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡:

  • āĻĄāĻŋāĻ¸ā§āĻ• āĻāĻ•āĻŸāĻŋ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻĒāĻ°āĻŋāĻ•āĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ•āĻŸāĻŋ āĻ˛ā§‹āĻĄ āĻœāĻ¨ā§āĻ¯ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • āĻĄāĻŋāĻ¸ā§āĻ• "āĻŦā§āĻ˛āĻžāĻĢ" āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ‰āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡āĨ¤

āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡āĻ° āĻ…āĻ¸āĻžāĻ§ā§ āĻ†āĻšāĻ°āĻŖ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡āĻ¨āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻāĻŸāĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤ diskchecker.pl, āĻāĻŸāĻž āĻ›āĻŋāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ 2005 āĻŦāĻ›āĻ°ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡āĨ¤

āĻāĻ‡ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻā§āĻŸāĻŋ āĻļāĻžāĻ°ā§€āĻ°āĻŋāĻ• āĻŽā§‡āĻļāĻŋāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ - "āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°" āĻāĻŦāĻ‚ "āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ"āĨ¤ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻ…āĻ˛ā§āĻĒ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ āĻĄā§‡āĻŸāĻž āĻ˛ā§‡āĻ–ā§‡, fsync āĻ•āĻ˛ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¯āĻž āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻ¸ā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ āĻžāĻ¯āĻŧāĨ¤

# ЗаĐŋŅƒŅĐēĐ°ĐĩŅ‚ŅŅ ĐŊĐ° ŅĐĩŅ€Đ˛ĐĩŅ€Đĩ
./diskchecker.pl -l [port]

# ЗаĐŋŅƒŅĐēĐ°ĐĩŅ‚ŅŅ ĐŊĐ° ĐēĐģиĐĩĐŊŅ‚Đĩ
./diskchecker.pl -s <server[:port]> create <file> <size_in_MB>

āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸāĻŸāĻŋ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻĒāĻ°ā§‡, "āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ" āĻ•ā§‡ āĻĄāĻŋ-āĻāĻ¨āĻžāĻ°ā§āĻœā§€āĻœ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻāĻŦāĻ‚ āĻ•āĻ¯āĻŧā§‡āĻ• āĻŽāĻŋāĻ¨āĻŋāĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻļāĻ•ā§āĻ¤āĻŋ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻ•ā§‡ āĻŦāĻŋāĻĻā§āĻ¯ā§ā§Ž āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āĻ¨ āĻ•āĻ°āĻž āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ, āĻāĻŦāĻ‚ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻ āĻŋāĻ¨ āĻļāĻžāĻŸāĻĄāĻžāĻ‰āĻ¨ āĻ¸āĻžā§āĻšāĻžāĻ˛āĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻ°ā§‡, āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻŸāĻŋ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤ āĻāĻŦāĻ‚ OS āĻ āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ OS āĻŦā§āĻŸ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ†āĻŦāĻžāĻ° āĻļā§āĻ°ā§ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ diskchecker.pl, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ•āĻŸāĻŋ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻšāĻžāĻ‡.

./diskchecker.pl -s <server[:port]> verify <file>

āĻšā§‡āĻ• āĻļā§‡āĻˇā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻŦā§‡āĻ¨āĨ¤ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ°āĻž 0 āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻĄāĻŋāĻ¸ā§āĻ•āĻŸāĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ¯āĻŧ āĻ‰āĻ¤ā§āĻ¤ā§€āĻ°ā§āĻŖ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻĢāĻ˛ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻ¸āĻ‚āĻŽāĻŋāĻļā§āĻ°āĻŖ āĻŦāĻžāĻĻ āĻĻāĻŋāĻ¤ā§‡, āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻŸāĻŋ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻ†āĻŽāĻžāĻĻā§‡āĻ° S4500 āĻ•ā§‹āĻ¨ā§‹ āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻ˛āĻ¸ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧāĻ¨āĻŋ, āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ā§‡ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻšā§āĻ° fsync āĻ•āĻ˛ āĻ¸āĻš āĻ˛ā§‹āĻĄā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĨ¤

āĻ‰āĻĒāĻ¸āĻ‚āĻšāĻžāĻ°

āĻĄāĻŋāĻ¸ā§āĻ• āĻŦāĻž āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ°ā§‡āĻĄāĻŋāĻŽā§‡āĻĄ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻŽāĻ¨ āĻ•āĻžāĻœā§‡āĻ° āĻ¸ā§āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻ—ā§āĻ˛āĻŋ āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻœāĻ°ā§‡, āĻāĻŸāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻ¯ā§‡ NVMe, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻāĻ•āĻŸāĻŋ PCIe āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ SSD, āĻāĻ•āĻŸāĻŋ "āĻ•ā§āĻ˛āĻžāĻ¸āĻŋāĻ•" SATA SSD āĻāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻĻā§āĻ°ā§āĻ¤āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ†āĻŽāĻ°āĻž āĻ†āĻœ āĻ¯ā§‡āĻŽāĻ¨ āĻŦā§āĻāĻ¤ā§‡ āĻĒā§‡āĻ°ā§‡āĻ›āĻŋ, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§‡ āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻžāĻœā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻŸāĻŋ āĻ¨āĻžāĻ“ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

IaaS āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ° āĻ•āĻžāĻ› āĻĨā§‡āĻ•ā§‡ āĻ­āĻžāĻĄāĻŧāĻž āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻĒāĻ¨āĻŋ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŦā§‡āĻ¨?
āĻ†āĻŽāĻ°āĻž āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ›āĻŋ.

āĻ•ā§‡āĻ¨ āĻ†āĻŽāĻžāĻ° NVMe āĻāĻ•āĻŸāĻŋ SSD āĻĨā§‡āĻ•ā§‡ āĻ§ā§€āĻ°?

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨