Re: [so] [Examen] Clarificare materie

2020-05-25 Fir de Conversatie Paul Olaru via so
La întrebarea a 3-a adresa și portul locale și remote sunt stabilite de clientul care a dat connect. Adresa și portul local sunt pe ce ai dat listen, adresa și portul remote e decis de client. FD-ul în sine va ocupa un slot oarecare din tabela de descriptori, de obicei primul liber dar nu ai voie s

Re: [so] Intrebari legate de depunctari

2020-05-17 Fir de Conversatie Paul Olaru via so
Există niște reguli generale pentru makefile-uri, dar cea mai importantă regulă în opinia mea este ca dacă dai "make build" din nou fișierele deja compilate nu vor fi compilate din nou. Pe viitor, pentru a evita problema cu mai multe fișiere sursă, folosește-te de regulile template (nu sunt sigur

Re: [so] [Tema5][Windows] ReadFile + WSAOVERLAPPED

2020-05-15 Fir de Conversatie Paul Olaru via so
Trebuie să folosești structuri OVERLAPPED diferite și evenimente diferite între ReadFile și cealaltă operație; structura de OVERLAPPED nu e intenționată pentru refolosire fără a se face o reinițializare. Fără evenimente diferite programul poate deveni confuz. În primul rând, dacă un eveniment este

Re: [so] [Tema5][Windows] ReadFile + WSAOVERLAPPED

2020-05-15 Fir de Conversatie Paul Olaru via so
Evenimentele sunt și ele distincte? On Fri, May 15, 2020, 16:44 Dorin Geman wrote: > Din păcate, aceeași problemă. > Am modificat ca ReadFile să folosească un OVERLAPPED diferit, însă nu s-a > schimbat nimic. > ReadFile întoarce FALSE și GetLastError() == ERROR_IO_PENDING și rămâne > agățat acol

Re: [so] [Tema5][Windows] ReadFile + WSAOVERLAPPED

2020-05-15 Fir de Conversatie Paul Olaru via so
Nu am un exemplu clar dar o chestie indirectă e următorul citat: A common mistake is to reuse an OVERLAPPED structure before the previous asynchronous operation has been completed. You should use a separate structure for each request. You should also create an event object for each thread that proc

Re: [so] [Tema5][Windows] ReadFile + WSAOVERLAPPED

2020-05-15 Fir de Conversatie Paul Olaru via so
Nu cred că e vorba de o problemă de compatibilitate între OVERLAPPED și WSAOVERLAPPED, ci mai degrabăe o problemă de reutilizare. Structura OVERLAPPED e deja activă în callback-ul aferent și nu e o idee bună săo refolosești când este deja activă – you’re going to cause confusion if not worse. Folos

Re: [so] angel(2) (C) Unix system call and processes security

2020-05-15 Fir de Conversatie Paul Olaru via so
Good reason to require a capability which by default only root has. And let's not reuse CAP_SYS_ADMIN shall we? On Fri, May 15, 2020, 13:14 Valentin Ilie via so wrote: > On Fri, 15 May 2020 at 13:03, Alexandru Goia via so > wrote: > > Va ( re) amintesc, după cum am publicat pe lista în 2018-201

Re: [so] [Tema3][General] Protectie pagina ce trebuie zeroizata

2020-04-03 Fir de Conversatie Paul Olaru via so
Din nou, MAP_ANONYMOUS îți face memset(0) direct în kernel pentru că nu ești pe Arduino sau altă platformă pe care să fie dezactivată această funcție de securitate. Deci primești din prima cu 0, așa că nu înțeleg întrebarea. Sent from Mail for Windows 10 From: Dorin Geman via soSent: Friday, April

Re: [so] [Tema3][General] Protectie pagina ce trebuie zeroizata

2020-04-03 Fir de Conversatie Paul Olaru via so
Din nou, MAP_ANONYMOUS îți face memset(0) direct în kernel pentru că nu ești pe Arduino sau altă platformă pe care să fie dezactivată această funcție de securitate. Deci primești din prima cu 0, așa că nu înțeleg întrebarea. Sent from Mail for Windows 10 From: Dorin Geman via soSent: Friday, April

Re: [so] [Tema2][Windows] Erori random de coding style

2020-03-24 Fir de Conversatie Paul Olaru via so
Ai verificat în Vim că nu este nimic trailing? Da, poți folosi Vim. Ba chiar poți da dos2unix în cel mai rău caz, cl nu e CHIAR atât de stupid să nu compileze fișiere cu newline Unix ("\n"). Poate Checkpatch se plânge de "\r\n" dintr-un motiv sau altul. (Shamelessly picked from a previous response

Re: [so] [Tema2][General] Makefile + sprintf

2020-03-20 Fir de Conversatie Paul Olaru via so
As long as it Works, sure.Cred că e permisă pentru că funcția asta nu face nimic I/O. Personal recomand snprintf pentru că ăstuia poți să-i dai și o dimensiune a bufferului ca să nu faci overflow. Sent from Mail for Windows 10 From: Dorin Geman via soSent: Friday, March 20, 2020 5:59 PMTo: Sisteme

Re: [so] [Tema2][Windows] test_popen_read ReadFile se blocheaza

2020-03-17 Fir de Conversatie Paul Olaru via so
broken_pipe se poate da doar dacă la capătul celălalt nu mai există procesul, nu dacă procesul e viudar nu mai comunică. Ești sigur că procesul copil în sine nu e blocat? Sent from Mail for Windows 10 From: Vlad Lungu via soSent: Tuesday, March 17, 2020 11:06 PMTo: Sisteme de OperareSubject: [so] [

Re: [so] [Tema2][Linux] Generare teste

2020-03-16 Fir de Conversatie Paul Olaru via so
so_fileno e una din funcțiile de care ai nevoie. E necesar la toate testele. Pentru celelalte fă implementări dummy pentru a putea compila testele. On Mon, Mar 16, 2020, 18:12 Mihai Sp via so wrote: > Salut, > > Imi asum ca s-ar putea sa fie o intrebare prosteasca, dar eu nu reusesc sa > imi gen

Re: [so] [Tema2][General] Incorrect number of read syscalls

2020-03-15 Fir de Conversatie Paul Olaru via so
Bine, nu știu cum e testul în sine. Dacă so_fread e apelat cu maxim 14 tu nu ar trebui să faci mai multe citiri. Când bufferul e gol și ai nevoie de date faci o singură citire, chiar dacă e sub cât are nevoie bufferul ca să se umple. On Sun, Mar 15, 2020, 22:21 Paul Olaru wrote: > Cred că există

Re: [so] [Tema2][General] Incorrect number of read syscalls

2020-03-15 Fir de Conversatie Paul Olaru via so
Cred că există o presupunere (nu tocmai validă) în checker că poți profita de faptul că dacă un apel read ți-a returnat mai puțin decât i-ai cerut singurul motiv ar fi EOF. Dacă faci chestia asta îți trec toate testele? On Sun, Mar 15, 2020, 22:18 Vlad Lungu via so wrote: > Salut, > Primesc a

Re: [so] [Tema2]Problema test "incorrect data"

2020-03-15 Fir de Conversatie Paul Olaru via so
Probabil chiar ăsta e motivul. Încearcă să faci toți pointerii char * să fie unsigned char * pe cât posibil. On Sun, Mar 15, 2020, 17:41 Daria Teau via so wrote: > Buna! > > Am si eu o problema la testul 9 si nu reusesc sa ii gasesc cauza. > Testul pica cu "Incorrect data". Am adaugat un print i

Re: [so] [Tema 2][README] 2x README

2020-03-14 Fir de Conversatie Paul Olaru via so
Un singur fișier README este suficient cu excepția cazului în care ai variații suficient de mari să fie nevoie să le scrii într-un alt fișier. Dacă diferențele le poți exprima în câteva fraze un singur fișier e destul. Dacă diferențele sunt suficient de mari în implementarea ta încât să merite o d

Re: [so] Corectare submisie diferita de cea finala

2020-03-13 Fir de Conversatie Paul Olaru via so
Numele arhivei nu se păstrează ci se redenumește în ceva bazat pe username. Poți lăsa ID-ul tău de cs.curs astfel încât, când vede cineva responsabil de temă mailul ăsta, să îl poată considera? On Fri, Mar 13, 2020, 16:44 Anca Millio via so wrote: > Buna ziua! > > Am incarcat miercuri seara, pe

Re: [so] [Tema2][General] Folosire stdio.h pentru DIE

2020-03-12 Fir de Conversatie Paul Olaru via so
Nu știu cât de de acord vor fi cu utilizarea unui macro tip DIE, dar atâta timp cât nu folosești funcționalitățile din acel header pentru implementarea efectivă a temei nu ar trebui să fie o problemă. On Fri, Mar 13, 2020, 08:53 Teodor Dutu via so wrote: > Salut, > > Este permisa folsirea fprint

Re: [so] [Tema2][Linux] Structura SO_FILE

2020-03-12 Fir de Conversatie Paul Olaru via so
Ar fi bine să ai propria structură. Există mici diferențe dorite în comportament pe care structura preexistentă te poate încurca. O poți considera loc din care să te inspiri though. Dar adaugi chestiile relevante pentru tema cum o implementezi tu. On Thu, Mar 12, 2020, 16:35 Mihai Sp via so wrot

Re: [so] Problema Teams

2020-03-12 Fir de Conversatie Paul Olaru via so
Recomand să verifici dacă nu cumva ai vreun typo. Ar trebui să meargă fără probleme cu mailul de student și parola de pe cs.curs. Există un loc în care o poți schimba (știu că am reușit eu la un moment dat) dar am uitat exact unde. On Thu, Mar 12, 2020, 10:52 Vlad Mitroi via so wrote: > Buna zi

Re: [so] [Tema1][Test38] calloc nu intoarce NULL

2020-03-09 Fir de Conversatie Paul Olaru via so
Probabil altceva e aiurea, pt că calloc cu siguranță poate returna NULL. Vezi pagina de manual, "man 3 calloc". Poate checkerul nu face el ceva ca să dea NULL? On Mon, Mar 9, 2020, 12:41 Dorin Geman via so wrote: > Salut, > > La testul 38, in (mini-preprocessor.c, 17), calloc-ul nu întoarce NULL

Re: [so] [Tema1][Windows]Memcheck fails

2020-03-05 Fir de Conversatie Paul Olaru via so
„Note: refers to 0 byte(s) beyond last valid byte in prior malloc” Asta îmi spune că eroarea poate fi legit a ta și Valgrind pur și simplu nu a prins-o. În rulăriletale manuale îi dai toate opțiunile de strictețe? Încearcă să compilezi cu parametrul /Zi (echivalentul lui -g) și să rulezi din nou Dr

Re: [so] [Tema1][Windows]Memcheck fails

2020-03-05 Fir de Conversatie Paul Olaru via so
Ar fi bine să atașezi erorile ca să le putem investiga. Faptul că nu apar pe Linux îmi spune că probabil e de vină runtime-ul de pe Windows, dar ebine să ne uităm atent peste erori ca să le putem interpreta corect. Sent from Mail for Windows 10 From: Deea OSent: Thursday, March 5, 2020 10:07 PMTo:

Re: [so] [Tema1][Windows]Memcheck fails

2020-03-05 Fir de Conversatie Paul Olaru via so
Nu am mașina virtuală on hand dar din câte îmi amintesc era o variantă de a rula manualmemcheck similar cu modul în care se putea rula valgrind pe Linux. Dacă te uiți la cum esteapelat în scripturile checkerului și iei exemplu probabil poți găsi un mod. Scuze că nu te pot ajuta mai specific ☹ Sent

Re: [so] [Tema1][Windows]Memcheck fails

2020-03-05 Fir de Conversatie Paul Olaru via so
Poți menționa ce memleaks ai mai exact? Trebuie să ne dăm seama dacă aparțin coduluitău sau runtime-ului de pe Windows. From: Deea O via soSent: Thursday, March 5, 2020 9:14 PMTo: Sisteme de OperareSubject: [so] [Tema1][Windows]Memcheck fails Buna seara, Cum pot proceda in cazul in care pe Linux nu

Re: [so] [Tema1][Windows] Standard C89

2020-03-04 Fir de Conversatie Paul Olaru via so
Din păcate trebuie făcută în C89 tema asta (și eu m-am confruntat cu asta anul trecut). (de ar fi mai actualizate mașinile virtuale să nu mai fie Visual Studio 2010 ci 2017 careare un compilator mai modern...) Eu personal recomand să pui -std=c89 pe compilerul gcc pe Linux pt că acesta dă erorimai

Re: [so] [Tema1][General] Checkpatch si const struct

2020-03-02 Fir de Conversatie Paul Olaru via so
Această eroare în particular poate fi ignorată. Vezi de restul dacă ai. From: Alin-Andrei GEORGESCU (94722) via soSent: Monday, March 2, 2020 10:38 PMTo: so@cursuri.cs.pub.roSubject: [so] [Tema1][General] Checkpatch si const struct Salut! În implementarea hashmapului am folosit structuri, însă chec

Re: [so] [Tema 1][General] Functia Hash

2020-02-29 Fir de Conversatie Paul Olaru via so
Cred că s-a zis mai devreme, orice funcție rezonabilă. Trebuie doar să nu ai o distribuție extrem de proastă care să afecteze performanța hashtable-ului în sine. On Sat, Feb 29, 2020, 12:52 PM Theodor-Nicolae STOICA (78294) via so < so@cursuri.cs.pub.ro> wrote: > Salut, > Putem folosi orice funct

Re: [so] [Tema1] Erori Checkpatch

2020-02-28 Fir de Conversatie Paul Olaru via so
Trailing whitespace poate proveni inclusiv de la \r. Dă-i un dos2unix, elimină spațiile de la finalul tuturor liniilor în vim (eu personal nu am încredere în editoarele grafice în acest scop) și vezi. On Fri, Feb 28, 2020, 6:56 PM Teodor Popescu wrote: > On Fri, 28 Feb 2020 at 18:42, Paul Olaru

Re: [so] [Tema1] Erori Checkpatch

2020-02-28 Fir de Conversatie Paul Olaru via so
Îți răspund la prima întrebare: compilerul de Windows poate compila (din câte știu, versiunea de 2010 era un pic dubioasă dar parcă nu avea probleme cu asta) fișiere cu newline Unix fără probleme, deci nu e nevoie să ai cu newline Windows. dos2unix is your friend (și e inclus în Busybox dacă nu vre

Re: [so] [Tema1] Coding Style - Conditii lungi

2020-02-27 Fir de Conversatie Paul Olaru via so
Eu unul sunt familiarizat cu a doua opțiune fiind cel mai des folosită în porțiunea de kernel Linux în care lucrez eu deci aș recomanda să o folosești pe aceasta. Prima variantă poate fi bună în situații rare în care condiția e într-adevăr complexă și ar avea nevoie de un nume sau comentariu. A tr

Re: [so] [Tema 1][General] Max Number of Buckets

2020-02-27 Fir de Conversatie Paul Olaru via so
Cred că poți începe cu 16 or smth și să ai suport pentru a-l redimensiona în funcție de load, de cât de ocupat este hashmap-ul. Eu așa am făcut anul trecut dacă îmi amintesc bine. On Thu, Feb 27, 2020, 3:11 PM Stefan Hermeniuc via so wrote: > Salut, > > Implementarea unui HashMap in mod clasic p

Re: [so] [Curs 12] Nelamurire hard links

2019-05-19 Fir de Conversatie Paul Olaru via so
Pentru a nu avea bucle la reference count-uri și alte dubioșenii, majoritatea sistemelor de fișiere interzic hardlinkurile la directoare, cu excepția celor de tip . și .. ; toate celelalte tipuri de fișier pot avea hardlinkuri arbitrare. În general vorbim de hardlink-uri când avem dentry-uri multi

Re: [so] Linux kernel internship @ NXP

2019-05-16 Fir de Conversatie Paul Olaru via so
Am dat reply all din greșeală. On Thu, May 16, 2019, 5:05 PM Paul Olaru wrote: > Salut. M-ar interesa acest internship pentru că este pe partea de > low-level pentru care am venit pe partea de CTI a facultății. > > Consider că știu tot ceea ce este la partea de "need to know" > > Olaru Paul-Stel

Re: [so] Linux kernel internship @ NXP

2019-05-16 Fir de Conversatie Paul Olaru via so
Salut. M-ar interesa acest internship pentru că este pe partea de low-level pentru care am venit pe partea de CTI a facultății. Consider că știu tot ceea ce este la partea de "need to know" Olaru Paul-Stelian, 332CA. Specializare de an 4: C3 va fi prima opțiune. On Thu, May 16, 2019, 5:00 PM Dan

Re: [so] [Tema4][Windows] - Segfault so_init

2019-05-09 Fir de Conversatie Paul Olaru via so
Also, iswdigit ar putea să fie apelat și indirect de către cod din CRT; tu poate ai apelat un printf sau ceva? Sent from Mail for Windows 10 From: Paul Olaru Sent: Thursday, May 9, 2019 9:28 PM To: Ionuț Mihalache; Sisteme deOperare; Adrian Șendroiu Cc: Sisteme de Operare Subject: RE: [so] [Tema

Re: [so] [Tema4][Windows] - Segfault so_init

2019-05-09 Fir de Conversatie Paul Olaru via so
Drmemory e un fel de Valgrind. Încearcă să compilezi cu simbolurile de debug (/Zi pentru fișierele .obj în principiu, /debug pentru dll-ul final și /MDd dacă vrei să legi CRT-ul de debug – ultima s-ar putea să nu meargă prea bine totuși deci o scoți dacă ai alte crashuri ciudate). Mai multe info

Re: [so] [Tema4][Windows] - Segfault so_init

2019-05-09 Fir de Conversatie Paul Olaru via so
Conform stivei afișate, so_init pare să fie apelat din so_end și apoi ajungi să apelezi ceva care verifică dacă un șir este un număr?! Și se întâmplă să dereferențiezi un pointer NULL? Suspicious... (metoda iswdigit din ntdll) Sent from Mail for Windows 10 From: Ionuț Mihalache via so Sent: Th

Re: [so] [Tema4][Linux] Testul 19 VMChecker

2019-05-08 Fir de Conversatie Paul Olaru via so
Problemele de tipul ăsta le expui prin a rula de 2-3 ori în paralel (a ține sistemul în load). Dacă rulezi de 3 ori în paralel executabilul îți crapă sau îngheață sau ceva? Sent from Mail for Windows 10 From: Daniel Berbece via so Sent: Wednesday, May 8, 2019 9:57 PM To: so@cursuri.cs.pub.ro Su

Re: [so] [Tema 4] [Linux] Nelamurire testul 12, exec preemption

2019-05-08 Fir de Conversatie Paul Olaru via so
Testul 12 rulează funcțiile cu _13? Avem 2 threaduri de aceeași prioritate. Ordinea de rulare: -> handler_13_1 (priority 0): so_fork, creates handler_13_2 of priority 0. Priority is not higher so no preemption. Will count towards the time quantum as it didn’t trigger a preemption. -> handler_13

Re: [so] [Tema 4] [Linux] Nelamurire testul 12, exec preemption

2019-05-08 Fir de Conversatie Paul Olaru via so
Nefiind alt thread ar trebui să își poată termina treaba -- tot el să continue execuția. On Wed, May 8, 2019, 6:21 PM Alexandru Fazakas via so wrote: > Salut, > > Care ar trebui sa fie mai exact comportamentul testului 12, "test exec > preemption"? > Mie imi esueaza cu "ERR: invalid tasks order"

Re: [so] [Tema 4] [Linux] Probleme pthread_create

2019-05-07 Fir de Conversatie Paul Olaru via so
Ca idee, ce returnează un pthread_create care are succes se poate da join indiferent de situație, chiar și dacă threadul a fost creat suspendat sau fuck knows what. Primul parametru este pointer la tid. Acel tid va avea o valoare validă pe care poți da join dacă pthread_create returnează 0 (suc

Re: [so] [Tema4] Nelamuriri functie wait

2019-05-07 Fir de Conversatie Paul Olaru via so
Timpul de execuție se va reseta la 0 în momentul în care permiți threadului să continue execuția, pentru că nu a fost în timpul execuției în acel moment. Eu am scos punctajul pe care îl vezi pe VMchecker (100) cu un singur counter global de instrucțiuni. Un thread este preemptat doar dacă un th

Re: [so] [Tema4][General]

2019-05-05 Fir de Conversatie Paul Olaru via so
Eu unul presupun că poți face modificări, atâta timp cât sunt compatibile (testele compilate cu headerul original pot folosi fără probleme funcțiile implementate de tine). În general, asta înseamnă că nu poți face absolut nicio modificare la structuri definite în header (când există), modificări la

Re: [so] [Tema 4] Nelamuriri functii

2019-05-02 Fir de Conversatie Paul Olaru via so
so_fork are un parametru care e prioritatea lui; noul thread va intra în coada ready la prioritatea respectivă. Fiecare thread are ca tranziții: running->ready în so_exec și celelalte funcții care preemptează, când expiră cuanta sau apare (în so_fork sau so_signal) un thread cu prioritate mai mare

Re: [so] [Tema 4] Nelamuriri functii

2019-05-02 Fir de Conversatie Paul Olaru via so
Looks like significant misunderstandings here. 1. Vezi 3; ID-ul este dintr-un vector de cozi I/O. 2. Fiecare thread este ori running, ori ready (în coadă), ori blocked (într-o coadă I/O). Fiecare funcție manipulează în general propriul thread, cu excepția lui fork (care crează un thread nou) și si

Re: [so] [Tema4][Linux | Windows] Partea de preemptare

2019-05-02 Fir de Conversatie Paul Olaru via so
...CUDA nu e specific NVidia? Also...wrong thread On Thu, May 2, 2019, 11:38 AM Mihai Barbulescu wrote: > On Wed, 1 May 2019 at 19:33, Paul Olaru via so > wrote: > > > > cuda-gdb nu e prea rău, dar honestly aș face altceva: după ce s-a apelat > kernelul și am dat toa

Re: [so] [Tema4][Linux | Windows] Partea de preemptare

2019-05-01 Fir de Conversatie Paul Olaru via so
cuda-gdb nu e prea rău, dar honestly aș face altceva: după ce s-a apelat kernelul și am dat toate cudaFree-urile etc copiez vectorii prin care implementez Hashtable-ul în sine și îl printez. On Wed, May 1, 2019, 7:31 PM Ionuț Mihalache wrote: > Și încă o întrebare pe care am uitat să o adresez:

Re: [so] [Tema4][Linux | Windows] Partea de preemptare

2019-05-01 Fir de Conversatie Paul Olaru via so
E simplu: când un thread este blocat (wait pe orice primitivă de sincronizare) ai garanția că schedulerul din kernel va pune la un moment dat un thread al procesului tău care nu e blocat. Deci simplu blochezi thread-ul care nu vrei să se execute. Orice funcție de wait merge. On Wed, May 1, 2019, 7

Re: [so] [Tema4][Linux | Windows] Partea de preemptare

2019-05-01 Fir de Conversatie Paul Olaru via so
2. Nu trebuie să umblăm la kernel altfel decât prin a lăsa un singur thread activ la un moment dat în general. 1. Decrementarea se poate face oricând, dar "context switch-ul" se va face după, dacă e cazul. 3. Am și eu întrebarea asta. Parcă am văzut un mail în care se spunea că ambele abordări sunt

Re: [so] [Tema4][Linux | Windows] Cuantă de timp și so_exec

2019-04-29 Fir de Conversatie Paul Olaru via so
În handler am considerat prima cuantă ca fiind în prima operație (so_exec, so_fork etc) făcută de thread. Până ajunge acolo sunt 0 instrucțiuni numărate. Sent from Mail for Windows 10 From: Ionuț Mihalache Sent: Monday, April 29, 2019 10:29 PM To: Paul Olaru Cc: Mihai Barbulescu; Sisteme de Oper

Re: [so] [Tema4][Linux | Windows] Cuantă de timp și so_exec

2019-04-29 Fir de Conversatie Paul Olaru via so
Tot ce face fork() se consideră o singură instrucțiune. Dacă se epuizează cuanta, context switch-ul se face doar după ce s-a terminat ce are de făcut fork. La fel, dacă thread-ul nou are prioritate mai mare și îl preemptează pe cel activ, acea preempție se termină după ce s-a făcut treaba de for

Re: [so] [Tema4][Linux | Windows] Cuantă de timp și so_exec

2019-04-29 Fir de Conversatie Paul Olaru via so
La a doua chestie, preempția în sine se întâmplă în cadrul funcției tale. Eu merg pe ideea cu a nu adăuga o cuantă la începutul thread-ului (în particular pt că fac oricum context switch-ul DUPĂ inițializarea thread-ului). Dar nu zic 100% sigur pentru că am în cca 8% din rulări picări pe testul

Re: [so] [Tema4] [Linux] Problemă test round robin

2019-04-27 Fir de Conversatie Paul Olaru via so
Deci va trebui să fac join early, că join la final face Valgrind să consume mai mult de 1.5 GB de memorie și deci să-și ia OOM kill... Probabilistic. On Sat, Apr 27, 2019, 8:19 PM Razvan Crainea wrote: > On Sat, Apr 27, 2019 at 6:25 PM Paul Olaru via so > wrote: > > > > Îmi

[so] [Tema4] [Linux] Problemă test round robin

2019-04-27 Fir de Conversatie Paul Olaru via so
Îmi poate oferi cineva o idee prin care pot găsi motivul pentru care primesc mesajul de eroare „task was not preempted” la unele execuții? Sau ce să verific în codul meu? Test round robin. Când ar trebui să se facă preempția în so_signal, cea cauzată de expirarea cuantei? Înainte sau după semn

Re: [so] [Tema4][Linux] Memcheck failed

2019-04-27 Fir de Conversatie Paul Olaru via so
Observ pe mașina virtuală că procesul de Valgrind consumă atât de mult și durează vreo 15 secunde pe sistemul meu (i5). Nu observ un proces separat pt executabil. Când rulez executabilul fără Valgrind, se termină prea repede pentru a putea monitoriza consumul, dar Valgrind raportează 15xx alocări î

Re: [so] [Tema4][Linux] Memcheck failed

2019-04-27 Fir de Conversatie Paul Olaru via so
Revin. Făcând valgrind ./run_test 15 pe mașina virtuală de SO obțin mereu all heap blocks are freed și observ că se consumă tot RAM-ul (1.5GB) plus 200-300MB de swap (una din rulări s-a dus chiar la vreo 400MB de swap). Testul 19 urcă și el la vreo 700MB de consum dar e fine că în configurația orig

Re: [so] [Tema4][Linux] Memcheck failed

2019-04-27 Fir de Conversatie Paul Olaru via so
O să încerc să cresc RAM-ul la 1.5GB (atâta plus swap ar trebui să fie suficient). În timpul testului pe un alt tab chiar văd cum memoria liberă scade (watch -n0.1 free -h), inclusiv swap-ul, până își ia kill, pe mașina de SO și cu checkerul. Join-urile le dau după ce se termină tot. Ar trebui să

Re: [so] [Tema4][Linux] Memcheck failed

2019-04-26 Fir de Conversatie Paul Olaru via so
Salut, testul de round robin îmi face și mie probleme. Pe VMchecker îmi pică, pe o mașină virtuală de Linux a mea primesc în mod consistent mesajul de Killed (și checkerul face fițe: îmi dă fail pe toate, dar rulând manual par să meargă toate celelalte) – out of memory în Valgrind. Pe mașina de

Re: [so] [Tema4] Ce se consideră instrucțiuni?

2019-04-24 Fir de Conversatie Paul Olaru via so
ie preemptat si intra alt > thread in joc. > > Tot ce inseamna operatii I/O se traduc prin yield. > > END - faci pthread join si eliberezi resursele ocupate de scheduler. > > Dar ca idee operatiile pe care le-ai enumerat tu sunt operatii facute > de scheduler... > > O

[so] [Tema4] Ce se consideră instrucțiuni?

2019-04-24 Fir de Conversatie Paul Olaru via so
În cerință, se spune că fiecare dintre funcții se consideră ca o instrucțiune executată de un thread la un moment dat. Ce funcții se consideră ca instrucțiuni dpdv al cuantei? • INIT: Bănuiesc că nu, doar e configurația inițială a temei. Facem scheduling și pe thread-ul de setup? • FORK: La asta

Re: [so] [Tema 4] [Linux] Detalii prioritati

2019-04-23 Fir de Conversatie Paul Olaru via so
Deci prioritățile sunt toate 0-5? Well asta va simplifica semnificativ designul temei mele... On Tue, Apr 23, 2019, 10:20 PM Razvan Crainea via so wrote: > Bună, Aida! > > Prioritatea maximă este 5, așa cum este indicat aici[1]. > > [1] > https://github.com/systems-cs-pub-ro/so-assignments/blob/

Re: [so] [Tema3] Submisie Tema 3 peste Tema 2 Linux

2019-04-20 Fir de Conversatie Paul Olaru via so
Ca idee, clientul de mail care vine cu Windows 10 e ok când trimit de pe GMail. Cu mailul facultății nici măcar nu am primit mailul de confirmare pentru adăugarea în lista de discuții. On Sat, Apr 20, 2019, 2:00 PM Mihai Barbulescu via so wrote: > Da, pare sa fie o problema cu mesajele pe care l

Re: [so] [SO][Tema3][Win] Incorrect number of faults TEST data + bss

2019-04-19 Fir de Conversatie Paul Olaru via so
Am observat diferențe între checker și Visual Studio pe anumite teste pe Windows (cred că inclusiv ăsta) când am folosit un PageSize de 4096? Încearcă să folosești 65536, are un comportament mult mai consistent. Mie îmi trece pe vmchecker cu 65536. On Fri, Apr 19, 2019, 2:39 PM Larisa Matei via so

Re: [so] [Tema3][Windows] MapViewOfFile fails

2019-04-17 Fir de Conversatie Paul Olaru via so
Am pățit și eu. Dacă fișierul l-ai deschis copy-on-write, maparea în sine o faci cu PAGE_READONLY și cu flagul de copy-on-write. I suppose. (Rezolvarea mea a fost să scap de acest map direct tbh) On Wed, Apr 17, 2019, 6:06 PM Daniel Dinca via so wrote: > Salut, > > Cand incerc sa mapez fisierul

Re: [so] [Tema3][Linux] Primesc NULL in campul si_addr

2019-04-16 Fir de Conversatie Paul Olaru via so
Suspectez că altă mapare nu o faci chiar atât de corect. E posibil ca testul ăla să aibă niște pointeri embedded în date și ăia să încurce? Nu am investigat exact codul sursă pentru acel test încă. On Wed, Apr 17, 2019, 2:18 AM Andrei-Stefan Trifu via so < so@cursuri.cs.pub.ro> wrote: > Salutări,

Re: [so] [Tema3][Windows] - Permisiuni VirtualAlloc, VirtualProtect

2019-04-15 Fir de Conversatie Paul Olaru via so
Adresa 1 sună suspect (NULL pointer dereference). Memory allocation failure? Încearcă să reduci utilizarea de memorie dinamică pe cât posibil. Vezi cu Valgrind/GDB care pointer încerci să îl folosești deși e nul. On Tue, Apr 16, 2019, 9:37 AM Ionuț Mihalache wrote: > Problema care apare este fap

Re: [so] [SO][Tema3][Linux] Folosire semnale pentru SIGSEGV

2019-04-15 Fir de Conversatie Paul Olaru via so
Comportament ciudat: mă gândeam la situația în care libc și-ar reinițializa heap-ul după ce am dat so_exec_start și astfel bufferele din printf/fprintf/... nu mai sunt partajate cu programul, nu mai sunt flushuite corespunzător etc. Nu sunt sigur că se comportă așa sau nu, eu voi merge pe presupune

Re: [so] [Tema3][Linux] fisier executabil

2019-04-15 Fir de Conversatie Paul Olaru via so
Globalele sunt o problemă în proiectele mari pentru că este mai dificil să vezi ce cod le folosește. Și pentru majoritatea situațiilor la care mă gândesc (INCLUSIV cea din tema asta) mă gândesc că o variabilă globală limitată (sau statică per clasă) este suficient -- elimină problema efectelor secu

Re: [so] [SO][Tema3][Linux] Folosire semnale pentru SIGSEGV

2019-04-15 Fir de Conversatie Paul Olaru via so
Pe scurt, dacă e o funcționalitate oferită de sistemul de operare e ok și putem folosi ce ne oferă acesta fără restricții, și tot ce e de evitat e doar folosirea funcțiilor din libc care ori s-ar comporta ciudat ori ar implementa într-un mod cheaty funcționalitatea dorită? (Notă, la tema asta nu cr

Re: [so] [Tema3][Linux] fisier executabil

2019-04-14 Fir de Conversatie Paul Olaru via so
>> >> 1. Unde ati vazut depunctare pt variabile globale? (trebuie fixat daca >> e scapata pe undeva) >> 2. Cine v-a zis ca variabilele globale sunt asa de naspa? >> >> On Sun, 14 Apr 2019 at 13:33, Paul Olaru via so wrote: >> >>> >>> Cred

Re: [so] [Tema3][Linux] fisier executabil

2019-04-14 Fir de Conversatie Paul Olaru via so
; > În dum., 14 apr. 2019 la 13:31, Adrian Șendroiu > a scris: > >> Salut, >> >> Da, cel mai simplu este să ții un fd global. >> >> On Sun, 14 Apr 2019 at 13:11, Paul Olaru via so >> wrote: >> > >> > +1, sunt și eu curios. Scheletul

Re: [so] [Tema3][Linux] fisier executabil

2019-04-14 Fir de Conversatie Paul Olaru via so
+1, sunt și eu curios. Scheletul pare să dea close la fd după ce a procesat structurile din header. On Sun, Apr 14, 2019, 1:10 PM Ionuț Mihalache via so wrote: > Salut, > > In enunt ne spune ca in momentul cand mapam o noua pagina sa copiem datele > din fisier corespunzatoare in memoria nou mapa

Re: [so] [Tema3][Linux] complex program

2019-04-13 Fir de Conversatie Paul Olaru via so
Adresa virtuală 0xdf? Păi poate e intenționat (aia e deep in the NULL page). Dacă nu faci chestii speciale care cer root, nu poți mapa nimic în primii 4k ai procesului, unde ar fi și adresa asta. Sau era 0xdf la altceva? On Sun, Apr 14, 2019, 2:11 AM Daniel Dinca via so wrote: > Salut, > > Impl

Re: [so] [Tema2]VMChecker blocat

2019-04-05 Fir de Conversatie Paul Olaru via so
[For troubleshooting] elf.cs.pub.ro este de asemenea down. On Fri, Apr 5, 2019, 23:42 Sebastian Cojocariu via so wrote: > Salut, > De la ora 22:50 (cel putin atunci am intrat eu) VMCheckerul a picat.Cum > am putea submite temele fara a fi depunctati?Mersi. >

Re: [so] [Tema2][Eroare VM]

2019-04-03 Fir de Conversatie Paul Olaru via so
Eu nu văd nicăieri să i se compileze codul. Ca și cum acel Makefile ar fi complet ignorat. Poate e el broken? On Wed, Apr 3, 2019, 21:26 Mihai Barbulescu via so wrote: > E vreo cale hardcodata prin codul tau? > > On Wed, 3 Apr 2019 at 21:12, gaby sandu via so > wrote: > > > > Salut pe Vm imi p

Re: [so] [Tema2][Linux] Eroare checker coding styl

2019-04-03 Fir de Conversatie Paul Olaru via so
Există o funcție în familia exec care te scutește de acel array, overall. Te avertizează generic că ai un vector de pointeri, pointerii în sine sunt constanți si chestiile la care indică nu neapărat. On Wed, Apr 3, 2019, 21:19 Alexandru Fazakas via so wrote: > Salut, > > Stie cineva de ce `stat

Re: [so] [Tema2][Eroare VM]

2019-04-03 Fir de Conversatie Paul Olaru via so
Te-ai uitat să nu fie vreo eroare de compilare, de la lipsa vreo unei funcții din .so? On Wed, Apr 3, 2019, 21:12 gaby sandu via so wrote: > Salut pe Vm imi pica toate testele din cauza "valgrind: _test/bin/ > test_fopen_args: No such file or directory"(un exemplu) dar pe > local(masina virtuala

Re: [so] [Tema2][Linux] Memcheck failed pe testul 32

2019-04-03 Fir de Conversatie Paul Olaru via so
Ai dat Valgrind pe Bash. Well, asta nu e productiv. Doar dă-i cu run_test 32 și vezi ce îți pune în _log. On Wed, Apr 3, 2019, 19:16 Alexandru Fazakas via so wrote: > Salut, > > Stie cineva care ar fi sursa leak-urilor de memorie de genul acesta [1]? > Au loc pe testul 32. > Mentionez ca totul

Re: [so] [Tema2][Linux][Vmchecker problem]

2019-04-03 Fir de Conversatie Paul Olaru via so
Fără să văd codul, am senzația că ai încercat să faci redirectarea într-un mod altul decât cel intenționat. Checkerul rulează pe vmchecker cu stdin redirectat la /dev/null, stdout într-un fișier, stderr în alt fișier (sau același). Per ansamblu, cum ai făcut redirectarea? On Wed, Apr 3, 2019, 16:

Re: [so] Vmchecker indisponibil

2019-04-03 Fir de Conversatie Paul Olaru via so
Minunat... Sincer să fiu mă întreb ce distruge acea mașină virtuală în halul ăsta, temele de la vreo altă materie? On Wed, Apr 3, 2019, 11:27 Ionuț Mihalache via so wrote: > Și nu merge, iarăși eroare. > > În mie., 3 apr. 2019 la 11:26, Ionuț Mihalache a > scris: > >> Am trimis iar și acum este

Re: [so] [SO][Tema2][General | Windows] Probleme?

2019-04-02 Fir de Conversatie Paul Olaru via so
Ah, dacă ai probleme cu memoria nu mai ai replicabilitate E ceva! Deci să înțeleg că acuma ai rezolvat și problema originală? On Tue, Apr 2, 2019, 20:28 Ionuț Mihalache wrote: > Am reusit sa repar problema. Aveam un acces invalid de memorie in urma > calculelor pe care le facem si procesul p

Re: [so] [Tema2] [Prelungire deadline]

2019-04-02 Fir de Conversatie Paul Olaru via so
Mașinile virtuale au inițial aceeași configurație ca ce e pe VMchecker, doar să nu fi schimbat tu ceva la ele. Dacă mâine rămâne picat VMcheckerul, am văzut deja un mail care anunță că s-ar face prelungiri în această condiție. On Tue, Apr 2, 2019, 18:54 Soare Loredana via so wrote: > > Buna ziu

Re: [so] [Tema2][Linux] Incorrect number of read syscalls

2019-04-02 Fir de Conversatie Paul Olaru via so
Ai implementat so_fileno? Dacă funcția asta nu e implementată corect, checkerul nu poate număra câte apeluri de sistem dai. On Tue, Apr 2, 2019, 17:59 Daniel Valentin Neagu via so < so@cursuri.cs.pub.ro> wrote: > Salut, > > La testul 02 primesc urmatoarea eroare "Incorrect number of read syscalls

Re: [so] [SO][Tema2][General | Windows] Probleme?

2019-04-01 Fir de Conversatie Paul Olaru via so
Cred că 0 nu, dar citirile pot returna câte 1 singur octet fiecare teoretic. On Tue, Apr 2, 2019, 07:34 Ionuț Mihalache wrote: > Adică la un moment dat se pot citi 0 octeți fără să se fi ajuns la finalul > pipe-ului, corect? > > mar., 2 apr. 2019, 02:12 Adrian Șendroiu a scris: > >> Pare bine p

Re: [so] [SO][Tema2][General | Windows] Probleme?

2019-04-01 Fir de Conversatie Paul Olaru via so
Sistemul de operare nu trebuie să raporteze EOF la capătul de citire atâta timp cât există un capăt de scriere deschis. Că e Windows, că e Linux. On Tue, Apr 2, 2019, 00:30 Ionuț Mihalache wrote: > Păi dacă procesul copil nu apucă să scrie cu type pe pipe procesul părinte > nu-l vede ca fiind go

Re: [so] [Tema2][Windows] Rulare checker

2019-04-01 Fir de Conversatie Paul Olaru via so
Ce pui la stdout e redirectat automat. Printurile tale dacă vrei să fie vizibile le pui la stderr. Probabil Valgrind raportează un leak sau acces de valoare neinițializată care nu duce la crash. On Mon, Apr 1, 2019, 13:24 Șendre Mihai-Alin via so wrote: > Multumesc, am reusit. Nu pot totusi sa

Re: [so] [Tema2] VMChecker slow

2019-04-01 Fir de Conversatie Paul Olaru via so
S-a întâmplat ceva bizar că nici nu se poate conecta VMchecker în sine să VADĂ coada temelor în așteptare... Suspectez că a da un restart la acea mașină nu ar fi o idee rea On Mon, Apr 1, 2019, 10:01 Gmail via so wrote: > Se poate verifica mașina pe care rulează temele ? Am impresia că ceva

Re: [so] [SO][Tema2][General] Implementare structura SO_FILE

2019-03-31 Fir de Conversatie Paul Olaru via so
Cu 2 buffere nu știu dacă vei implementa semantica corespunzătoare. Cerința e intenționată spre a se rezolva cu un buffer. Oricum numai unul din ele e activ la un moment dat, celălalt fiind gol On Sun, Mar 31, 2019, 20:57 Daniel Berbece via so wrote: > Exista vreo constrangere legata de implemen

Re: [so] [Tema 2][Linux] Neclaritate fread / fwrite

2019-03-31 Fir de Conversatie Paul Olaru via so
lseek returnează poziția din sistemul de operare. Va trebui în ftell să faci niște calcule cu indicii de la buffer ca să afli poziția simulată (87). On Sun, Mar 31, 2019, 15:02 Rares Cosmin via so wrote: > Buna ziua! Am o neclaritate in privinta celor doua operatii fread si > write. Cum ar trebu

Re: [so] [Tema 2][Linux] Memcheck failed

2019-03-31 Fir de Conversatie Paul Olaru via so
Ai încercat să rulezi manual testul sub Valgrind? On Sun, Mar 31, 2019, 14:53 Șendre Mihai-Alin via so wrote: > Salut, > > Ma chinui de ceva ore sa fac testul 27 sa treaca. Rezolv o eroare, apare > alta. Inainte nu faceam destule apeluri de sistem. Am rezolvat, acum > primesc memcheck failed. Er

Re: [so] [SO][Tema2][General] fwrite după fread

2019-03-31 Fir de Conversatie Paul Olaru via so
Între fread și fwrite la fișierele cu + este garantat că se va apela un fseek sau fflush. Adică dacă nu e niciun fseek sau fflush între ele teoretic ai avea voie să dai crash. Nu știu ce face glibc în situația asta. On Sun, Mar 31, 2019, 10:49 Ionuț Mihalache via so wrote: > Salut, > > Ce se înt

Re: [so] [SO][Tema2][General | Windows] Probleme?

2019-03-30 Fir de Conversatie Paul Olaru via so
La testul 32, pot fi chestii de scheduler. Cred că ar fi importantă de fapt ordinea (la "r" aștepți și după închizi, la "w" închizi și după aștepți). Nici eu nu am implementat asta tbh. Dar și la "aștepți și după închizi" sunt neajunsuri. Sunt surprins că pe Linux reușește checkerul să preia el to

Re: [so] [SO][Tema2][General] Testul fseek_fwrite

2019-03-30 Fir de Conversatie Paul Olaru via so
"salvez poziția curentă"... După un flush poziția "virtuală" și cea în sistemul de operare vor fi sincronizate. Nu cred că e bine să salvezi ceva. On Sat, Mar 30, 2019, 16:06 Cristin Sirbu wrote: > Dap, salvez pozitia curenta, fflush, ma intorc la pozitia salvata, apoi > salt in functie de param

Re: [so] [Tema2][Windows] drmemory not found

2019-03-29 Fir de Conversatie Paul Olaru via so
Sper că nu ai încurcat PATH-ul cum a făcut-o altcineva (da, cineva a vrut să îl modifice și l-a făcut praf, am uitat cine). Ideea e că nu trebuie să ai spațiu lângă ; că îl pune în numele directorului. Otherwise no clue. On Fri, Mar 29, 2019, 23:00 Ionuț Mihalache via so wrote: > Salut, > > Can

Re: [so] [Tema2] [Generic] Cursor

2019-03-29 Fir de Conversatie Paul Olaru via so
Deci apelul read nu oferă și un offset, ci citește de la cursorul din kernel. Tu îl vei manipula corespunzător folosind lseek (în fseek, ftell, dar nu numai). Pe Windows vei folosi în scop similar SetFilePosition dacă vrei să te arunci acolo. On Fri, Mar 29, 2019, 21:53 Paul Olaru wrote: > Chia

Re: [so] [Tema2] [Generic] Cursor

2019-03-29 Fir de Conversatie Paul Olaru via so
Chiar mă întreb CUM ai putea implementa corect citirea și scrierea folosind un cursor propriu. On Fri, Mar 29, 2019, 20:55 Aida-Ștefania MANOLE (87667) via so < so@cursuri.cs.pub.ro> wrote: > Buna, > > > Am cautat structura de fisier deschis din kernel >

Re: [so] [Tema2][General]

2019-03-28 Fir de Conversatie Paul Olaru via so
Șendroiu via so" > wrote: > >> > >> Corect. > >> > >> On Thu, 28 Mar 2019 at 18:27, Paul Olaru via so > wrote: > >>> > >>> > >>> fflush spune că scrie tot deci trebuie să repeți apelul. Apelul de > citire în

Re: [so] [Tema2][General]

2019-03-28 Fir de Conversatie Paul Olaru via so
fflush spune că scrie tot deci trebuie să repeți apelul. Apelul de citire în schimb NU trebuie repetat la o citire mai mică. On Thu, Mar 28, 2019, 18:13 Qzie via so wrote: > Atunci cand scriem din buffer, trebuie sa ne asiguram ca il scriem pe tot > ? Sau ne rezumam la un singur apel write si la

  1   2   >