Huawei Linux-ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ , ΠΊΠΎΠ΅ΡΠΎ ΡΡΠ°Π½Π° ΠΏΡΡΠ²ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ΅Π· Π΄ΡΠ»Π³ΠΎΡΡΠΎΡΠ΅Π½ ΡΠΈΠΊΡΠ» Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° (LTS). ΠΠ°ΠΊΠ΅ΡΠ½ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π·Π° openEuler 20.03 ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΡΡΠ½Π°ΡΠΈ Π΄ΠΎ 31 ΠΌΠ°ΡΡ 2024 Π³. Π₯ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΎΠ½Π½ΠΈ ISO ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ( ΠΈ ) Π·Π° Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΎ ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ ΠΎΡ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ. ΠΠ·Ρ ΠΎΠ΄Π½ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²Π΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π² ΡΡΠ»ΡΠ³Π°ΡΠ° Gitee.
openEuler ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π°Π²Π° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈΡΠ΅ Π½Π° ΡΡΡΠ³ΠΎΠ²ΡΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ , ΠΊΠΎΠ΅ΡΠΎ Π΅ ΡΠ°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ (fork) Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ° CentOS ΠΈ Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΡΡΠ²ΡΡΠΈ Ρ ARM64 ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ. ΠΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° Π½Π° EulerOS, ΡΠ° ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ ΠΎΡ ΠΠΈΠ½ΠΈΡΡΠ΅ΡΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΎΠ±ΡΠ΅ΡΡΠ²Π΅Π½Π°ΡΠ° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ Π½Π° ΠΠΈΡΠ°ΠΉΡΠΊΠ°ΡΠ° Π½Π°ΡΠΎΠ΄Π½Π° ΡΠ΅ΠΏΡΠ±Π»ΠΈΠΊΠ° ΠΈ ΡΠ° ΠΏΡΠΈΠ·Π½Π°ΡΠΈ Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΈ Ρ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° Π½Π° CC EAL4+ (ΠΠ΅ΡΠΌΠ°Π½ΠΈΡ), NIST CAVP (Π‘ΠΠ©) ΠΈ CC EAL2+ (Π‘ΠΠ©). EulerOS Π΅Π΄Π½Π° ΠΎΡ ΠΏΠ΅ΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ (EulerOS, macOS, Solaris, HP-UX ΠΈ IBM AIX) ΠΈ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π°ΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ Linux, ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Π½ ΠΎΡ ΠΊΠΎΠΌΠΈΡΠΈΡΡΠ° Opengroup Π·Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ° .
Π Π°Π·Π»ΠΈΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ openEuler ΠΈ CentOS ΡΠ° Π΄ΠΎΡΡΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΈ Π½Π΅ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Ρ ΡΠ°ΠΌΠΎ Π΄ΠΎ ΡΠ΅Π±ΡΠ°Π½Π΄ΠΈΡΠ°Π½Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π² openEuler ΡΡΡΡΠ΅Π²ΠΈΠ½Π° Linux 4.19, systemd 243, bash 5.0 ΠΈ
Π Π°Π±ΠΎΡΠ½Π° ΡΡΠ΅Π΄Π°, Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° GNOME 3.30. ΠΡΠ²Π΅Π΄Π΅Π½ΠΈ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ARM64, Π½ΡΠΊΠΎΠΈ ΠΎΡ ΠΊΠΎΠΈΡΠΎ Π²Π΅ΡΠ΅ ΡΠ° ΠΌΠΈΠ³ΡΠΈΡΠ°Π½ΠΈ ΠΊΡΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π°Π·ΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ. Linux, GCC, OpenJDK ΠΈ Docker.
Π‘ΡΠ΅Π΄ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π° Π½Π° openEuler:
- Π€ΠΎΠΊΡΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠ΅ Π²ΡΡΡ Ρ ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΡΠ΄ΡΠ΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈ Π²ΠΈΡΠΎΠΊΠ° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎΡΡ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π·Π°ΡΠ²ΠΊΠΈ. ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈΡ ΠΊΠ΅Ρ Π½Π°ΠΏΡΠ°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π΅Π½ΡΠΆΠ½ΠΈΡΠ΅ Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π±ΡΠΎΡ Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π² Nginx Ρ 15%.
- ΠΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° , ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΈ ΡΡΠΊΠΎΡΠΈΡΠ΅Π»ΠΈ Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ (, , ΠΈ Ρ.Π½.) ΠΎΡ 10% Π΄ΠΎ 100%.
- ΠΠΏΡΠΎΡΡΠ΅Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ , ΠΌΡΠ΅ΠΆΠΎΠ² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ (Lightweight Container Runtime Π΅ OCI ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌ, Π½ΠΎ Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΡ runc Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° gRPC). ΠΠΎΠ³Π°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π»Π΅ΠΊΠΈ iSulad ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° Π΅ Π΄ΠΎ 35% ΠΏΠΎ-Π±ΡΡΠ·ΠΎ ΠΈ ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΠ°ΠΌΠ΅Ρ Π΅ Π½Π°ΠΌΠ°Π»Π΅Π½Π° Ρ Π΄ΠΎ 68%.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π½Π° OpenJDK, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠ°ΡΠ° 20% ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΏΠΎΡΠ°Π΄ΠΈ Π½Π°Π΄ΡΡΡΠΎΠ΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅.
- Π‘ΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ , ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°. Π‘ΠΏΠΎΡΠ΅Π΄ ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅ Π½Π° Huawei, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΡ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠ° ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Ρ Π΄ΠΎ 30%.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ Kunpeng ΠΈ x86 (Π² Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ΅ ΠΎΡΠ°ΠΊΠ²Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ).
Huawei ΡΡΡΠΎ ΠΎΠ±ΡΠ²ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΠΈΡΠΈ ΠΊΠΎΠΌΠ΅ΡΡΠΈΠ°Π»Π½ΠΈ ΠΈΠ·Π΄Π°Π½ΠΈΡ Π½Π° openEuler - Kylin Server OS, iSoft Server OS, deepinEuler ΠΈ EulixOS Server, ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ ΠΎΡ ΡΡΠ΅ΡΠΈ ΡΡΡΠ°Π½ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ Kylinsoft, iSoft, Uniontech ΠΈ ISCAS (ΠΠ½ΡΡΠΈΡΡΡ Π·Π° ΡΠΎΡΡΡΠ΅Ρ Π½Π° ΠΠΈΡΠ°ΠΉΡΠΊΠ°ΡΠ° Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΡ Π½Π° Π½Π°ΡΠΊΠΈΡΠ΅), ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΠΈΡ Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°ΠΉΠΊΠΈ openEuler. Huawei ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Ρ openEuler ΠΊΠ°ΡΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½, ΡΡΠ²ΠΌΠ΅ΡΡΠ΅Π½ ΠΏΡΠΎΠ΅ΠΊΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½ Ρ ΡΡΠ°ΡΡΠΈΠ΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°. Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡΡ ΠΊΠΎΠΌΠΈΡΠ΅Ρ, ΠΊΠΎΠΌΠΈΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΈΡΡ ΡΠ΅ΠΊΡΠ΅ΡΠ°ΡΠΈΠ°Ρ, ΠΊΠΎΠΈΡΠΎ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Ρ openEuler, Π²Π΅ΡΠ΅ ΡΠ° Π·Π°ΠΏΠΎΡΠ½Π°Π»ΠΈ ΡΠ°Π±ΠΎΡΠ°.
ΠΠ±ΡΠ½ΠΎΡΡΡΠ° ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ ΡΡΠ»ΡΠ³ΠΈ Π·Π° ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅, ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°. ΠΡΠ΅Π΄Π²ΠΈΠΆΠ΄Π° ΡΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΡΡΠ° Π½Π° LTS Π΄Π° ΡΠ΅ ΠΏΡΡΠΊΠ°Ρ Π²Π΅Π΄Π½ΡΠΆ Π½Π° Π²ΡΠ΅ΠΊΠΈ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ - Π²Π΅Π΄Π½ΡΠΆ Π½Π° Π²ΡΠ΅ΠΊΠΈ ΡΠ΅ΡΡ ΠΌΠ΅ΡΠ΅ΡΠ°. ΠΡΠΎΠ΅ΠΊΡΡΡ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎΠ΅ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½Ρ Π΄Π° ΠΏΡΠΎΠΊΠ°ΡΠ° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΏΡΡΠ²ΠΎ Π² Upstream ΠΈ Π΄Π° Π²ΡΡΠ½Π΅ Π²ΡΠΈΡΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
