From fe5430759e820788beb55e9984f60ad573671383 Mon Sep 17 00:00:00 2001 From: Evawudonger Date: Wed, 25 Jun 2025 10:08:50 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../en}/eulerpipeline/_toc.yaml | 0 .../eulerpipeline/eulerpipeline_user_guide.md | 0 .../image/UI\347\274\226\346\216\222.jpg" | Bin .../image/YAML\347\274\226\346\216\222.jpg" | Bin ...0\346\210\267\346\263\250\345\206\214.jpg" | Bin ...0\346\210\267\347\273\221\345\256\232.jpg" | Bin ...ernel-ci_yaml\347\274\226\346\216\222.png" | Bin .../kernel-ci\346\250\241\346\235\277.png" | Bin .../kernel-ci\350\257\204\350\256\272.png" | Bin ...1\350\257\257\350\257\246\346\203\205.png" | Bin .../image/matrix\346\200\273\350\247\210.jpg" | Bin ...7\346\261\202\347\273\223\346\236\234.png" | Bin ...2\223\351\205\215\347\275\256webhook1.jpg" | Bin ...2\223\351\205\215\347\275\256webhook2.jpg" | Bin ...3\345\212\241\350\257\246\346\203\205.jpg" | Bin ...3\345\212\241\351\207\215\350\257\225.jpg" | Bin ...6\346\224\271\350\247\222\350\211\262.jpg" | Bin ...\350\211\262\346\235\203\351\231\2201.jpg" | Bin ...\350\211\262\346\235\203\351\231\2202.jpg" | Bin ...4\346\265\201\346\260\264\347\272\277.jpg" | Bin ...6\345\217\262\350\277\220\350\241\214.jpg" | Bin ...4\347\272\277\347\261\273\345\236\213.jpg" | Bin ...0\345\221\230\347\256\241\347\220\206.jpg" | Bin ...2\346\265\201\346\260\264\347\272\277.jpg" | Bin ...0\350\241\214\350\257\246\346\203\205.jpg" | Bin ...6\345\217\221\346\235\241\344\273\266.jpg" | Bin ...3\345\212\240\346\210\220\345\221\230.jpg" | Bin .../image/\347\231\273\345\275\225.jpg" | Bin ...6\345\214\272\351\211\264\346\235\203.jpg" | Bin ...3\345\257\271\345\244\215\347\216\260.jpg" | Bin ...5\347\216\260\350\260\203\350\257\225.jpg" | Bin ...7\346\265\201\346\260\264\347\272\277.jpg" | Bin ...4\347\272\277\346\235\203\351\231\220.jpg" | Bin ...\346\265\201\346\260\264\347\272\2771.jpg" | Bin ...\346\265\201\346\260\264\347\272\2772.jpg" | Bin ...0\350\241\214\350\257\246\346\203\205.jpg" | Bin ...5\347\216\260\346\226\271\345\274\217.jpg" | Bin ...1\345\256\242\346\210\267\347\253\257.jpg" | Bin ...1\346\213\251\346\250\241\346\235\277.jpg" | Bin ...6\345\217\221\346\235\241\344\273\266.jpg" | Bin ...4\347\272\277\345\217\230\351\207\217.jpg" | Bin ...\346\265\201\346\260\264\347\272\2771.jpg" | Bin .../en}/eulerpipeline/kernel_ci_guide.md | 0 .../en}/eulerpipeline/v1.0_grammar.md | 0 .../en}/eulerpipeline/v1.1_grammar.md | 0 .../zh}/eulerpipeline/_toc.yaml | 0 .../eulerpipeline/eulerpipeline_user_guide.md | 0 .../image/UI\347\274\226\346\216\222.jpg" | Bin .../image/YAML\347\274\226\346\216\222.jpg" | Bin ...0\346\210\267\346\263\250\345\206\214.jpg" | Bin ...0\346\210\267\347\273\221\345\256\232.jpg" | Bin ...ernel-ci_yaml\347\274\226\346\216\222.png" | Bin .../kernel-ci\346\250\241\346\235\277.png" | Bin .../kernel-ci\350\257\204\350\256\272.png" | Bin ...1\350\257\257\350\257\246\346\203\205.png" | Bin .../image/matrix\346\200\273\350\247\210.jpg" | Bin ...7\346\261\202\347\273\223\346\236\234.png" | Bin ...2\223\351\205\215\347\275\256webhook1.jpg" | Bin ...2\223\351\205\215\347\275\256webhook2.jpg" | Bin ...3\345\212\241\350\257\246\346\203\205.jpg" | Bin ...3\345\212\241\351\207\215\350\257\225.jpg" | Bin ...6\346\224\271\350\247\222\350\211\262.jpg" | Bin ...\350\211\262\346\235\203\351\231\2201.jpg" | Bin ...\350\211\262\346\235\203\351\231\2202.jpg" | Bin ...4\346\265\201\346\260\264\347\272\277.jpg" | Bin ...6\345\217\262\350\277\220\350\241\214.jpg" | Bin ...4\347\272\277\347\261\273\345\236\213.jpg" | Bin ...0\345\221\230\347\256\241\347\220\206.jpg" | Bin ...2\346\265\201\346\260\264\347\272\277.jpg" | Bin ...0\350\241\214\350\257\246\346\203\205.jpg" | Bin ...6\345\217\221\346\235\241\344\273\266.jpg" | Bin ...3\345\212\240\346\210\220\345\221\230.jpg" | Bin .../image/\347\231\273\345\275\225.jpg" | Bin ...6\345\214\272\351\211\264\346\235\203.jpg" | Bin ...3\345\257\271\345\244\215\347\216\260.jpg" | Bin ...5\347\216\260\350\260\203\350\257\225.jpg" | Bin ...7\346\265\201\346\260\264\347\272\277.jpg" | Bin ...4\347\272\277\346\235\203\351\231\220.jpg" | Bin ...\346\265\201\346\260\264\347\272\2771.jpg" | Bin ...\346\265\201\346\260\264\347\272\2772.jpg" | Bin ...0\350\241\214\350\257\246\346\203\205.jpg" | Bin ...5\347\216\260\346\226\271\345\274\217.jpg" | Bin ...1\345\256\242\346\210\267\347\253\257.jpg" | Bin ...1\346\213\251\346\250\241\346\235\277.jpg" | Bin ...6\345\217\221\346\235\241\344\273\266.jpg" | Bin ...4\347\272\277\345\217\230\351\207\217.jpg" | Bin ...\346\265\201\346\260\264\347\272\2771.jpg" | Bin .../zh}/eulerpipeline/kernel_ci_guide.md | 0 .../zh}/eulerpipeline/v1.0_grammar.md | 0 .../zh}/eulerpipeline/v1.1_grammar.md | 0 docs/en/server/_toc.yaml | 2 +- .../administration/administrator/_toc.yaml | 4 +- .../administrator/configuring_services.md | 1 - .../administrator/memory_management.md | 3 + docs/en/server/maintenance/_toc.yaml | 9 -- .../operation_and_maintenance_overview.md | 9 -- docs/en/server/maintenance/overview.md | 3 - .../network_config/network_configuration.md | 2 +- .../sysboost/getting_to_know_sysBoost.md | 61 -------- docs/en/tools/community_tools/_toc.yaml | 6 +- .../community_tools/migration_tools/_toc.yaml | 2 +- docs/en/tools/community_tools/pin/_toc.yaml | 6 - .../community_tools/pin/pin_user_guide.md | 134 ------------------ docs/en/tools/desktop/gnome/_toc.yaml | 2 - docs/en/tools/desktop/gnome/gnome.md | 3 - docs/en/tools/desktop/kiran/_toc.yaml | 2 - docs/en/tools/desktop/kiran/kiran.md | 3 - docs/en/tools/desktop/ukui/_toc.yaml | 2 - docs/en/tools/desktop/ukui/ukui.md | 3 - docs/en/tools/devops/_toc.yaml | 5 +- docs/en/tools/devops/eulermaker/_toc.yaml | 2 +- docs/zh/server/_toc.yaml | 1 + .../administration/administrator/_toc.yaml | 4 +- .../administrator/configuring_services.md | 1 - .../administrator/memory_management.md} | 0 docs/zh/server/maintenance/_toc.yaml | 9 -- .../operation_and_maintenance_overview.md | 9 -- docs/zh/server/maintenance/overview.md | 3 - .../zh/server/memory_storage/memory/_toc.yaml | 6 - .../tools/community_tools/isocut/overview.md | 3 - .../migration_tools_user_guide.md | 20 +-- docs/zh/tools/desktop/gnome/gnome.md | 3 - docs/zh/tools/desktop/kiran/kiran.md | 3 - docs/zh/tools/desktop/ukui/ukui.md | 3 - docs/zh/tools/devops/_toc.yaml | 5 +- docs/zh/tools/devops/eulermaker/_toc.yaml | 2 +- .../tools/devops/patch_tracking/overview.md | 3 - 127 files changed, 27 insertions(+), 312 deletions(-) rename {docs/en/tools/devops => archive/en}/eulerpipeline/_toc.yaml (100%) rename {docs/en/tools/devops => archive/en}/eulerpipeline/eulerpipeline_user_guide.md (100%) rename "docs/en/tools/devops/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" => "archive/en/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" => "archive/en/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" => "archive/en/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" => "archive/en/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" => "archive/en/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" (100%) rename "docs/en/tools/devops/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" => "archive/en/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" (100%) rename "docs/en/tools/devops/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" => "archive/en/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" (100%) rename "docs/en/tools/devops/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" => "archive/en/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" (100%) rename "docs/en/tools/devops/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" => "archive/en/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" => "archive/en/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" => "archive/en/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" => "archive/en/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" => "archive/en/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" => "archive/en/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" => "archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" => "archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" => "archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" => "archive/en/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" => "archive/en/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" => "archive/en/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" => "archive/en/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" => "archive/en/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" => "archive/en/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" => "archive/en/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" => "archive/en/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\347\231\273\345\275\225.jpg" => "archive/en/eulerpipeline/image/\347\231\273\345\275\225.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" => "archive/en/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" => "archive/en/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" => "archive/en/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" => "archive/en/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" => "archive/en/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" => "archive/en/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" => "archive/en/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" => "archive/en/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" => "archive/en/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" => "archive/en/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" => "archive/en/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" => "archive/en/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" => "archive/en/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" (100%) rename "docs/en/tools/devops/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" => "archive/en/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" (100%) rename {docs/en/tools/devops => archive/en}/eulerpipeline/kernel_ci_guide.md (100%) rename {docs/en/tools/devops => archive/en}/eulerpipeline/v1.0_grammar.md (100%) rename {docs/en/tools/devops => archive/en}/eulerpipeline/v1.1_grammar.md (100%) rename {docs/zh/tools/devops => archive/zh}/eulerpipeline/_toc.yaml (100%) rename {docs/zh/tools/devops => archive/zh}/eulerpipeline/eulerpipeline_user_guide.md (100%) rename "docs/zh/tools/devops/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" => "archive/zh/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" => "archive/zh/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" => "archive/zh/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" => "archive/zh/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" => "archive/zh/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" => "archive/zh/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" => "archive/zh/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" => "archive/zh/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" => "archive/zh/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" => "archive/zh/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" => "archive/zh/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" => "archive/zh/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" => "archive/zh/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" => "archive/zh/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" => "archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" => "archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" => "archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" => "archive/zh/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" => "archive/zh/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" => "archive/zh/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" => "archive/zh/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" => "archive/zh/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" => "archive/zh/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" => "archive/zh/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" => "archive/zh/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\347\231\273\345\275\225.jpg" => "archive/zh/eulerpipeline/image/\347\231\273\345\275\225.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" => "archive/zh/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" => "archive/zh/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" => "archive/zh/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" => "archive/zh/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" => "archive/zh/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" => "archive/zh/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" => "archive/zh/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" => "archive/zh/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" => "archive/zh/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" => "archive/zh/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" => "archive/zh/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" => "archive/zh/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" => "archive/zh/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" (100%) rename "docs/zh/tools/devops/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" => "archive/zh/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" (100%) rename {docs/zh/tools/devops => archive/zh}/eulerpipeline/kernel_ci_guide.md (100%) rename {docs/zh/tools/devops => archive/zh}/eulerpipeline/v1.0_grammar.md (100%) rename {docs/zh/tools/devops => archive/zh}/eulerpipeline/v1.1_grammar.md (100%) delete mode 100644 docs/en/server/administration/administrator/configuring_services.md create mode 100644 docs/en/server/administration/administrator/memory_management.md delete mode 100644 docs/en/server/maintenance/_toc.yaml delete mode 100644 docs/en/server/maintenance/operation_and_maintenance_overview.md delete mode 100644 docs/en/server/maintenance/overview.md delete mode 100644 docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysBoost.md delete mode 100644 docs/en/tools/community_tools/pin/_toc.yaml delete mode 100644 docs/en/tools/community_tools/pin/pin_user_guide.md delete mode 100644 docs/en/tools/desktop/gnome/gnome.md delete mode 100644 docs/en/tools/desktop/kiran/kiran.md delete mode 100644 docs/en/tools/desktop/ukui/ukui.md delete mode 100644 docs/zh/server/administration/administrator/configuring_services.md rename docs/zh/server/{memory_storage/memory/overview.md => administration/administrator/memory_management.md} (100%) delete mode 100644 docs/zh/server/maintenance/_toc.yaml delete mode 100644 docs/zh/server/maintenance/operation_and_maintenance_overview.md delete mode 100644 docs/zh/server/maintenance/overview.md delete mode 100644 docs/zh/server/memory_storage/memory/_toc.yaml delete mode 100644 docs/zh/tools/community_tools/isocut/overview.md delete mode 100644 docs/zh/tools/desktop/gnome/gnome.md delete mode 100644 docs/zh/tools/desktop/kiran/kiran.md delete mode 100644 docs/zh/tools/desktop/ukui/ukui.md delete mode 100644 docs/zh/tools/devops/patch_tracking/overview.md diff --git a/docs/en/tools/devops/eulerpipeline/_toc.yaml b/archive/en/eulerpipeline/_toc.yaml similarity index 100% rename from docs/en/tools/devops/eulerpipeline/_toc.yaml rename to archive/en/eulerpipeline/_toc.yaml diff --git a/docs/en/tools/devops/eulerpipeline/eulerpipeline_user_guide.md b/archive/en/eulerpipeline/eulerpipeline_user_guide.md similarity index 100% rename from docs/en/tools/devops/eulerpipeline/eulerpipeline_user_guide.md rename to archive/en/eulerpipeline/eulerpipeline_user_guide.md diff --git "a/docs/en/tools/devops/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" "b/archive/en/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" rename to "archive/en/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" "b/archive/en/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" rename to "archive/en/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" "b/archive/en/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" rename to "archive/en/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" "b/archive/en/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" rename to "archive/en/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" "b/archive/en/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" rename to "archive/en/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" diff --git "a/docs/en/tools/devops/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" "b/archive/en/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" rename to "archive/en/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" diff --git "a/docs/en/tools/devops/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" "b/archive/en/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" rename to "archive/en/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" diff --git "a/docs/en/tools/devops/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" "b/archive/en/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" rename to "archive/en/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" diff --git "a/docs/en/tools/devops/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" "b/archive/en/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" rename to "archive/en/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" "b/archive/en/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" rename to "archive/en/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" "b/archive/en/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" rename to "archive/en/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" "b/archive/en/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" rename to "archive/en/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" "b/archive/en/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" rename to "archive/en/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" "b/archive/en/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" rename to "archive/en/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" "b/archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" rename to "archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" "b/archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" rename to "archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" "b/archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" rename to "archive/en/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" "b/archive/en/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" rename to "archive/en/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" "b/archive/en/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" rename to "archive/en/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" "b/archive/en/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" rename to "archive/en/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" "b/archive/en/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" rename to "archive/en/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" "b/archive/en/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" rename to "archive/en/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" "b/archive/en/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" rename to "archive/en/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" "b/archive/en/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" rename to "archive/en/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" "b/archive/en/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" rename to "archive/en/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\347\231\273\345\275\225.jpg" "b/archive/en/eulerpipeline/image/\347\231\273\345\275\225.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\347\231\273\345\275\225.jpg" rename to "archive/en/eulerpipeline/image/\347\231\273\345\275\225.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" "b/archive/en/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" rename to "archive/en/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" "b/archive/en/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" rename to "archive/en/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" "b/archive/en/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" rename to "archive/en/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" "b/archive/en/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" rename to "archive/en/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" "b/archive/en/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" rename to "archive/en/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" "b/archive/en/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" rename to "archive/en/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" "b/archive/en/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" rename to "archive/en/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" "b/archive/en/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" rename to "archive/en/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" "b/archive/en/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" rename to "archive/en/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" "b/archive/en/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" rename to "archive/en/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" "b/archive/en/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" rename to "archive/en/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" "b/archive/en/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" rename to "archive/en/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" "b/archive/en/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" rename to "archive/en/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" diff --git "a/docs/en/tools/devops/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" "b/archive/en/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" similarity index 100% rename from "docs/en/tools/devops/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" rename to "archive/en/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" diff --git a/docs/en/tools/devops/eulerpipeline/kernel_ci_guide.md b/archive/en/eulerpipeline/kernel_ci_guide.md similarity index 100% rename from docs/en/tools/devops/eulerpipeline/kernel_ci_guide.md rename to archive/en/eulerpipeline/kernel_ci_guide.md diff --git a/docs/en/tools/devops/eulerpipeline/v1.0_grammar.md b/archive/en/eulerpipeline/v1.0_grammar.md similarity index 100% rename from docs/en/tools/devops/eulerpipeline/v1.0_grammar.md rename to archive/en/eulerpipeline/v1.0_grammar.md diff --git a/docs/en/tools/devops/eulerpipeline/v1.1_grammar.md b/archive/en/eulerpipeline/v1.1_grammar.md similarity index 100% rename from docs/en/tools/devops/eulerpipeline/v1.1_grammar.md rename to archive/en/eulerpipeline/v1.1_grammar.md diff --git a/docs/zh/tools/devops/eulerpipeline/_toc.yaml b/archive/zh/eulerpipeline/_toc.yaml similarity index 100% rename from docs/zh/tools/devops/eulerpipeline/_toc.yaml rename to archive/zh/eulerpipeline/_toc.yaml diff --git a/docs/zh/tools/devops/eulerpipeline/eulerpipeline_user_guide.md b/archive/zh/eulerpipeline/eulerpipeline_user_guide.md similarity index 100% rename from docs/zh/tools/devops/eulerpipeline/eulerpipeline_user_guide.md rename to archive/zh/eulerpipeline/eulerpipeline_user_guide.md diff --git "a/docs/zh/tools/devops/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" "b/archive/zh/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" rename to "archive/zh/eulerpipeline/image/UI\347\274\226\346\216\222.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" "b/archive/zh/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" rename to "archive/zh/eulerpipeline/image/YAML\347\274\226\346\216\222.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" "b/archive/zh/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" rename to "archive/zh/eulerpipeline/image/cci\345\270\220\346\210\267\346\263\250\345\206\214.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" "b/archive/zh/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" rename to "archive/zh/eulerpipeline/image/cci\345\270\220\346\210\267\347\273\221\345\256\232.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" "b/archive/zh/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" rename to "archive/zh/eulerpipeline/image/kernel-ci_yaml\347\274\226\346\216\222.png" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" "b/archive/zh/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" rename to "archive/zh/eulerpipeline/image/kernel-ci\346\250\241\346\235\277.png" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" "b/archive/zh/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" rename to "archive/zh/eulerpipeline/image/kernel-ci\350\257\204\350\256\272.png" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" "b/archive/zh/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" rename to "archive/zh/eulerpipeline/image/kernel-ci\351\224\231\350\257\257\350\257\246\346\203\205.png" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" "b/archive/zh/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" rename to "archive/zh/eulerpipeline/image/matrix\346\200\273\350\247\210.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" "b/archive/zh/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" rename to "archive/zh/eulerpipeline/image/webhook\350\257\267\346\261\202\347\273\223\346\236\234.png" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" "b/archive/zh/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" rename to "archive/zh/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook1.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" "b/archive/zh/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" rename to "archive/zh/eulerpipeline/image/\344\273\223\345\272\223\351\205\215\347\275\256webhook2.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" "b/archive/zh/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" rename to "archive/zh/eulerpipeline/image/\344\273\273\345\212\241\350\257\246\346\203\205.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" "b/archive/zh/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" rename to "archive/zh/eulerpipeline/image/\344\273\273\345\212\241\351\207\215\350\257\225.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" "b/archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" rename to "archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" "b/archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" rename to "archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2201.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" "b/archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" rename to "archive/zh/eulerpipeline/image/\344\277\256\346\224\271\350\247\222\350\211\262\346\235\203\351\231\2202.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" "b/archive/zh/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" rename to "archive/zh/eulerpipeline/image/\345\210\240\351\231\244\346\265\201\346\260\264\347\272\277.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" "b/archive/zh/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" rename to "archive/zh/eulerpipeline/image/\345\216\206\345\217\262\350\277\220\350\241\214.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" "b/archive/zh/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" rename to "archive/zh/eulerpipeline/image/\345\217\230\346\233\264\346\265\201\346\260\264\347\272\277\347\261\273\345\236\213.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" "b/archive/zh/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" rename to "archive/zh/eulerpipeline/image/\346\210\220\345\221\230\347\256\241\347\220\206.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" "b/archive/zh/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" rename to "archive/zh/eulerpipeline/image/\346\226\260\345\273\272\346\265\201\346\260\264\347\272\277.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" "b/archive/zh/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" rename to "archive/zh/eulerpipeline/image/\346\237\245\347\234\213\346\234\200\346\226\260\350\277\220\350\241\214\350\257\246\346\203\205.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" "b/archive/zh/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" rename to "archive/zh/eulerpipeline/image/\346\267\273\345\212\240webhook\350\247\246\345\217\221\346\235\241\344\273\266.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" "b/archive/zh/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" rename to "archive/zh/eulerpipeline/image/\346\267\273\345\212\240\346\210\220\345\221\230.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\347\231\273\345\275\225.jpg" "b/archive/zh/eulerpipeline/image/\347\231\273\345\275\225.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\347\231\273\345\275\225.jpg" rename to "archive/zh/eulerpipeline/image/\347\231\273\345\275\225.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" "b/archive/zh/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" rename to "archive/zh/eulerpipeline/image/\347\244\276\345\214\272\351\211\264\346\235\203.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" "b/archive/zh/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" rename to "archive/zh/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" "b/archive/zh/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" rename to "archive/zh/eulerpipeline/image/\347\273\223\345\257\271\345\244\215\347\216\260\350\260\203\350\257\225.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" "b/archive/zh/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" rename to "archive/zh/eulerpipeline/image/\347\274\226\346\216\222\347\233\256\346\240\207\346\265\201\346\260\264\347\272\277.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" "b/archive/zh/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" rename to "archive/zh/eulerpipeline/image/\350\256\276\347\275\256\346\265\201\346\260\264\347\272\277\346\235\203\351\231\220.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" "b/archive/zh/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" rename to "archive/zh/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2771.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" "b/archive/zh/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" rename to "archive/zh/eulerpipeline/image/\350\277\220\350\241\214\346\265\201\346\260\264\347\272\2772.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" "b/archive/zh/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" rename to "archive/zh/eulerpipeline/image/\350\277\220\350\241\214\350\257\246\346\203\205.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" "b/archive/zh/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" rename to "archive/zh/eulerpipeline/image/\351\200\211\346\213\251\345\244\215\347\216\260\346\226\271\345\274\217.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" "b/archive/zh/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" rename to "archive/zh/eulerpipeline/image/\351\200\211\346\213\251\345\256\242\346\210\267\347\253\257.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" "b/archive/zh/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" rename to "archive/zh/eulerpipeline/image/\351\200\211\346\213\251\346\250\241\346\235\277.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" "b/archive/zh/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" rename to "archive/zh/eulerpipeline/image/\351\205\215\347\275\256\345\256\232\346\227\266\350\247\246\345\217\221\346\235\241\344\273\266.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" "b/archive/zh/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" rename to "archive/zh/eulerpipeline/image/\351\205\215\347\275\256\346\265\201\346\260\264\347\272\277\345\217\230\351\207\217.jpg" diff --git "a/docs/zh/tools/devops/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" "b/archive/zh/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" similarity index 100% rename from "docs/zh/tools/devops/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" rename to "archive/zh/eulerpipeline/image/\351\207\215\350\257\225\346\265\201\346\260\264\347\272\2771.jpg" diff --git a/docs/zh/tools/devops/eulerpipeline/kernel_ci_guide.md b/archive/zh/eulerpipeline/kernel_ci_guide.md similarity index 100% rename from docs/zh/tools/devops/eulerpipeline/kernel_ci_guide.md rename to archive/zh/eulerpipeline/kernel_ci_guide.md diff --git a/docs/zh/tools/devops/eulerpipeline/v1.0_grammar.md b/archive/zh/eulerpipeline/v1.0_grammar.md similarity index 100% rename from docs/zh/tools/devops/eulerpipeline/v1.0_grammar.md rename to archive/zh/eulerpipeline/v1.0_grammar.md diff --git a/docs/zh/tools/devops/eulerpipeline/v1.1_grammar.md b/archive/zh/eulerpipeline/v1.1_grammar.md similarity index 100% rename from docs/zh/tools/devops/eulerpipeline/v1.1_grammar.md rename to archive/zh/eulerpipeline/v1.1_grammar.md diff --git a/docs/en/server/_toc.yaml b/docs/en/server/_toc.yaml index b6e6b174b..6749dd3d8 100644 --- a/docs/en/server/_toc.yaml +++ b/docs/en/server/_toc.yaml @@ -1,6 +1,6 @@ label: Server sections: - - label: Release Notes + - label: Getting Started sections: - href: ./releasenotes/releasenotes/_toc.yaml - href: ./quickstart/quickstart/_toc.yaml diff --git a/docs/en/server/administration/administrator/_toc.yaml b/docs/en/server/administration/administrator/_toc.yaml index e9cb61ab7..b7c92ca61 100644 --- a/docs/en/server/administration/administrator/_toc.yaml +++ b/docs/en/server/administration/administrator/_toc.yaml @@ -15,7 +15,6 @@ sections: - label: Process Management href: ./process_management.md - label: Service Configuration - href: ./configuring_services.md sections: - label: Configuring the Repo Server href: ./configuring_the_repo_server.md @@ -25,4 +24,5 @@ sections: href: ./configuring_the_web_server.md - label: Setting Up the Database Server href: ./setting_up_the_database_server.md - + - label: Memory Management + href: ./memory_management.md \ No newline at end of file diff --git a/docs/en/server/administration/administrator/configuring_services.md b/docs/en/server/administration/administrator/configuring_services.md deleted file mode 100644 index e33439eb2..000000000 --- a/docs/en/server/administration/administrator/configuring_services.md +++ /dev/null @@ -1 +0,0 @@ -# Configuring Services diff --git a/docs/en/server/administration/administrator/memory_management.md b/docs/en/server/administration/administrator/memory_management.md new file mode 100644 index 000000000..c360fc9ad --- /dev/null +++ b/docs/en/server/administration/administrator/memory_management.md @@ -0,0 +1,3 @@ +# Memory Management + +This document is currently not available in English. diff --git a/docs/en/server/maintenance/_toc.yaml b/docs/en/server/maintenance/_toc.yaml deleted file mode 100644 index c6136476a..000000000 --- a/docs/en/server/maintenance/_toc.yaml +++ /dev/null @@ -1,9 +0,0 @@ -label: O&M Guide -isManual: true -description: O&M Guide -sections: - - label: O&M Guide - href: ./overview.md - sections: - - label: O&M Overview - href: ./operation_and_maintenance_overview.md diff --git a/docs/en/server/maintenance/operation_and_maintenance_overview.md b/docs/en/server/maintenance/operation_and_maintenance_overview.md deleted file mode 100644 index c5893a9ca..000000000 --- a/docs/en/server/maintenance/operation_and_maintenance_overview.md +++ /dev/null @@ -1,9 +0,0 @@ -# O&M Overview - -IT O&M means that the IT department of an enterprise uses technical means to manage the IT system. It is a comprehensive, sophisticated, and specific service. Routine IT O&M services include software management and hardware management. In software management, maintaining device stability and efficiency through the OS is the core and key part of IT O&M. - -Specifically, by monitoring dynamic changes of performance metrics such as the CPU, memory, and I/O in a device, related problems can be effectively prevented or located. For example, the CPU is overloaded due to various service reasons, which slows down the service response. In this case, you need to monitor the CPU usage. When the memory usage remains high for a long time, you need to use the memory analysis tool to monitor related hardware or processes. When the efficiency of read/write operations is low, I/O data needs to be monitored to evaluate I/O performance. - -In addition, when a fault such as system breakdown, deadlock, or breakdown occurs, you need to perform troubleshooting on the OS to quickly locate and rectify the fault. For example, you can trigger kdump to collect system kernel information and then analyze the information. When you need to change the system password, enter the single-user mode and change the password of the **root** user. The file system can be damaged due to frequent forcible power-on and power-off. If the OS fails to automatically repair the file system, you need to manually repair it. For example, modify the **drop\_caches** content to manually release the memory. In addition, you need to collect information, such as log files and device files, when a fault occurs, so that you can comprehensively analyze the root cause of the fault. - -Therefore, being familiar with the usage of the OS performance analysis tool and fault rectification operations is the key to implementing comprehensive IT O&M management. diff --git a/docs/en/server/maintenance/overview.md b/docs/en/server/maintenance/overview.md deleted file mode 100644 index 6f19668ad..000000000 --- a/docs/en/server/maintenance/overview.md +++ /dev/null @@ -1,3 +0,0 @@ -# O&M Guide - -This document describes how to operate and maintain the openEuler operating system (OS), including performance monitoring tools, information collection methods, emergency handling solutions, and common tools. diff --git a/docs/en/server/network/network_config/network_configuration.md b/docs/en/server/network/network_config/network_configuration.md index e0572cd04..5c427a4ca 100644 --- a/docs/en/server/network/network_config/network_configuration.md +++ b/docs/en/server/network/network_config/network_configuration.md @@ -747,7 +747,7 @@ BONDING_OPTS="bonding parameters separated by spaces" In this example, replace N with the number of the bonded interface. For example, to create two interfaces, you need to create two configuration files **ifcfg-bond0** and **ifcfg-bond1** with correct IP addresses. -## IPv6 Differences \(vs IPv4\) +## IPv6 Differences (vs IPv4) ### Restrictions diff --git a/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysBoost.md b/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysBoost.md deleted file mode 100644 index 6666c961d..000000000 --- a/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysBoost.md +++ /dev/null @@ -1,61 +0,0 @@ -# Getting to Know sysBoost - -## Introduction - -sysBoost reorders the code of executable files and dynamic libraries online to adapt the code for the CPU microarchitecture of the operating environment, boosting program performance. - -## Background - -- Large-scale applications use a large number of third-party or self-developed dynamic libraries. A large number of PLT jumps occur during function invoking. As a result, the instructions per cycle (IPC) decreases. - -- Assembly code is large in size and occupies a large amount of memory, resulting in a high iTLB miss rate. Hotspot code segments are scattered. As a result, the I-cache miss rate is high, affecting the CPU pipeline efficiency. - -- Application developers are unfamiliar with the OS and CPU microarchitecture, resulting in high IPC performance optimization costs. - -## sysBoost Design - -### Key technologies - -- Dynamic library merging: Scattered code segments and data segments are merged when the dynamic loader loads dynamic libraries. Huge page memory is used to improve the iTLB hit ratio. - -- PLT jump elimination: When the application code calls a dynamic library function, the execution is redirected to the PLT and then to the actual function. Eliminating PLT jump can improve the IPC. - -- Online reordering of hotspot code segments: By default, code is arranged by dynamic library. The online reordering technology can reorder hotspot code by segment. - -- exec native huge page mechanism: The user-mode huge page mechanism requires specific application configuration and recompilation. The exec native huge page mechanism directly uses huge page memory when the kernel loads the ELF file,without the need for modifying applications. - -### Architecture - -**Figure 1** sysBoost architecture - -![](./figures/architecture.png) - -## sysBoost Features - -- Full static merging: Applications and their dependent dynamic libraries are merged into one binary file, and segment-level reordering is performed. Multiple discrete code segments or data segments are merged into one to improve application performance. - -- Automatic binary file optimization: The sysBoost daemon reads the configuration file to obtain the binary files to be optimized and the corresponding optimization methods, optimizes the binary files based on user requirements, and stores the optimized binary files in RTO files. - -- Huge page preloading of binary code segments/data segments: When the user-mode page table is mapped to the physical memory, huge page (2 MB) mapping can improve performance. However, openEuler does not support huge page mapping of file pages. sysBoost provides the huge page pre-loading function. After binary optimization is complete, sysBoost immediately loads the content to the kernel as a huge page. When an application is started, sysBoost maps the pre-loaded content to the user-mode page table in batches to reduce page faults and memory access delay of the application, thereby improving the application startup speed and running efficiency. - -- Binary exception monitoring: If a bug occurs in the RTO binary file generated by sysBoost, the application may crash. To avoid repeated application starts and crashes and prevent the fault from spreading, sysBoost monitors the processes that load the RTO binary files. If such a process crashes, sysBoost rolls back the optimization by deleting the RTO file and the flag on the original application file. In addition, sysBoost renames the configuration file to prevent optimization from being applied again after the sysBoost service is restarted. - -## Benefits - -### Scenario 1 - -In the Bash test of UnixBench, some common commands and scripts are executed, such as `ls`, `grep`, and `awk`. These commands and scripts usually invoke some system libraries, such as **libc** and **libpthread**. These library files usually need to be dynamically linked, which increases the program startup time and delay. By using the binary file merging technology, these library files can be merged into an executable file, significantly improving the Bash performance and increasing the UnixBench score. - -### Scenario 2 - -The dynamic assembly design of some applications uses a large number of dynamic libraries, which brings the following problems: - -- Indirect function jump and scattered code segments affect CPU execution efficiency. -- The parsing of excessive dynamic library symbols slows down program startup. -- Profile-guided optimization based on a specific service model cannot adapt to different service models. - -Using sysBoost to start large processes during service deployment can effectively solve the preceding problems. - -- The exec huge page mechanism allows the loaded large processes to store code segments and data segments in memory huge pages, reducing the TLB miss rate. -- A large process contains all dynamic library code and application code, eliminating indirect function jumps. -- Service changes are intelligently identified online to regenerate large processes based on appropriate hotspot models. diff --git a/docs/en/tools/community_tools/_toc.yaml b/docs/en/tools/community_tools/_toc.yaml index fb775febc..78a928293 100644 --- a/docs/en/tools/community_tools/_toc.yaml +++ b/docs/en/tools/community_tools/_toc.yaml @@ -4,7 +4,7 @@ sections: sections: - href: ./isocut/_toc.yaml - href: ./image_tailor/_toc.yaml - - label: GCC User Guide + - label: Compilation sections: - href: upstream: https://gitee.com/openeuler/compiler-docs/blob/openEuler-24.03-LTS-SP2/docs/en/gcc/_toc.yaml @@ -26,6 +26,4 @@ sections: - label: epkg sections: - href: ./epkg_use/_toc.yaml - - label: Compilation - sections: - - href: ./pin/_toc.yaml + diff --git a/docs/en/tools/community_tools/migration_tools/_toc.yaml b/docs/en/tools/community_tools/migration_tools/_toc.yaml index 4d5cd9d79..0e552ac2c 100644 --- a/docs/en/tools/community_tools/migration_tools/_toc.yaml +++ b/docs/en/tools/community_tools/migration_tools/_toc.yaml @@ -1,6 +1,6 @@ label: migration-tools User Guide isManual: true -description: Migration from other OSs (CentOS 7/8) to UnionTech OS Server +description: Migration from other OSs (CentOS 7/8) to UnionTech OS Server. sections: - label: migration-tools User Guide href: ./migration_tools_user_guide.md diff --git a/docs/en/tools/community_tools/pin/_toc.yaml b/docs/en/tools/community_tools/pin/_toc.yaml deleted file mode 100644 index 754f09961..000000000 --- a/docs/en/tools/community_tools/pin/_toc.yaml +++ /dev/null @@ -1,6 +0,0 @@ -label: PIN User Guide -isManual: true -description: PIN User Guide -sections: - - label: PIN User Guide - href: ./pin_user_guide.md diff --git a/docs/en/tools/community_tools/pin/pin_user_guide.md b/docs/en/tools/community_tools/pin/pin_user_guide.md deleted file mode 100644 index bf2c81d17..000000000 --- a/docs/en/tools/community_tools/pin/pin_user_guide.md +++ /dev/null @@ -1,134 +0,0 @@ -# Installation and Deployment - -## Software - -* OS: openEuler 24.03 - -## Hardware - -* x86_64 -* Arm - -## Preparing the Environment - -* Install the openEuler operating system. For details, see the [*openEuler Installation Guide*](../../../server/installation_upgrade/installation/installation_on_servers.md). - -### Install the dependency - -#### Installing the Software on Which the PIN GCC Client Depends - -```shell -yum install -y grpc -yum install -y grpc-devel -yum install -y grpc-plugins -yum install -y protobuf-devel -yum install -y jsoncpp -yum install -y jsoncpp-devel -yum install -y gcc-plugin-devel -yum install -y llvm-mlir -yum install -y llvm-mlir-devel -yum install -y llvm-devel -``` - -#### Installing the Software on Which the PIN Server Depends - -```shell -yum install -y grpc -yum install -y grpc-devel -yum install -y grpc-plugins -yum install -y protobuf-devel -yum install -y jsoncpp -yum install -y jsoncpp-devel -yum install -y llvm-mlir -yum install -y llvm-mlir-devel -yum install -y llvm-devel -``` - -## Installing PIN - -### rpmbuild - -#### Building the PIN GCC Client - -```shell -git clone https://gitee.com/src-openeuler/pin-gcc-client.git -cd pin-gcc-client -mkdir -p ~/rpmbuild/SOURCES -cp *.path pin-gcc-client.tar.gz ~/rpmbuild/SOURCES -rpmbuild -ba pin-gcc-client.spec -cd ~/rpmbuild/RPMS -rpm -ivh pin-gcc-client.rpm -``` - -#### Building the PIN Server - -```shell -git clone https://gitee.com/src-openeuler/pin-server.git -cd pin-server -mkdir -p ~/rpmbuild/SOURCES -cp *.path pin-server.tar.gz ~/rpmbuild/SOURCES -rpmbuild -ba pin-server.spec -cd ~/rpmbuild/RPMS -rpm -ivh pin-server.rpm -``` - -### Build - -#### Building the PIN GCC Client - -```shell -git clone https://gitee.com/openeuler/pin-gcc-client.git -cd pin-gcc-client -mkdir build -cd build -cmake ../ -DMLIR_DIR=${MLIR_PATH} -DLLVM_DIR=${LLVM_PATH} -make -``` - -#### Building the PIN Server - -```shell -git clone https://gitee.com/openeuler/pin-server.git -cd pin-server -mkdir build -cd build -cmake ../ -DMLIR_DIR=${MLIR_PATH} -DLLVM_DIR=${LLVM_PATH} -make -``` - -# Usage - -You can use `-fplugin` and `-fplugin-arg-libpin_xxx` to enable the Plug-IN (PIN) tool. -Command: - -```shell -$(TARGET): $(OBJS) - $(CXX) -fplugin=${CLIENT_PATH}/build/libpin_gcc_client.so \ - -fplugin-arg-libpin_gcc_client-server_path=${SERVER_PATH}/build/pin_server \ - -fplugin-arg-libpin_gcc_client-log_level="1" \ - -fplugin-arg-libpin_gcc_client-arg1="xxx" -``` - -You can use the `${INSTALL_PATH}/bin/pin-gcc-client.json` file to configure PIN. The configuration options are as follows: - -`path`: path of the executable file of the PIN server. - -`sha256file`: path of the PIN verification file `xxx.sha256`. - -`timeout`: timeout interval for cross-process communication, in milliseconds. - -Compile options: - -`-fplugin`: path of the .so file of the PIN client. - -`-fplugin-arg-libpin_gcc_client-server_path`: path of the executable program of the PIN server. - -`-fplugin-arg-libpin_gcc_client-log_level`: default log level. The value ranges from `0` to `3`. The default value is `1`. - -`-fplugin-arg-libpin_gcc_client-argN`: other parameters that can be specified as required. `argN` indicates the argument required by PIN. - -# Compatibility - -This section describes the compatibility issues in some special scenarios. This project is in continuous iteration and will be fixed as soon as possible. Developers are welcome to join this project. - -* When PIN is enabled in the `-flto` phase, multi-process compilation using `make -j` is not supported. You are advised to use `make -j1` for compilation. diff --git a/docs/en/tools/desktop/gnome/_toc.yaml b/docs/en/tools/desktop/gnome/_toc.yaml index c8a203fc5..d43a73b86 100644 --- a/docs/en/tools/desktop/gnome/_toc.yaml +++ b/docs/en/tools/desktop/gnome/_toc.yaml @@ -2,8 +2,6 @@ label: GNOME User Guide isManual: true description: Install and use GNOME. sections: - - label: GNOME - href: ./gnome.md - label: GNOME Installation href: ./gnome_installation.md - label: GNOME User Guide diff --git a/docs/en/tools/desktop/gnome/gnome.md b/docs/en/tools/desktop/gnome/gnome.md deleted file mode 100644 index e620de95b..000000000 --- a/docs/en/tools/desktop/gnome/gnome.md +++ /dev/null @@ -1,3 +0,0 @@ -# GNOME User Guide - -This chapter describes how to install and use the GNOME desktop environment. diff --git a/docs/en/tools/desktop/kiran/_toc.yaml b/docs/en/tools/desktop/kiran/_toc.yaml index 91a3ca13b..dbfc505dc 100644 --- a/docs/en/tools/desktop/kiran/_toc.yaml +++ b/docs/en/tools/desktop/kiran/_toc.yaml @@ -2,8 +2,6 @@ label: Kiran User Guide isManual: true description: Install and use Kiran. sections: - - label: Kiran - href: ./kiran.md - label: Installing Kiran href: ./kiran_installation.md - label: Using Kiran diff --git a/docs/en/tools/desktop/kiran/kiran.md b/docs/en/tools/desktop/kiran/kiran.md deleted file mode 100644 index b9da8f9fd..000000000 --- a/docs/en/tools/desktop/kiran/kiran.md +++ /dev/null @@ -1,3 +0,0 @@ -# Kiran User Guide - -This chapter describes how to install and use the Kiran desktop environment. diff --git a/docs/en/tools/desktop/ukui/_toc.yaml b/docs/en/tools/desktop/ukui/_toc.yaml index 16134a076..eaa244fcc 100644 --- a/docs/en/tools/desktop/ukui/_toc.yaml +++ b/docs/en/tools/desktop/ukui/_toc.yaml @@ -2,8 +2,6 @@ label: UKUI User Guide isManual: true description: Install and use UKUI. sections: - - label: UKUI - href: ./ukui.md - label: Installing UKUI href: ./ukui_installation.md - label: Using UKUI diff --git a/docs/en/tools/desktop/ukui/ukui.md b/docs/en/tools/desktop/ukui/ukui.md deleted file mode 100644 index 91fd9e42a..000000000 --- a/docs/en/tools/desktop/ukui/ukui.md +++ /dev/null @@ -1,3 +0,0 @@ -# UKUI User Guide - -This chapter describes how to install and use the UKUI desktop environment. diff --git a/docs/en/tools/devops/_toc.yaml b/docs/en/tools/devops/_toc.yaml index e92504c1f..3b30b5afe 100644 --- a/docs/en/tools/devops/_toc.yaml +++ b/docs/en/tools/devops/_toc.yaml @@ -6,9 +6,6 @@ sections: - label: Package Management sections: - href: ./pkgship/_toc.yaml - - label: EulerMaker + - label: Package Creation sections: - href: ./eulermaker/_toc.yaml - - label: EulerPipeline - sections: - - href: ./eulerpipeline/_toc.yaml \ No newline at end of file diff --git a/docs/en/tools/devops/eulermaker/_toc.yaml b/docs/en/tools/devops/eulermaker/_toc.yaml index cb0cb2b1c..af8990bb7 100644 --- a/docs/en/tools/devops/eulermaker/_toc.yaml +++ b/docs/en/tools/devops/eulermaker/_toc.yaml @@ -1,6 +1,6 @@ label: EulerMaker isManual: true -description: EulerMaker +description: EulerMaker builds source code into binary software packages. sections: - label: EulerMaker Quick Start href: ./eulermaker_user_guide.md diff --git a/docs/zh/server/_toc.yaml b/docs/zh/server/_toc.yaml index b5315ce12..93b6f7eef 100644 --- a/docs/zh/server/_toc.yaml +++ b/docs/zh/server/_toc.yaml @@ -18,6 +18,7 @@ sections: - href: ./maintenance/aops/_toc.yaml - href: ./maintenance/gala/_toc.yaml - href: ./maintenance/sysmonitor/_toc.yaml + - href: ./maintenance/kernel_live_upgrade/_toc.yaml - href: upstream: https://gitee.com/openeuler/syscare/blob/openEuler-24.03-LTS-SP2/docs/zh/_toc.yaml path: ./syscare diff --git a/docs/zh/server/administration/administrator/_toc.yaml b/docs/zh/server/administration/administrator/_toc.yaml index 22ba99e1b..47efde650 100644 --- a/docs/zh/server/administration/administrator/_toc.yaml +++ b/docs/zh/server/administration/administrator/_toc.yaml @@ -15,7 +15,6 @@ sections: - label: 管理进程 href: ./process_management.md - label: 搭建服务 - href: ./configuring_services.md sections: - label: 搭建repo服务器 href: ./configuring_the_repo_server.md @@ -25,4 +24,5 @@ sections: href: ./configuring_the_web_server.md - label: 搭建数据库服务器 href: ./setting_up_the_database_server.md - \ No newline at end of file + - label: 管理内存 + href: ./memory_management.md diff --git a/docs/zh/server/administration/administrator/configuring_services.md b/docs/zh/server/administration/administrator/configuring_services.md deleted file mode 100644 index 72cb121e1..000000000 --- a/docs/zh/server/administration/administrator/configuring_services.md +++ /dev/null @@ -1 +0,0 @@ -# 搭建服务 diff --git a/docs/zh/server/memory_storage/memory/overview.md b/docs/zh/server/administration/administrator/memory_management.md similarity index 100% rename from docs/zh/server/memory_storage/memory/overview.md rename to docs/zh/server/administration/administrator/memory_management.md diff --git a/docs/zh/server/maintenance/_toc.yaml b/docs/zh/server/maintenance/_toc.yaml deleted file mode 100644 index 26e47050f..000000000 --- a/docs/zh/server/maintenance/_toc.yaml +++ /dev/null @@ -1,9 +0,0 @@ -label: 运维指南 -isManual: true -description: 运维指南 -sections: - - label: 运维指南 - href: ./overview.md - sections: - - label: 运维概述 - href: ./operation_and_maintenance_overview.md diff --git a/docs/zh/server/maintenance/operation_and_maintenance_overview.md b/docs/zh/server/maintenance/operation_and_maintenance_overview.md deleted file mode 100644 index 297cb70af..000000000 --- a/docs/zh/server/maintenance/operation_and_maintenance_overview.md +++ /dev/null @@ -1,9 +0,0 @@ -# 运维概述 - -​**IT运维**是指企业IT部门采用技术手段对IT系统进行管理,是一种全面、复杂而又具体的服务。日常的IT运维服务主要包括了软件管理和硬件管理等。在软件管理中,通过**操作系统**维护设备的稳定性和高效性是IT运维的核心和重点部分。 - -​具体来说,通过监测设备中**CPU**、**内存**和**I/O**等性能的动态变化,可以有效预防或定位相关问题。例如,由于各种业务原因导致CPU负载过高,导致服务响应变慢等问题,此时需要对CPU的使用情况进行监测。当内存占用率持续很高时,需要使用内存分析工具针对相关硬件或进程进行监测。进行相关读/写操作效率低时,需要监测I/O数据用来评估I/O性能等。 - -​此外,当系统发生崩溃、死锁或者死机等故障时,需要通过操作系统做一些应急处理,用来对故障进行快速排查和修复。例如,通过触发kdump,收集系统内核信息,随后对内核信息进行分析。当需要进行修改系统密码操作时,进入单用户模式,修改root密码。经常强制上下电导致文件系统损坏,当系统无法自动修复成功时,需要手动进行修复,调整drop\_caches内容来手动释放内存等。同时,需要对故障时的现场信息进行收集,如日志文件和设备文件等,以便在后续能够更全面地进行问题根因分析。 - -​因此,熟悉操作系统性能分析工具的使用以及故障修复的操作,是实现完善的IT运维管理的关键。 diff --git a/docs/zh/server/maintenance/overview.md b/docs/zh/server/maintenance/overview.md deleted file mode 100644 index 3637fcb7e..000000000 --- a/docs/zh/server/maintenance/overview.md +++ /dev/null @@ -1,3 +0,0 @@ -# 运维指南 - -本文档提供了openEuler操作系统的运维指南,介绍运维中常见的性能监测工具、信息收集方法、故障应急处理方案以及常用工具等。 diff --git a/docs/zh/server/memory_storage/memory/_toc.yaml b/docs/zh/server/memory_storage/memory/_toc.yaml deleted file mode 100644 index bb19a7ef7..000000000 --- a/docs/zh/server/memory_storage/memory/_toc.yaml +++ /dev/null @@ -1,6 +0,0 @@ -label: 管理内存 -isManual: true -description: 管理内存 -sections: - - label: 管理内存 - href: ./overview.md diff --git a/docs/zh/tools/community_tools/isocut/overview.md b/docs/zh/tools/community_tools/isocut/overview.md deleted file mode 100644 index a59750ba5..000000000 --- a/docs/zh/tools/community_tools/isocut/overview.md +++ /dev/null @@ -1,3 +0,0 @@ -# 裁剪定制工具使用指南 - -本文主要介绍 openEuler 的裁剪定制工具,包含工具的介绍、安装以及使用等内容。 \ No newline at end of file diff --git a/docs/zh/tools/community_tools/migration_tools/migration_tools_user_guide.md b/docs/zh/tools/community_tools/migration_tools/migration_tools_user_guide.md index 804bf5552..ee67d63e4 100644 --- a/docs/zh/tools/community_tools/migration_tools/migration_tools_user_guide.md +++ b/docs/zh/tools/community_tools/migration_tools/migration_tools_user_guide.md @@ -5,11 +5,11 @@ 本文主要介绍服务器迁移软件(以下简称“migration-tools”)的使用方法,帮助用户顺利从原系统(centos7、centos8)迁移到统信服务器操作系统。 migration-tools 工具提供网页界面方式进行操作,以供使用者在图形化界面便捷的进行迁移操作。 -### 部署方式 +## 部署方式 在安装 openeuler 23.09 服务器上部署服务端(server),在需要迁移的 centos7/centos8 服务器上部署客户端(agent)。 -#### 支持迁移的系统 +### 支持迁移的系统 1. 支持将 AMD64 和 ARM64 架构的 CentOS 系列系统迁移到 UOS 系统,迁移前需自行准备目标系统的全量源。 @@ -23,11 +23,11 @@ migration-tools 工具提供网页界面方式进行操作,以供使用者在 |centos 7.0~7.7|UOS 1002a|UOS 1002a(全量源)| |centos 8.0~8.2|UOS 1050a|UOS 1050a(全量源)| -### 使用方法 +## 使用方法 -#### 安装与配置 +### 安装与配置 -##### 安装 migration-tools-server 端 +#### 安装 migration-tools-server 端 - 关闭防火墙。 @@ -83,7 +83,7 @@ migration-tools 工具提供网页界面方式进行操作,以供使用者在 ``` -#### 迁移 openeuler 系统 +### 迁移 openeuler 系统 >**注意:** openeuler 系统目前仅支持单独使用脚本迁移。 @@ -116,9 +116,9 @@ migration-tools 工具提供网页界面方式进行操作,以供使用者在 ![openeuler迁移完成](./figures/openeuler-migration-complete.png) -#### 迁移 UOS 系统 +### 迁移 UOS 系统 -##### 安装 migration-tools-agent 端 +#### 安装 migration-tools-agent 端 在准备迁移的 centos 机器上执行以下步骤: @@ -178,7 +178,7 @@ migration-tools 工具提供网页界面方式进行操作,以供使用者在 ``` -##### UOS系统迁移步骤 +#### UOS系统迁移步骤 - 登录web端 @@ -246,7 +246,7 @@ repo 源配置页面: - 迁移完成后,需手动重启 agent 机器,并验证是否迁移完成。 -###### 验证步骤 +#### 验证步骤 执行以下命令,检查操作系统版本是否已迁移至目标操作系统。 diff --git a/docs/zh/tools/desktop/gnome/gnome.md b/docs/zh/tools/desktop/gnome/gnome.md deleted file mode 100644 index df0034b18..000000000 --- a/docs/zh/tools/desktop/gnome/gnome.md +++ /dev/null @@ -1,3 +0,0 @@ -# Gnome 用户指南 - -本节主要描述 Gnome 桌面环境的安装和使用。 diff --git a/docs/zh/tools/desktop/kiran/kiran.md b/docs/zh/tools/desktop/kiran/kiran.md deleted file mode 100644 index 8a1184aea..000000000 --- a/docs/zh/tools/desktop/kiran/kiran.md +++ /dev/null @@ -1,3 +0,0 @@ -# Kiran 用户指南 - -本节主要描述 Kiran 桌面环境的安装和使用。 diff --git a/docs/zh/tools/desktop/ukui/ukui.md b/docs/zh/tools/desktop/ukui/ukui.md deleted file mode 100644 index 943d35094..000000000 --- a/docs/zh/tools/desktop/ukui/ukui.md +++ /dev/null @@ -1,3 +0,0 @@ -# UKUI 用户指南 - -本节主要描述 UKUI 桌面环境的安装和使用。 diff --git a/docs/zh/tools/devops/_toc.yaml b/docs/zh/tools/devops/_toc.yaml index eb4b0f8b7..d0a0c3562 100644 --- a/docs/zh/tools/devops/_toc.yaml +++ b/docs/zh/tools/devops/_toc.yaml @@ -6,9 +6,6 @@ sections: - label: 包管理 sections: - href: ./pkgship/_toc.yaml - - label: eulermaker + - label: 包构建 sections: - href: ./eulermaker/_toc.yaml - - label: eulerpipeline - sections: - - href: ./eulerpipeline/_toc.yaml \ No newline at end of file diff --git a/docs/zh/tools/devops/eulermaker/_toc.yaml b/docs/zh/tools/devops/eulermaker/_toc.yaml index 862a946ce..bc9801de7 100644 --- a/docs/zh/tools/devops/eulermaker/_toc.yaml +++ b/docs/zh/tools/devops/eulermaker/_toc.yaml @@ -1,6 +1,6 @@ label: EulerMaker isManual: true -description: 统一构建平台实现从源码到二进制软件包与软件仓库的平台服务 +description: 实现从源码到二进制软件包的构建 sections: - label: EulerMaker 快速入门 href: ./eulermaker_user_guide.md diff --git a/docs/zh/tools/devops/patch_tracking/overview.md b/docs/zh/tools/devops/patch_tracking/overview.md deleted file mode 100644 index fe3c8c35f..000000000 --- a/docs/zh/tools/devops/patch_tracking/overview.md +++ /dev/null @@ -1,3 +0,0 @@ -# 工具集用户指南 - -本文主要介绍在openEuler 发行版本过程中使用到的工具集,主要包含工具的介绍,安装以及使用等方面内容。 -- Gitee From da2b890ee48f192aa078f8f6162dfa80cf4f11b1 Mon Sep 17 00:00:00 2001 From: Evawudonger Date: Wed, 25 Jun 2025 11:26:17 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/en/server/_toc.yaml | 8 ++- .../development/application_dev/_toc.yaml | 3 +- .../application_dev/faqs_and_solutions.md | 19 ------ ...n_aggregation_environment_establishment.md | 58 +++++++++--------- docs/en/server/high_availability/ha/_toc.yaml | 11 ++-- docs/en/server/high_availability/ha/ha.md | 3 - .../cpu_optimization/sysboost/_toc.yaml | 2 +- .../sysboost/getting_to_know_sysboost.md | 61 +++++++++++++++++++ docs/zh/server/_toc.yaml | 11 ++-- docs/zh/server/development/ai4c/_toc.yaml | 2 +- docs/zh/server/development/annc/_toc.yaml | 2 +- docs/zh/server/development/unt/_toc.yaml | 2 +- ...n_aggregation_environment_establishment.md | 58 +++++++++--------- docs/zh/server/high_availability/ha/ha.md | 3 - 14 files changed, 142 insertions(+), 101 deletions(-) delete mode 100644 docs/en/server/development/application_dev/faqs_and_solutions.md delete mode 100644 docs/en/server/high_availability/ha/ha.md create mode 100644 docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md delete mode 100644 docs/zh/server/high_availability/ha/ha.md diff --git a/docs/en/server/_toc.yaml b/docs/en/server/_toc.yaml index 6749dd3d8..8a231a5ed 100644 --- a/docs/en/server/_toc.yaml +++ b/docs/en/server/_toc.yaml @@ -32,7 +32,9 @@ sections: - href: upstream: https://gitee.com/openeuler/secGear/blob/master/docs/en/2403_LTS_SP2/_toc.yaml path: ./secgear - - href: ./security/cve_ease/_toc.yaml + - href: + upstream: https://gitee.com/openeuler/cve-ease/blob/master/docs/en/24.03_lts_sp2/_toc.yaml + path: ./cve_ease - href: ./security/cert_signature/_toc.yaml - href: ./security/shangmi/_toc.yaml - href: @@ -72,7 +74,9 @@ sections: - href: ./development/application_dev/_toc.yaml - href: upstream: https://gitee.com/openeuler/compiler-docs/blob/openEuler-24.03-LTS-SP2/docs/en/gcc/_toc.yaml - path: ./compiler + path: ./compiler/gcc + - href: ./development/ai4c/_toc.yaml + - href: ./development/fangtian/_toc.yaml - label: High Availability sections: - href: ./high_availability/ha/_toc.yaml diff --git a/docs/en/server/development/application_dev/_toc.yaml b/docs/en/server/development/application_dev/_toc.yaml index 6a00c41db..acb5816ee 100644 --- a/docs/en/server/development/application_dev/_toc.yaml +++ b/docs/en/server/development/application_dev/_toc.yaml @@ -16,5 +16,4 @@ sections: href: ./using_jdk_for_compilation.md - label: Building an RPM Package href: ./building_an_rpm_package.md - - label: Common Issues and Solutions - href: ./faqs_and_solutions.md + diff --git a/docs/en/server/development/application_dev/faqs_and_solutions.md b/docs/en/server/development/application_dev/faqs_and_solutions.md deleted file mode 100644 index 9a409dd84..000000000 --- a/docs/en/server/development/application_dev/faqs_and_solutions.md +++ /dev/null @@ -1,19 +0,0 @@ -# Common Issues and Solutions - -## Issue 1: Self-compilation of Some Applications Depending on the java-devel Package Fails - -### Symptom - -The self-compilation of some applications that depend on java-devel fails when the rpmbuild command is executed. - -### Cause Analysis - -To provide OpenJDK features that are updated and compatible with Java applications, the openEuler provides OpenJDK of multiple versions, such as OpenJDK 1.8.0 and OpenJDK 11. The compilation of some applications depends on the java-devel package. When the java-devel package is installed, the system installs java-11-openjdk of a later version by default. As a result, the compilation of these applications fails. - -### Solution - -You need to run the following command to install java-1.8.0-openjdk and then run the `rpmbuild` command to perform self-compilation: - -```shell -# yum install java-1.8.0-openjdk -``` diff --git a/docs/en/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md b/docs/en/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md index 42e5933ad..9e37d4df2 100644 --- a/docs/en/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md +++ b/docs/en/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md @@ -1,6 +1,8 @@ -# 1 Hardware Preparation +# libvirt Direct Connection Aggregation Environment Establishment -## Test Mode +## 1 Hardware Preparation + +### Test Mode Prepare two physical machines (VMs have not been tested) that can communicate with each other. @@ -9,31 +11,31 @@ One physical machine functions as the DPU, and the other functions as the host. > [!NOTE]NOTE > In the test mode, network ports are exposed without connection authentication, which is risky and should be used only for internal tests and verification. Do not use this mode in the production environment. -## vsock mode +### vsock mode The DPU and HOST are required. The DPU must be able to provide vsock communication through virtio. This document describes only the test mode usage. -# 2 libvirt offload architecture +## 2 libvirt offload architecture ![arch](./figures/arch.png) -# 3 Environment Setup +## 3 Environment Setup -## 3.1 qtfs File System Deployment +### 3.1 qtfs File System Deployment For details, visit . To establish a qtfs connection, you need to disable the firewall. -## 3.2 Deploying the udsproxyd Service +### 3.2 Deploying the udsproxyd Service -### 3.2.1 Introduction +#### 3.2.1 Introduction udsproxyd is a cross-host Unix domain socket (UDS) proxy service, which needs to be deployed on both the host and DPU. The udsproxyd components on the host and dpu are peers. They implement seamless UDS communication between the host and DPU, which means that if two processes can communicate with each other through UDSs on the same host, they can do the same between the host and DPU. The code of the processes does not need to be modified, only that the client process needs to run with the **LD_PRELOAD=libudsproxy.so** environment variable. As a cross-host Unix socket service, udsproxyd can be used by running with `LD_PRELOAD=libudsproxy.so`. With the support of qtfs, udsproxyd can also be used transparently. You need to configure the allowlist in advance. The specific operations are described later. -### 3.2.2 Deploying udsproxyd +#### 3.2.2 Deploying udsproxyd Build udsproxyd in the dpu-utilities project: @@ -70,13 +72,13 @@ If the qtfs engine service is not started, you can start udsproxyd on the server nohup /usr/bin/udsproxyd 1 192.168.10.11 12121 192.168.10.10 12121 2>&1 & ``` -### 3.2.3 Using udsproxyd +#### 3.2.3 Using udsproxyd -#### 3.2.3.1 Using udsproxyd Independently +##### 3.2.3.1 Using udsproxyd Independently When starting the client process of the Unix socket application that uses the UDS service, add the **LD_PRELOAD=libudsproxy.so** environment variable to intercept the **connect** API of glibc for UDS interconnection. In the libvirt offload scenario, you can copy **libudsproxy.so**, which will be used by the libvirtd service, to the **/usr/lib64** directory in the chroot directory of libvirt. -#### 3.2.3.2 Using the udsproxyd Service Transparently +##### 3.2.3.2 Using the udsproxyd Service Transparently Configure the UDS service allowlist for qtfs. The allowlist is the sock file address bound to the Unix socket server. For example, the files of the Unix socket server created by the libvirt VM are in the **/var/lib/libvirt** directory. In this case, add the directory path to the allowlist in either of the following ways: @@ -121,15 +123,15 @@ The parameter is the index number listed when you query the allowlist. > [!NOTE]NOTE > The allowlist prevents irrelevant Unix sockets from establishing remote connections, causing errors or wasting resources. You are advised to set the allowlist as precisely as possible. For example, in this document, **/var/lib/libvirt** is set in the libvirt scenario. It would be risky to directly add **/var/lib**, **/var**, or the root directory. -## 3.3 rexec Service Deployment +### 3.3 rexec Service Deployment -### 3.3.1 Introduction +#### 3.3.1 Introduction rexec is a remote execution component developed using the C language. It consists of the rexec client and rexec server. The server is a daemon process, and the client is a binary file. After being started, the client establishes a UDS connection with the server using the udsproxyd service, and the server daemon process starts a specified program on the server machine. During libvirt virtualization offload, libvirtd is offloaded to the DPU. When libvirtd needs to start the QEMU process on the HOST, the rexec client is invoked to remotely start the process. -### 3.3.2 Deploying rexec +#### 3.3.2 Deploying rexec -#### 3.3.2.1 Configuring the Environment Variables and Allowlist +##### 3.3.2.1 Configuring the Environment Variables and Allowlist Configure the rexec server allowlist on the host. Put the **whitelist** file in the **/etc/rexec** directory, and change the file permission to read-only. @@ -147,7 +149,7 @@ Before starting the rexec_server service on the server, check whether the **/var mkdir /var/run/rexec ``` -#### 3.3.2.2 Starting the Service +##### 3.3.2.2 Starting the Service You can start the rexec_server service on the server in either of the following ways. @@ -183,9 +185,9 @@ You can start the rexec_server service on the server in either of the following nohup /usr/bin/rexec_server 2>&1 & ``` -## 3.4 libvirt Service Deployment +### 3.4 libvirt Service Deployment -### 3.4.1 Deploying on the HOST +#### 3.4.1 Deploying on the HOST Install the VM runtime and libvirt. (libvirt is installed to create related directories.) @@ -195,9 +197,9 @@ yum install -y qemu libvirt edk2-aarch64 # (required for starting VMs in the Arm Put the VM image on the HOST. The VM image will be mounted to the client through qtfs and shared with libvirt. -### 3.4.2 Deploying on the DPU +#### 3.4.2 Deploying on the DPU -#### 3.4.2.1 Creating the Chroot Environment +##### 3.4.2.1 Creating the Chroot Environment (a) Download the QCOW image from the openEuler official website, for example, openEuler 23.09: . @@ -227,7 +229,7 @@ qemu-nbd -d /dev/nbd0 mount --bind /root/new_root_origin /root/new_root ``` -#### 3.4.2.2 Installing libvirt +##### 3.4.2.2 Installing libvirt Compile the source code with a patch. @@ -266,7 +268,7 @@ meson build --prefix=/usr -Ddriver_remote=enabled -Ddriver_network=enabled -Ddri ninja -C build install ``` -#### 3.4.2.3 Starting the libvirtd Service +##### 3.4.2.3 Starting the libvirtd Service To use libvirt direct connection aggregation, you need to start the libvirtd service in the chroot environment, which requires the libvirtd service outside the chroot environment to be stopped. @@ -309,11 +311,11 @@ qtcfg -z Check whether the allowlist contains **/var/lib/libvirt**. -## 3.5 VM Startup +### 3.5 VM Startup After the service is deployed, you can manage the VM life cycle from the DPU. -### 3.5.1 Defining the VM +#### 3.5.1 Defining the VM (a) Place the VM boot image in a directory on the HOST, for example: @@ -337,17 +339,17 @@ mount -t qtfs /home/VMs /home/VMs virsh define xxx.xml ``` -### 3.5.2 Starting the VM +#### 3.5.2 Starting the VM ```bash virsh start domain ``` -# 4 Environment Reset +## 4 Environment Reset Some libvirt directories are shared between the DPU and the HOST. Therefore, you need to unmount these directories before uninstalling the environment. Generally, stop the libvirtd and virtlogd processes and run the **virt_umount.sh** script. If a VM is running on the HOST, stop the VM before unmounting the directories. -# 5 Common Errors +## 5 Common Errors 1. libvirt compilation failure: Check whether the dependency packages are installed. If an external directory or HOST directory is mounted to the chroot environment, the compilation may fail. In this case, unmount the directory first. diff --git a/docs/en/server/high_availability/ha/_toc.yaml b/docs/en/server/high_availability/ha/_toc.yaml index b6ec487b4..fec7afaaf 100644 --- a/docs/en/server/high_availability/ha/_toc.yaml +++ b/docs/en/server/high_availability/ha/_toc.yaml @@ -2,10 +2,7 @@ label: HA User Guide isManual: true description: HA cluster installation and usage sections: - - label: - href: ./ha.md - sections: - - label: HA Installation and Deployment - href: ./ha_installation_and_deployment.md - - label: HA Usage Examples - href: ./ha_usecase_examples.md + - label: HA Installation and Deployment + href: ./ha_installation_and_deployment.md + - label: HA Usage Examples + href: ./ha_usecase_examples.md diff --git a/docs/en/server/high_availability/ha/ha.md b/docs/en/server/high_availability/ha/ha.md deleted file mode 100644 index a21b5471b..000000000 --- a/docs/en/server/high_availability/ha/ha.md +++ /dev/null @@ -1,3 +0,0 @@ -# HA User Guide - -This chapter describes how to install and use HA. diff --git a/docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml b/docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml index b690d3807..1afb39b2a 100644 --- a/docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml +++ b/docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml @@ -6,7 +6,7 @@ sections: href: ./sysboost.md sections: - label: Getting to Know sysBoost - href: ./getting_to_know_sysBoost.md + href: ./getting_to_know_sysboost.md - label: Installation and Deployment href: ./installation_and_deployment.md - label: Usage Instructions diff --git a/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md b/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md new file mode 100644 index 000000000..6666c961d --- /dev/null +++ b/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md @@ -0,0 +1,61 @@ +# Getting to Know sysBoost + +## Introduction + +sysBoost reorders the code of executable files and dynamic libraries online to adapt the code for the CPU microarchitecture of the operating environment, boosting program performance. + +## Background + +- Large-scale applications use a large number of third-party or self-developed dynamic libraries. A large number of PLT jumps occur during function invoking. As a result, the instructions per cycle (IPC) decreases. + +- Assembly code is large in size and occupies a large amount of memory, resulting in a high iTLB miss rate. Hotspot code segments are scattered. As a result, the I-cache miss rate is high, affecting the CPU pipeline efficiency. + +- Application developers are unfamiliar with the OS and CPU microarchitecture, resulting in high IPC performance optimization costs. + +## sysBoost Design + +### Key technologies + +- Dynamic library merging: Scattered code segments and data segments are merged when the dynamic loader loads dynamic libraries. Huge page memory is used to improve the iTLB hit ratio. + +- PLT jump elimination: When the application code calls a dynamic library function, the execution is redirected to the PLT and then to the actual function. Eliminating PLT jump can improve the IPC. + +- Online reordering of hotspot code segments: By default, code is arranged by dynamic library. The online reordering technology can reorder hotspot code by segment. + +- exec native huge page mechanism: The user-mode huge page mechanism requires specific application configuration and recompilation. The exec native huge page mechanism directly uses huge page memory when the kernel loads the ELF file,without the need for modifying applications. + +### Architecture + +**Figure 1** sysBoost architecture + +![](./figures/architecture.png) + +## sysBoost Features + +- Full static merging: Applications and their dependent dynamic libraries are merged into one binary file, and segment-level reordering is performed. Multiple discrete code segments or data segments are merged into one to improve application performance. + +- Automatic binary file optimization: The sysBoost daemon reads the configuration file to obtain the binary files to be optimized and the corresponding optimization methods, optimizes the binary files based on user requirements, and stores the optimized binary files in RTO files. + +- Huge page preloading of binary code segments/data segments: When the user-mode page table is mapped to the physical memory, huge page (2 MB) mapping can improve performance. However, openEuler does not support huge page mapping of file pages. sysBoost provides the huge page pre-loading function. After binary optimization is complete, sysBoost immediately loads the content to the kernel as a huge page. When an application is started, sysBoost maps the pre-loaded content to the user-mode page table in batches to reduce page faults and memory access delay of the application, thereby improving the application startup speed and running efficiency. + +- Binary exception monitoring: If a bug occurs in the RTO binary file generated by sysBoost, the application may crash. To avoid repeated application starts and crashes and prevent the fault from spreading, sysBoost monitors the processes that load the RTO binary files. If such a process crashes, sysBoost rolls back the optimization by deleting the RTO file and the flag on the original application file. In addition, sysBoost renames the configuration file to prevent optimization from being applied again after the sysBoost service is restarted. + +## Benefits + +### Scenario 1 + +In the Bash test of UnixBench, some common commands and scripts are executed, such as `ls`, `grep`, and `awk`. These commands and scripts usually invoke some system libraries, such as **libc** and **libpthread**. These library files usually need to be dynamically linked, which increases the program startup time and delay. By using the binary file merging technology, these library files can be merged into an executable file, significantly improving the Bash performance and increasing the UnixBench score. + +### Scenario 2 + +The dynamic assembly design of some applications uses a large number of dynamic libraries, which brings the following problems: + +- Indirect function jump and scattered code segments affect CPU execution efficiency. +- The parsing of excessive dynamic library symbols slows down program startup. +- Profile-guided optimization based on a specific service model cannot adapt to different service models. + +Using sysBoost to start large processes during service deployment can effectively solve the preceding problems. + +- The exec huge page mechanism allows the loaded large processes to store code segments and data segments in memory huge pages, reducing the TLB miss rate. +- A large process contains all dynamic library code and application code, eliminating indirect function jumps. +- Service changes are intelligently identified online to regenerate large processes based on appropriate hotspot models. diff --git a/docs/zh/server/_toc.yaml b/docs/zh/server/_toc.yaml index 93b6f7eef..7c8474b7e 100644 --- a/docs/zh/server/_toc.yaml +++ b/docs/zh/server/_toc.yaml @@ -32,7 +32,9 @@ sections: - href: upstream: https://gitee.com/openeuler/secGear/blob/master/docs/zh/2403_LTS_SP2/_toc.yaml path: ./secgear - - href: ./security/cve_ease/_toc.yaml + - href: + upstream: https://gitee.com/openeuler/cve-ease/blob/master/docs/zh/24.03_lts_sp2/_toc.yaml + path: ./cve_ease - href: ./security/cert_signature/_toc.yaml - href: ./security/shangmi/_toc.yaml - href: @@ -44,7 +46,6 @@ sections: - href: ./memory_storage/etmem/_toc.yaml - href: ./memory_storage/gmem/_toc.yaml - href: ./memory_storage/hsak/_toc.yaml - - href: ./memory_storage/memory/_toc.yaml - label: 网络 sections: - href: ./network/network_config/_toc.yaml @@ -73,13 +74,13 @@ sections: - href: ./development/application_dev/_toc.yaml - href: upstream: https://gitee.com/openeuler/compiler-docs/blob/openEuler-24.03-LTS-SP2/docs/zh/gcc/_toc.yaml - path: ./compiler + path: ./compiler/gcc - href: upstream: https://gitee.com/openeuler/compiler-docs/blob/openEuler-24.03-LTS-SP2/docs/zh/llvm/_toc.yaml - path: ./compiler + path: ./compiler/llvm - href: upstream: https://gitee.com/openeuler/compiler-docs/blob/openEuler-24.03-LTS-SP2/docs/zh/bisheng_autotuner/_toc.yaml - path: ./compiler + path: ./compiler/bisheng_autotuner - href: ./development/ai4c/_toc.yaml - href: ./development/fangtian/_toc.yaml - href: ./development/annc/_toc.yaml diff --git a/docs/zh/server/development/ai4c/_toc.yaml b/docs/zh/server/development/ai4c/_toc.yaml index 50196b934..1c13b5053 100644 --- a/docs/zh/server/development/ai4c/_toc.yaml +++ b/docs/zh/server/development/ai4c/_toc.yaml @@ -1,6 +1,6 @@ label: AI4C使用手册 isManual: true -description: AI4C 代表 AI 辅助编译器的套件,是一个使编译器能够集成机器学习驱动编译优化的框架。 +description: AI4C 代表 AI 辅助编译器的套件,是一个使编译器能够集成机器学习驱动编译优化的框架 sections: - label: AI4C使用手册 href: ./ai4c_user_manual.md diff --git a/docs/zh/server/development/annc/_toc.yaml b/docs/zh/server/development/annc/_toc.yaml index ab3b9e9ed..adefebc6c 100644 --- a/docs/zh/server/development/annc/_toc.yaml +++ b/docs/zh/server/development/annc/_toc.yaml @@ -1,6 +1,6 @@ label: ANNC使用手册 isManual: true -description: ANNC(Accelerated Neural Network Compiler)是专注于加速神经网络计算的编译器,聚焦于通过计算图优化,高性能融合算子生成和对接技术以及高效代码生成和优化能力,加速推荐和大模型的推理性能,支持主流开源推理框架接入。 +description: 专注于加速神经网络计算的编译器 sections: - label: ANNC使用手册 href: ./annc_user_manual.md diff --git a/docs/zh/server/development/unt/_toc.yaml b/docs/zh/server/development/unt/_toc.yaml index 58a1be4c4..fb41d4159 100644 --- a/docs/zh/server/development/unt/_toc.yaml +++ b/docs/zh/server/development/unt/_toc.yaml @@ -1,6 +1,6 @@ label: UNT使用手册 isManual: true -description: UNT(UDF Native Tool)是一个UDF自动native化工具,聚焦于将用户jar包中的UDF字节码自动转换为native二进制并自动化替代原始UDF运行于Flink等大数据引擎中,并在此基础上通过native侧优化达到加速目的 +description: UDF 自动 native 化工具 sections: - label: UNT使用手册 href: ./unt_guide.md diff --git a/docs/zh/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md b/docs/zh/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md index ebc598f10..8178f8956 100644 --- a/docs/zh/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md +++ b/docs/zh/server/diversified_computing/dpu_offload/libvirt_direct_connection_aggregation_environment_establishment.md @@ -1,6 +1,8 @@ -# **1** 硬件准备 +# 直连聚合环境搭建 -## 测试模式 +## **1** 硬件准备 + +### 测试模式 需准备2台物理机(虚拟机当前未试过),网络互通。 @@ -9,31 +11,31 @@ >![](./public_sys-resources/icon-note.gif) **说明:** >测试模式因为会暴露网络端口且不做连接认证,存在网络安全风险,仅能用于内部测试验证,不要用于实际生产环境。 -## vsock模式 +### vsock模式 需要DPU加HOST,且DPU能支持通过virtio提供vsock通信方式。 目前还未基于真实的支持DPU vsock的环境调试过,本文档当前仅描述基于测试模式的方法,下面的内容依然默认使用测试模式。 -# **2** libvirt卸载架构图 +## **2** libvirt卸载架构图 ![arch](./figures/arch.png) -# **3** 环境搭建 +## **3** 环境搭建 -## **3.1** QTFS文件系统部署 +### **3.1** QTFS文件系统部署 可参考qtfs主页: QTFS建联需要关闭防火墙。 -## **3.2** UDSPROXYD服务部署 +### **3.2** UDSPROXYD服务部署 -### 3.2.1 简介 +#### 3.2.1 简介 udsproxyd是一个跨主机的unix domain socket代理服务,需要分别部署在host和dpu上,在host和dpu上的udsproxyd组件是对等的关系,可以实现分布在host与dpu上的2个进程之间的uds通信,通信进程是无感的,也就是说如果这两个进程在同一主机内通过uds正常通信的功能,拉远到host和dpu之间也可以,不需要做代码适配,只需要作为client的一端加一个环境变量`LD_PRELOAD=libudsproxy.so`。udsproxyd作为一个跨主机的unix socket服务,本身可以用LD_PRELOAD=libudsproxy.so的方式对接使用,在qtfs的支持下也可以无感应用,这需要提前做好白名单相关配置,具体有两种方式,将在后面详述。 -### 3.2.2 部署方式 +#### 3.2.2 部署方式 首先,在dpu-utilities工程内编译udsproxyd: @@ -85,13 +87,13 @@ nohup /usr/bin/udsproxyd 1 192.168.10.11 12121 192.168.10.10 12121 2>&1 & ``` -### 3.2.3 应用方式 +#### 3.2.3 应用方式 -#### 3.2.3.1 独立使用udsproxyd服务 +##### 3.2.3.1 独立使用udsproxyd服务 需要在使用uds服务的unix socket应用程序的client端进程启动时添加LD_PRELOAD=libudsproxy.so环境变量,以接管glibc的connect api进行uds对接,在libvirt卸载场景中可以将libudsproxy.so拷贝到libvirt的chroot目录下的/usr/lib64中以提供给libvirtd服务使用,这一步在后面介绍。 -#### 3.2.3.2 无感使用udsproxyd服务 +##### 3.2.3.2 无感使用udsproxyd服务 首先为qtfs配置uds服务的白名单,这里说的白名单是unix socket的server端bind的sock文件地址,例如libvirt的虚拟机建立的unix socket的服务端文件地址都在/var/lib/libvirt下,则我们需要增加一条白名单路径为/var/lib/libvirt/,提供两种方式供选择: @@ -146,15 +148,15 @@ b) 通过配置文件增加,这需要在qtfs或qtfs_server内核模块加载 >![](./public_sys-resources/icon-note.gif) **说明:** >白名单是为了防止不相干的unix socket链接也进行远程连接产生错误,或者浪费不必要的资源,所以白名单尽量设置得精确一些,比如本文中针对libvirt场景设置为/var/lib/libvirt/比较好,而直接将/var/lib/或/var/或直接将根目录加入的做法是有较大风险的。 -## **3.3** REXEC服务部署 +### **3.3** REXEC服务部署 -### 3.3.1 简介 +#### 3.3.1 简介 rexec是一个用c语言开发的远程执行组件,分为rexec client和rexec server。server端为一个常驻服务进程,client端为一个二进制文件,client端被执行后会基于udsproxyd服务与server端建立uds连接,并由server常驻进程在server端拉起指定程序。在libvirt虚拟化卸载中,libvirtd卸载到DPU上,当它需要在HOST拉起虚拟机qemu进程时调起rexec client进行远程拉起。 -### 3.3.2 部署方法 +#### 3.3.2 部署方法 -#### 3.3.2.1 配置环境变量与白名单 +##### 3.3.2.1 配置环境变量与白名单 在host侧配置rexec server的白名单,将文件whitelist放置在/etc/rexec/目录下并修改权限为只读: @@ -176,7 +178,7 @@ mkdir /var/run/rexec ``` -#### 3.3.2.2 服务方式 +##### 3.3.2.2 服务方式 server端可以通过两种方式拉起rexec_server服务。 @@ -220,9 +222,9 @@ nohup /usr/bin/rexec_server 2>&1 & ``` -## **3.4** libvirt服务部署 +### **3.4** libvirt服务部署 -### 3.4.1 HOST侧部署 +#### 3.4.1 HOST侧部署 HOST无需额外部署,只需要安装虚拟机启动环境以及libvirt即可(安装libvirt主要是为了创建对应的目录): @@ -234,9 +236,9 @@ yum install -y qemu libvirt edk2-aarch64 #(arm环境虚拟机启动需要) HOST需要放置虚拟机镜像,后面通过qtfs挂载到client端共享给libvirt。 -### 3.4.2 DPU侧部署 +#### 3.4.2 DPU侧部署 -#### 3.4.2.1 创建chroot环境 +##### 3.4.2.1 创建chroot环境 a) 从openEuler官网下载qcow镜像,例如23.09版本。 @@ -270,7 +272,7 @@ mount --bind /root/new_root_origin /root/new_root ``` -#### 3.4.2.2 安装libvirt +##### 3.4.2.2 安装libvirt 此处介绍patch方式源码编译,如果计算提供rpm包则参考计算提供的安装方法。 @@ -317,7 +319,7 @@ ninja -C build install ``` -#### 3.4.2.3 启动libvirtd服务 +##### 3.4.2.3 启动libvirtd服务 libvirt直连聚合卸载模式,需要从chroot内启动libvirtd服务,首先需要把chroot之外的libvirtd服务停掉。 @@ -368,11 +370,11 @@ qtcfg -z 查看列举出来的白名单是否包含/var/lib/libvirt/。 -## **3.5** 拉起虚拟机 +### **3.5** 拉起虚拟机 服务部署完成后,即可以在DPU侧进行虚拟机的生命周期管理。 -### 3.5.1 虚拟机define +#### 3.5.1 虚拟机define a) 将虚拟机启动镜像放置在HOST侧某目录,例如: @@ -402,7 +404,7 @@ virsh define xxx.xml ``` -### 3.5.2 虚拟机start +#### 3.5.2 虚拟机start ```bash @@ -410,11 +412,11 @@ virsh start domain ``` -# **4** 环境重置 +## **4** 环境重置 由于libvirt在DPU和HOST之间共享了部分目录,卸载环境时需要先将这部分目录全部umount。一般先停掉libvirtd和virtlogd进程,调用virt_umount脚本即可。如果HOST还有虚拟机运行,也需要先杀掉才能umount。 -# **5** 部分问题定位思路 +## **5** 部分问题定位思路 1、 libvirt编译失败:检查依赖包安装是否完全,如果chroot挂载了外部目录或者host目录,也可能导致编译失败,需先解除挂载。 diff --git a/docs/zh/server/high_availability/ha/ha.md b/docs/zh/server/high_availability/ha/ha.md deleted file mode 100644 index d50a90057..000000000 --- a/docs/zh/server/high_availability/ha/ha.md +++ /dev/null @@ -1,3 +0,0 @@ -# HA 用户指南 - -本节主要描述HA的安装和使用。 -- Gitee