β² 239 βΌ Gentoo users be like (sh.itjust.works) submitted 2 years ago by 0x4E4F@sh.itjust.works to c/linuxmemes@lemmy.world 23 comments fedilink hide all child comments
[β] Tenthrow@lemmy.world 12 points 2 years ago (1 child) It is driving me crazy that I have no idea what this means. permalink fedilink source hideshow 2 child comments replies: [β] MajorHavoc@programming.dev 38 points 2 years ago* (3 children) I believe the left hand is a shell fork-bomb, on the assumption that anything that zany is probably malicious. And the right hand is a way to tell Make to use up all available system resources: "-j [jobs]β ΒΆ β--jobs[=jobs]β Specifies the number of recipes (jobs) to run simultaneously. With no argument, make runs as many recipes simultaneously as possible. If there is more than one β-jβ option, the last one is effective. See Parallel Execution, for more information on how recipes are run. Note that this option is ignored on MS-DOS." Edit: I think the make command is technically only a problem when run for a Makefile that tries to do too many things, and has at least one mistake in dependency controls. So... for every Makefile I ever encountered (or that I ever wrote!) Yeah. They're the same picture permalink fedilink source parent hideshow 6 child comments replies: [β] Voroxpete@sh.itjust.works 25 points 2 years ago* (2 children) You are correct, left hand is a fork bomb. Specifically, it creates and then runs a function named ":". What this function does is pipe its output into itself while running in a background process, which instantly spawns infinite copies of itself. Technically I believe the : character could be any character as its just a name. The creator just picked a colon for aesthetics. permalink fedilink source parent hideshow 4 child comments replies: [β] laurelraven@lemmy.blahaj.zone 13 points 2 years ago I always just kind of glazed over looking at that and just know "it's a fork bomb" and basically what it does With your explanation, I can now actually understand all the parts and how they work, it actually makes sense permalink fedilink source parent [β] Mixel@feddit.de 5 points 2 years ago Now I get why it does what it does and how it works. I never thought that the colon was the variable name but it makes so much sense! permalink fedilink source parent [β] Max_P@lemmy.max-p.me 6 points 2 years ago I think it can also get weird when you call other makefiles, like if you go make -j64 at the top level and that thing goes on to call make on subprojects, that can be a looooot of threads of that -j gets passed down. So even on that 64 core machine, now you have possibly 4096 jobs going, and it surfaces bugs that might not have been a problem when we had 2-4 cores (oh no, make is running 16 jobs at once, the horror). permalink fedilink source parent [β] AVincentInSpace@pawb.social 4 points 2 years ago so without an argument to -j the number of concurrent jobs is unbounded??? permalink fedilink source parent
[β] MajorHavoc@programming.dev 38 points 2 years ago* (3 children) I believe the left hand is a shell fork-bomb, on the assumption that anything that zany is probably malicious. And the right hand is a way to tell Make to use up all available system resources: "-j [jobs]β ΒΆ β--jobs[=jobs]β Specifies the number of recipes (jobs) to run simultaneously. With no argument, make runs as many recipes simultaneously as possible. If there is more than one β-jβ option, the last one is effective. See Parallel Execution, for more information on how recipes are run. Note that this option is ignored on MS-DOS." Edit: I think the make command is technically only a problem when run for a Makefile that tries to do too many things, and has at least one mistake in dependency controls. So... for every Makefile I ever encountered (or that I ever wrote!) Yeah. They're the same picture permalink fedilink source parent hideshow 6 child comments replies: [β] Voroxpete@sh.itjust.works 25 points 2 years ago* (2 children) You are correct, left hand is a fork bomb. Specifically, it creates and then runs a function named ":". What this function does is pipe its output into itself while running in a background process, which instantly spawns infinite copies of itself. Technically I believe the : character could be any character as its just a name. The creator just picked a colon for aesthetics. permalink fedilink source parent hideshow 4 child comments replies: [β] laurelraven@lemmy.blahaj.zone 13 points 2 years ago I always just kind of glazed over looking at that and just know "it's a fork bomb" and basically what it does With your explanation, I can now actually understand all the parts and how they work, it actually makes sense permalink fedilink source parent [β] Mixel@feddit.de 5 points 2 years ago Now I get why it does what it does and how it works. I never thought that the colon was the variable name but it makes so much sense! permalink fedilink source parent [β] Max_P@lemmy.max-p.me 6 points 2 years ago I think it can also get weird when you call other makefiles, like if you go make -j64 at the top level and that thing goes on to call make on subprojects, that can be a looooot of threads of that -j gets passed down. So even on that 64 core machine, now you have possibly 4096 jobs going, and it surfaces bugs that might not have been a problem when we had 2-4 cores (oh no, make is running 16 jobs at once, the horror). permalink fedilink source parent [β] AVincentInSpace@pawb.social 4 points 2 years ago so without an argument to -j the number of concurrent jobs is unbounded??? permalink fedilink source parent
[β] Voroxpete@sh.itjust.works 25 points 2 years ago* (2 children) You are correct, left hand is a fork bomb. Specifically, it creates and then runs a function named ":". What this function does is pipe its output into itself while running in a background process, which instantly spawns infinite copies of itself. Technically I believe the : character could be any character as its just a name. The creator just picked a colon for aesthetics. permalink fedilink source parent hideshow 4 child comments replies: [β] laurelraven@lemmy.blahaj.zone 13 points 2 years ago I always just kind of glazed over looking at that and just know "it's a fork bomb" and basically what it does With your explanation, I can now actually understand all the parts and how they work, it actually makes sense permalink fedilink source parent [β] Mixel@feddit.de 5 points 2 years ago Now I get why it does what it does and how it works. I never thought that the colon was the variable name but it makes so much sense! permalink fedilink source parent
[β] laurelraven@lemmy.blahaj.zone 13 points 2 years ago I always just kind of glazed over looking at that and just know "it's a fork bomb" and basically what it does With your explanation, I can now actually understand all the parts and how they work, it actually makes sense permalink fedilink source parent
[β] Mixel@feddit.de 5 points 2 years ago Now I get why it does what it does and how it works. I never thought that the colon was the variable name but it makes so much sense! permalink fedilink source parent
[β] Max_P@lemmy.max-p.me 6 points 2 years ago I think it can also get weird when you call other makefiles, like if you go make -j64 at the top level and that thing goes on to call make on subprojects, that can be a looooot of threads of that -j gets passed down. So even on that 64 core machine, now you have possibly 4096 jobs going, and it surfaces bugs that might not have been a problem when we had 2-4 cores (oh no, make is running 16 jobs at once, the horror). permalink fedilink source parent
[β] AVincentInSpace@pawb.social 4 points 2 years ago so without an argument to -j the number of concurrent jobs is unbounded??? permalink fedilink source parent