Sakin tsarin aiki ToaruOS 2.1

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ToaruOS 2.1, написанной с нуля ΠΈ поставляСмой со своим ядром, Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠΌ, стандартной Π‘ΠΈ-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ, ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ пространства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ графичСским интСрфСйсом с ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΌ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ развивался Π² Иллинойсском унивСрситСтС ΠΊΠ°ΠΊ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ Ρ€Π°Π±ΠΎΡ‚Π° Π² области создания Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹Ρ… графичСских интСрфСйсов, Π½ΠΎ Π·Π°Ρ‚Π΅ΠΌ трансформировался Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° языкС Π‘ΠΈ ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ BSD. Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½ live-ΠΎΠ±Ρ€Π°Π·, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 14.4 ΠœΠ‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² QEMU, VMware ΠΈΠ»ΠΈ VirtualBox.

Sakin tsarin aiki ToaruOS 2.1

ToaruOS ya dogara ne akan kernel wanda ke amfani da tsarin gine-gine na zamani wanda ya haΙ—u da tsarin monolithic da kayan aiki don amfani da na'urori masu Ι—aukar nauyi, waΙ—anda ke samar da yawancin direbobin na'ura, kamar direbobin faifai (PATA da ATAPI), EXT2 da ISO9660 tsarin fayil, framebuffer. , keyboards, mice , katunan cibiyar sadarwa (AMD PCnet FAST, Realtek RTL8139 da Intel PRO/1000), kwakwalwan sauti (Intel AC'97), da kuma VirtualBox add-ons don tsarin baΖ™i. Kwayar tana goyan bayan zaren Unix, TTY, tsarin fayil mai kama-da-wane, tsarin fayil na pseudo / proc, multithreading, IPC, ramdisk, ptrace, Ζ™waΖ™walwar da aka raba, multitasking da sauran daidaitattun fasalulluka.

CистСма снабТСна ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΌ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ динамичСски связываСмыС исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ELF, ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ, графичСский стСк, ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Python 3 ΠΈ GCC.Π’ качСствС Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы примСняСтся ext2. Π—Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ BIOS ΠΈ EFI. Π‘Π΅Ρ‚Π΅Π²ΠΎΠΉ стСк позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ API сокСтов Π² стилС BSD-систСм ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ сСтСвыС интСрфСйсы, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ loopback.

Из собствСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ выдСляСтся ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ Π½Π° Vi Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° Bim, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ послСдниС нСсколько Π»Π΅Ρ‚ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ спСцифичных для ToaruOS ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€, эмулятор Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, графичСская панСль с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ², ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (PNG, JPEG) ΠΈ TrueType-ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ². Для ToaruOS Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠ°ΠΊ Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs ΠΈ Ρ‚.ΠΏ.

Har ila yau, aikin yana haΙ“aka harshensa mai Ζ™arfi na shirye-shirye, Kuroko, wanda aka tsara don maye gurbin Python lokacin haΙ“aka kayan aiki da aikace-aikacen al'ada na tsarin. Harshen yana tunawa da Python a cikin jumla (wanda aka sanya shi azaman gajeriyar yare na Python tare da bayyanannen ma'anar masu canji) kuma yana da ingantaccen aiwatarwa. Ana tallafawa tattarawa da fassarar bytecode. Mai fassarar bytecode yana ba da mai tara shara kuma yana tallafawa multithreading ba tare da amfani da kulle duniya ba. Ana iya haΙ—a mai tarawa da mai fassara a cikin hanyar Ζ™aramin Ι—akin karatu (~ 500KB), haΙ—e tare da wasu shirye-shirye da kuma zazzagewa ta hanyar C API. Baya ga ToaruOS, ana iya amfani da yaren akan Linux, macOS, Windows kuma ana gudanar da su a cikin masu binciken da ke tallafawa WebAssembly.

A cikin sabon saki:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ AArch64 (ARMv8), Π² Ρ‚ΠΎΠΌ числС с ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ использования ToaruOS Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Raspberry Pi 400 ΠΈ Π² эмуляторС QEMU.
  • ΠŸΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° сигналов процСссам Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π²Ρ‹Π·ΠΎΠ²Ρ‹ sigaction, sigprocmask, sigwait ΠΈ sigsuspend.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ систСмный Π²Ρ‹Π·ΠΎΠ² munmap.
  • Π’ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ эффСкт размытия ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΎΠΊΠ½Π°.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° отрисовка Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° отлоТСнная отрисовка ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ кэш Π³Π»ΠΈΡ„ΠΎΠ² для ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² TrueType.
  • Π Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ возмоТности ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ для установки часов, Π² Ρ‚ΠΎΠΌ числС Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ систСмный Π²Ρ‹Π·ΠΎΠ² settimeofday ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ возмоТности ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ date.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ сСтСвой стСк. Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ ifconfig Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° установки адрСсов IPv4 ΠΈ настроСк ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° сокСтов ICMP. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ recvfrom для сокСтов UDP ΠΈ ICMP.
  • Π’ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с USB-ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°ΠΌΠΈ.
  • Π’ контСкстноС мСню Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΡƒΠ½ΠΊΡ‚ для удалСния Ρ„Π°ΠΉΠ»ΠΎΠ².
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² Π² систСмном ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° grep с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ps (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ столбцы).

Sakin tsarin aiki ToaruOS 2.1


source: budenet.ru

Add a comment