From 8691e70920b3cbd6818dd52a8a6252f975b168e6 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 28 Oct 2021 14:59:16 +0200 Subject: [PATCH] :spakles: --- A2/fauxgrep | Bin 0 -> 24408 bytes A2/fauxgrep-mt | Bin 25800 -> 25704 bytes A2/fauxgrep-mt.c | 7 +++++-- A2/fhistogram | Bin 0 -> 25728 bytes A2/job_queue.c | 3 ++- A2/testfile | Bin 20536 -> 20656 bytes 6 files changed, 7 insertions(+), 3 deletions(-) create mode 100755 A2/fauxgrep create mode 100755 A2/fhistogram diff --git a/A2/fauxgrep b/A2/fauxgrep new file mode 100755 index 0000000000000000000000000000000000000000..0a44b0b54c2fd635c01777032245eb50d38d8a3e GIT binary patch literal 24408 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 ma-n`%1%D2fts_accpath); job_queue_push(&q, strdup(p->fts_path)); break; default: @@ -125,9 +125,12 @@ int main(int argc, char * const *argv) { } } + //printf("done pusing jobs\n"); + fts_close(ftsp); job_queue_destroy(&q); + //printf("done destroying jobqueue\n"); for (int i = 0 ; i < num_threads ; i++) { pthread_join(threads[i], NULL); diff --git a/A2/fhistogram b/A2/fhistogram new file mode 100755 index 0000000000000000000000000000000000000000..e3f4ae9355773e1a0ffe47b00e51dbca70cda6c9 GIT binary patch literal 25728 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 job_queue->jobs = NULL; + //job_queue = NULL; pthread_mutex_unlock(&queue_push); pthread_mutex_unlock(&queue_pop); @@ -87,7 +88,7 @@ int job_queue_pop(struct job_queue *job_queue, void **data) { } if (job_queue->size == job_queue->capacity - 1) { - pthread_mutex_unlock(&queue_pop); + pthread_mutex_unlock(&queue_push); } //printf("pop end\n"); diff --git a/A2/testfile b/A2/testfile index 80374c6b4887c6ca1e24f89c50775ee3cc71a66d..bd0c8b573cb57a8867efa7474c513100418c32ae 100755 GIT binary patch delta 2948 zcmZWre^gu59l!S_FL_A_B!Ps4QWESBi_#si3fdNTpDXcQ7KL#91E$VF7k=o96 zq(vDSLkZulj-Bpk@oeq3vsumA)+y_#ouXaOv3PpAqJP+W$}!vNah+60t=-%AzIVf_ z-gDmlem|e@=li|)-FI_yk3C0^9-^a8>vI;Ow6JQ((Nx)CLq@NnOlsC=wChx0*MW_0 zr9Hi7e z*7~4b>jX=!7ACa?^v5uR%qp#OOzg1k=-allr)x{cx8i+0yF2=J?ty#7i3hdH@RU&U zGJ0&f9(>|Oy#_+Gi>{*0tF=2VW z1-2LHoELduT-A+n_(OOrzo~vdM@1}%vlLorg5_#A=KQa5dc2=;#HDs2+mvA&povGmp) zm=d&Qqx^Wu9y2(i(%8YqS{9!I>U9f}18(ttlR9Ca*G;d%A#aGy!|S$&`SHvRNr2TC z!Vz12Zo#I5oxXF{0~WPnwr_`4e;FNz$NfIzkWFQ;3-F@gfK&b=I-Z{MH&cvP-BItG z&=4XLD!q#`^E24x{2DtGKL5`|fbA#v7~q$8Y-%%ph;z3H6&5C?!+0DBmCKk<=${y< zQh-Es`&r5uqpCH`H{OqltF#WO0xfOEfYzyxD2We1bLB%$(`pPf6u*L$X)n5sQaARd zHaJsRBp4ot%a!%|=P?aS!J4Y7e%&5)^+9B$@1W42NrYJtxh>ckRBkHF8075O8C8x% z6pH9WXiX{?=A6`n_4Klk!*B=sBI}5bsS0A~O4Wk-F~;|^;fd6Q0li(L=$~5DOYq%P1u zk48v!65Vlhayl`ioRxSZU(G$P8Z5C6KeJMzeC5q0$^&e2tU}H@be6K@08dsnKVo|D zp=|QfGM-HAmsrGO7FkAir@VkZYxJNplzHW~^p)x|x>6)Dtf|W*rc#M{`YNKyy|a|A zGX+bnvHXxraN@c^=NiXqgM)=k7%?%WF`sI3O(vC~NSMq@s;CIk`vV%bj|bP*&|3KG z+Fm*Y-e7gHXde*sUJ=D7=H}+aoH>zh7Hj;XI6o)megKaJZ(EZ2JS%-58g|WzmO0Tg z0h7UMnn`~YyiZv9$oB4sNk>Q5BfSqkine=u{Lw!0rF%>Ifv-GF!K~H8>6$I{3{=z> zx(NU6tLs4syMG8ImxQ6Kwuz3We^ncx0&&3mp+;9rIIB`^FMdi3agt7mgbUfZaBp}Q zzSvCIM_YhKe6$@ZB2DxS*n|BjoQO2JviCZ6Q($c??h+dgHwdM5g|5!9LN0a*9vz2P zjDGQRKZ8*#evnSsS9cHnPx?e%uI9^^we<0ZV>G?Hsgu&RFdOw*op=jkEo-j<)#gKa ztk`PfSIVp{g3U3X!OvMgq+$U>f};e?!~%;)UiRoa0IiIaHnGNZY=q6L8I38+?ZBBDX;6h7j$9l+w>&zZ0y@A;a5#HER=WZVu2D zkV0<5T9x}d%r*xM%kNat6u349=p|^~7&2Vp_sTGgZwwgy^{T?9fp<2pF~%BIxRt`s Hno9l$8HWTK delta 2788 zcmZ8je{fS(7QXi-FU@P3HfftS1tcjbw8bU?T0$yqlVY0}kTwhyt1?i2h!zxg$#x<%g8PERF^fpL?@YG6yLc^656(oqUAm zNrm4mIBenammp*;2Ak2@FFR>x8Vnkp^gQe`dg&iw z2<@YA&gccFybuv(32iKQ^O7A;d_I!oS^Xf4Yk#LOM(hJ>lO#AoL)8st6`jV4c+@@VqbqIPq?tq%rmMXmGjqSd(dbt7}N z=TNUZ=6DIY)`u{G6E!YB&0Jt|w?plffA!$}@!{Qy{$-x4o0UH)JnA>4_0@NS#XgIE z24(iy6}KQoVvAeVp4z`-Dp9r6ZmZf`%j)QkL9}CAbX`9sUx!Y66FmiQ+C5z#Q9?dw zJTEbQy!E^qZ~Ri#E~wfEV@EK8)aVV=dX%ZXjibFpJB6G54(}H#k76zv^Zcsozmr$~ zRz7^AT%Tg{M%bD^yZJQEM^3ile$}4;*i>!rq!zn|^}nx7*B|>=S}V_G_X9Wf1&3<| z{FuYX1$-CI=HFcN6eG3wakG=E7ByqBCq%IgT>hqjEgY7K?BEo z_cF+e_6E&tFK4c^%aGedc$`B`z>6Fn6Yvub|9vaJj+1b_;3lUmg75O+KSl60m?#K0 z{6(NT7Q|(HgT|go8k>zvek4M3dERvat2nF_P-bh?J}Hp?OM17H3-|`c8SL3RNn&MK zaI+8{Ns4*=dJ!3TRevC=p6Ov+H*(abG zVfyThoa~#(oBea>&O73@50nuSS{KnSgjyro523Xo?Ru*k&#PRI{F*z;r|^WB$95)< zI~uZKJj>Vbo)vg%T-Q7C2=4o@t{+C<`Ms{6Memx>^>OqA=xunI@4lw%KJ;xr=z0|W zhtTR?Ky9$kJrkSC0ry-w0w>%q`aE28yGrL{mA#lvLbH1Cr3!}w&OLp}8RP1wnMBy%9 zxuS`kd4|Pd?XPl`vccpZI1_E%}YFnNkgwEm}@{p?gt@UR$)LRrwZ6*`$TGSCOJIeCMUbbJ?8Gml>!^12d8Lvy?wGs@lNj%6d#JGZvW_ zqNf`$V031M(uwO}-Qw+4*_9Y*ob@(R*?V!?WZr@{yBU??9F+;}e?s#xlKC|_nNQ63 z!nMWAv*M`0`cPL@)g?cIQ&RvLGZQL??jQ>yw-t@Tx#1vVkaM8P<{Sy7DPpQeZ{b`} zaD@?8uUfL+gFcI`KrCUbp5-v)Fv&xVW`=ahEYmW9Q}awImr0*tL2NHbSFs!e&v|7! zCx<<+I#y?MA(Ig@#T}somr#X2AQ-=eO{K*B_~VDjKY>>h&4fogg+SyFS4WZSf()NvsRX3cnH+C<>7k{^{10X<>bkSkZ;8*1pm^{f(Hpv_@FH(wjZX-aj0p zj^xuTO%mRa#44|nxq~WE7(vBh_V93&fj#P1MjJT#5$r84=!`m*GmV_th80}@ E16KUq!2kdN