Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).
Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.
Interaktivní editor binárních dat GNU poke byl vydán ve verzi 5.0 (seznam změn).
Byla vydána verze 0.85 telnet a ssh klienta PuTTY (Wikipedie). Řešeno je 5 zranitelností.
Byly publikovány novinky z vývoje GIMPu. Pracuje se na novém formátu souborů. Stávající binární XCF bude nahrazen "zazipovaným XML". XCF zůstane plně podporován pouze pro načítání starých souborů.
Workshop o umělé inteligenci v Dartmouthu proběhl před 70 lety, od 18. června do 17. srpna 1956. Dvouměsíční soustředění 6–11 informatiků, iniciované Johnem McCarthym, položilo základy oboru umělé inteligence.
Po 9 týdnech vývoje od vydání Linuxu 7.1 oznámil Linus Torvalds vydání Linuxu 7.2. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.
Debian dnes slaví 33 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.
Probíhá hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu mají na výběr 9 možností (návrhy A až H a žádný z nich).
Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové major verzi 4.0.0 - The Quattro Release. Videopředstavení na YouTube. Celý desktop shell byl přepsán do Quickshellu. Přidána byla podpora pluginů.
Dobry den,
potreboval by som poradit s nastavovanim semaforov. Co mi nejde do hlavy je, preco tento kod:
/* Semaphores */
union semun semUnion;
/* Creating semaphore 1 */
if ((sem1ID=semget(keySem1,2,IPC_CREAT|0666)) == -1) {
perror("zadanie: semaphore1: ");
exit (6);
}
/* Setting semaphore 1 */
/* Allowing proc_t writing */
semUnion.val=1;
if ((semctl(sem1ID,0,SETVAL,semUnion)) == -1) {
perror("zadanie: semaphore1: ");
exit (7);
}
/* Denying proc_s reading */
semUnion.val=0;
if ((semctl(sem1ID,1,SETVAL,semUnion)) == -1) {
perror("zadanie: semaphore1: ");
exit (7);
}
/* Creating semaphore 2 */
if ((sem2ID=semget(keySem2,2,IPC_CREAT|0666)) == -1) {
perror("zadanie: semaphore2: ");
exit (6);
}
/* Setting semaphore 2 */
/* Allowing proc_s writing */
semUnion.val=1;
if ((semctl(sem2ID,0,SETVAL,semUnion)) == -1) {
perror("zadanie: semaphore1: ");
exit (7);
}
/* Denying proc_d reading */
semUnion.val=0;
if ((semctl(sem2ID,1,SETVAL,semUnion)) == -1) {
perror("zadanie: semaphore2: ");
exit (7);
}
fprintf(stdout,"zadanie: sem1[0]: %d\n",semctl(sem1ID,0,GETVAL,semUnion));
fprintf(stdout,"zadanie: sem1[1]: %d\n",semctl(sem1ID,1,GETVAL,semUnion));
fprintf(stdout,"zadanie: sem2[0]: %d\n",semctl(sem2ID,0,GETVAL,semUnion));
fprintf(stdout,"zadanie: sem2[1]: %d\n",semctl(sem2ID,1,GETVAL,semUnion));
dava takyto vypis:
zadanie: sem1[0]: 1 zadanie: sem1[1]: 0 zadanie: sem2[0]: 0 zadanie: sem2[1]: 0Dakujem za napady.
Tiskni
Sdílej: