FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.
K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.
Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.
Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.
Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.
XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).
Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
read(3, "\0016K\0C\0\0\0\0\0\0\0\7\0\0\0\367\377\0\0003\0030\0\2\0\7\0\7\0\v\0", 32) = 32
read(3, "\2\0\0\0\233\0t\0\0\0\377\0\0\0\27\0\0\0\0\0\v\0\2\0\0\0\0\0", 28) = 28
read(3, "\321\0\0\0\322\0\0\0\275\0\0\0\323\0\0\0@\0\0\0\324\0\0\0\276\0\0\0N\7\0\0"..., 184) = 184
readv(3, [{"-misc-fixed-bold-r-normal--13-12"..., 54}, {"\17\0", 2}], 2) = 56
read(3, "\1\0K\0\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 32) = 32
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 28) = 28
writev(3, [{"2\0\20\0\1\0006\0", 8}, {"-misc-fixed-bold-r-normal--13-12"..., 54}, {"\0\0", 2}], 3) = 64
read(3, 0x7ffffb640f40, 32) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, -1) = 1
read(3, "\0016L\0C\0\0\0\0\0\0\0\7\0\0\0\367\377\0\0003\0030\0\2\0\7\0\7\0\v\0", 32) = 32
read(3, "\2\0\0\0\233\0t\0\0\0\377\0\0\0\27\0\0\0\0\0\v\0\2\0\0\0\0\0", 28) = 28
read(3, "\321\0\0\0\322\0\0\0\275\0\0\0\323\0\0\0@\0\0\0\324\0\0\0\276\0\0\0N\7\0\0"..., 184) = 184
readv(3, [{"-misc-fixed-bold-r-normal--13-12"..., 54}, {"\17\0", 2}], 2) = 56
read(3, "\1\0L\0\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 32) = 32
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 28) = 28
writev(3, [{"2\0\22\0\1\0=\0", 8}, {"-misc-fixed-medium-r-normal--12-"..., 61}, {"\0\0\0", 3}], 3) = 72
read(3, 0x7ffffb640f40, 32) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, -1) = 1
read(3, "\1=M\0I\0\0\0\0\0\r\0\r\0\v\0\2\0\r\4\0\0\0\0\0\0\r\0\r\0\v\0", 32) = 32
read(3, "\2\0\r\4\377\377\377\377!\0~\0!!\31\0\0!t\0\v\0\1\0\0\0\0\0", 28) = 28
read(3, "\275\0\0\0\316\1\0\0@\0\0\0\317\1\0\0\276\0\0\0001\1\0\0\277\0\0\0002\1\0\0"..., 200) = 200
readv(3, [{"-misc-fixed-medium-r-normal--12-"..., 61}, {"\0\0\0", 3}], 2) = 64
read(3, "\1\0M\0\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 32) = 32
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 28) = 28
writev(3, [{"2\0\22\0\1\0=\0", 8}, {"-misc-fixed-medium-r-normal--12-"..., 61}, {"\0\0\0", 3}], 3) = 72
read(3, 0x7ffffb640f40, 32) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, -1) = 1atd. Vždycky to čeká na poll(). Než se spustí (skoro 6 sekund), tak to docela kotlí CPU. Verze 1.0.1 a 1.0.2. Tyhle X aplikace jinak nepoužívám a u ničeho jinýho se mi nic takovýho nestává, tak nevím co s tím...
Nejprve ze souboru s fd = 3 úspěšně čteš, pak do něj úspěšně zapíšeš, ale poté se čtení nepodaří, tak se čeká funkcí poll až z něho zase budeš moci číst. Podívej se tedy jaký soubor otevírá fce open s fd = 3 a třeba se dozvíš proč k němu nejde přistupovat bez těch šílených prodlev.
$ strace xcalc 2>&1 | egrep -e ^open'\(.* = 3' -e ^close'\(3'
open("/etc/ld.so.cache", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXaw.so.7", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXmu.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXt.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libX11.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libSM.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libICE.so.6", O_RDONLY) = 3
close(3) = 0
open("/lib/libm.so.6", O_RDONLY) = 3
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXext.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXpm.so.4", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXau.so.6", O_RDONLY) = 3
close(3) = 0
open("/usr/lib/libXdmcp.so.6", O_RDONLY) = 3
close(3) = 0
open("/lib/libdl.so.2", O_RDONLY) = 3
close(3) = 0
open("/proc/meminfo", O_RDONLY) = 3
close(3) = 0a teprve potom to začne.
Nezapomeň grepovat i funkci connect, visí Ti to totiž nejspíš na soketu v /tmp s fd = 3.
connect(3, {sa_family=AF_FILE, path="/tmp/.X11-unix/X0"}, 19) = 0# ls -lF /tmp/.X11-unix/X0 srwxrwxrwx 1 root root 0 2007-09-07 14:08 /tmp/.X11-unix/X0=Fakt nevím...
A víš, která aplikace, tak šíleně vytěžuje ten procesor? Jaké programy v tu chvíli přistupují k tomu soketu?
strace startx -- :2 a to nic během spouštění xcalc nevypsalo. Nevím jaký balíky bych měl přeinstalovávat - xcalc jsem dneska nainstaloval (a ta verze předtím dělala totéž). Brzo nahodím xorg-server 1.4.
-p pid Attach to the process with the process ID pid and begin tracing. The trace may be termi-
nated at any time by a keyboard interrupt signal (CTRL-C). strace will respond by detaching
itself from the traced process(es) leaving it (them) to continue running. Multiple -p
options can be used to attach to up to 32 processes in addition to command (which is
optional if at least one -p option is given).
A zajímavou vlastností strace je parametr -e trace= - viz. manuálová stránka.. něco jako -e trace=desc by možná mohlo usnadnit grepování, pokud vůbec bude třeba..
&> log ...
Tiskni
Sdílej: