Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.
V pořadí šestou knihou autora Martina Malého, která vychází v Edici CZ.NIC, správce české národní domény, je titul Kity, bity, neurony. Kniha s podtitulem Moderní technologie pro hobby elektroniku přináší ucelený pohled na svět současných technologií a jejich praktické využití v domácích elektronických projektech. Tento knižní průvodce je ideální pro každého, kdo se chce podívat na současné trendy v oblasti hobby elektroniky, od
… více »Linux Foundation zveřejnila Výroční zprávu za rok 2025 (pdf). Příjmy Linux Foundation byly 311 miliónů dolarů. Výdaje 285 miliónů dolarů. Na podporu linuxového jádra (Linux Kernel Project) šlo 8,4 miliónu dolarů. Linux Foundation podporuje téměř 1 500 open source projektů.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.12.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.4.0.
Kriminalisté z NCTEKK společně s českými i zahraničními kolegy objasnili mimořádně rozsáhlou trestnou činnost z oblasti kybernetické kriminality. V rámci operací OCTOPUS a CONNECT ukončili činnost čtyř call center na Ukrajině. V prvním případě se jednalo o podvodné investice, v případě druhém o podvodné telefonáty, při kterých se zločinci vydávali za policisty a pod legendou napadeného bankovního účtu okrádali své oběti o vysoké finanční částky.
Na lepší pokrytí mobilním signálem a dostupnější mobilní internet se mohou těšit cestující v Pendolinech, railjetech a InterPanterech Českých drah. Konsorcium firem ČD - Telematika a.s. a Kontron Transportation s.r.o. dokončilo instalaci 5G opakovačů mobilního signálu do jednotek Pendolino a InterPanter. Tento krok navazuje na zavedení této technologie v jednotkách Railjet z letošního jara.
Řešení dotazu:
V Linuxe nie je problem zo stackom pri Intel/AMD pouzitom ako bezne PC, lebo ak je maly stack, da sa prealakovat a bude vacsi. V Linuxe nie je problem zo stackom pri Intel/AMD pouzitom ako bezne PC, lebo ak je maly stack, da sa prealakovat a bude vacsi.Toto nie je pravda. Da sa iba zmenit velkost pred spustenim (pripadne bez limitu).
#include <stdio.h>
#include <stdlib.h>
#define CHARS 1024
long int
move_stack(void *stack_bot, void (*jmp_addr)(void));
void
function_in_new_stack(void)
{
long int foo;
char string[CHARS];
for (char *ch = string + CHARS; ch >= string; ch--) {
*ch = 'A';
}
puts(string);
printf("Cur. stack ptr: 0x%lx\n", (size_t) &foo);
}
int
main(int argc, char **argv)
{
long int foo;
void *stack, *stack_bot;
printf("Cur. stack ptr: 0x%lx\n", (size_t) &foo);
stack = malloc(4096);
stack_bot = stack + 4096;
printf("New stack addr.: 0x%lx\n", (size_t) stack);
printf("New stack bottom: 0x%lx\n", (size_t) stack_bot);
puts("Moving to the new stack.");
foo = move_stack(stack_bot, &function_in_new_stack);
printf("Function worked: 0x%lx %c\n", foo, foo);
printf("Cur. stack ptr: 0x%lx\n", (size_t) &foo);
puts("Freeing the stack.");
free(stack);
}
.globl move_stack move_stack: /* Tyto registry zachováváme. */ pushq %rbx pushq %r12 pushq %r13 pushq %r14 pushq %r15 /* V %rdi je spodek nového stacku, v %rsi funkce k zavolání. */ /* Poznamenáme si starou adresu stacku. */ mov %rsp, %rbx /* Přejdeme do nového stacku. */ movq %rdi, %rsp /* Adresu uložíme na nový stack. */ pushq %rbx call %rsi /* Vrátíme se zpět. */ popq %rsp /* Uklidíme po sobě. */ popq %r15 popq %r14 popq %r13 popq %r12 popq %rbx /* Vrátíme 'Y' jako návratovou hodnotu. */ movq $0x59, %rax retFunkce
move_stack zavolá funkci s daným stackem. Funguje to – viz výstup. Pokud nastavím CHARS na příliš velkou hodnotu (nový stack má 4k), spadne to na SIGSEGV, takže se používá nový stack.
(Tuším tady úkol.)
sou prázniny :O ;D
Tiskni
Sdílej: