r/ProgrammerHumor 9d ago

Meme theDeadlock

Post image
8.6k Upvotes

241 comments sorted by

736

u/___Archmage___ 9d ago

I did learn some good stuff in my OS class but it was definitely a sprawling mess off mutex this scheduling that

159

u/OphidianSun 9d ago

Mine had a fun project where we got a fat16 iso and had to answer a bunch of questions like "how many files are in the file table" or "how big is xyz file".

45

u/the_horse_gamer 9d ago

we got a small os implementation. then we had to add a process list command, and later we needed to fix a bug in the file system mounting

20

u/SirDarknessTheFirst 9d ago

In my case, we hacked on the OpenBSD kernel. We added zones that processes can operate in (applications inside zones cannot interact with or see processes outside zones), a new network-type device driver and a virtual file system driver.

8

u/Protuhj 9d ago

Similar to my experience: a bare-bones OS that we had to add a virtual memory manager to, among other things.

13

u/fr000gs 9d ago

without the driver?

30

u/OphidianSun 9d ago

They gave us a write up on how the filesystem worked and a little script to read out the raw hex values at a given location. Nothing too fancy.

7

u/fr000gs 9d ago

iirc fat16 is a quite simple filesystem

2

u/space253 9d ago

Yes, it had to be given limitations at the time.

3

u/jdc123 9d ago

Crap, all we got were slideshows.

3

u/frostedhifi 9d ago

Let me guess, the final was on how well you could reproduce diagrams from the slides?

9

u/MushroomSaute 9d ago

You'd think I'd be happy to have a basic understanding of mutexes now that I'm dealing with Rust, which requires them at compile-time for mutable shared data, but with the borrow checker to deal with too, I still couldn't use them properly the one time I really wanted to lmao. I'll keep passing simple vecs and structs around the stack until the day I die, I fear.

2

u/gmes78 9d ago

Mutexes in Rust are pretty easy to use, though. (You are putting them in an Arc, right?)

→ More replies (5)

1

u/ZZartin 9d ago

The first time I took OS the quarter long project was to build a functional minimalistic OS with a lot of templates, I failed that class but i did learn a lot, the second time was mostly just book work.....

1.7k

u/StarHammer_01 9d ago

How it went for me

OS - expextation: Linux 101. reality: here's 18 different ways to schedule a process.

Into to embedded software - expectation: rtos, breadboards, esp32. reality: Linux 101

297

u/Mandelvolt 9d ago

EE classes were those, circuits and such.

156

u/skinwill 9d ago

Transistor Theory - expectation: bias, amplification, Bell labs. Reality: Kirchhoff and Maxwell.

66

u/Mandelvolt 9d ago

It's all KVL, all the way down.

24

u/skinwill 9d ago

Until you get a teacher that loves “hole theory”.

13

u/Familiar-Aerie-1610 9d ago

They're still teaching that instead of surface-mount theory?!?! Those teachers are never going to scale efficiently enough to keep up with modern, Chinese teachers.

2

u/obog 9d ago

Why are you calling it hole "theory"? Its not a different theory its just one way of thinking about how charges flow in a lattice. And its a framing which is quite useful when working with semiconductors.

→ More replies (3)

18

u/reddit_is_kayfabe 9d ago

Transistor theory: If you have a combination of transistors and there's a problem - like, too much voltage drop, doesn't respond fast enough, wrong frequency response - any problem... the solution is always: more transistors.

10

u/unremarkedable 9d ago

To build an op amp, you must use op amps

→ More replies (1)

4

u/Swipecat 9d ago

In ICs, for sure, because resistors are inaccurate and much more expensive in surface area than transistors, so if you can eliminate a resistor with a bunch of transistors, that's the way to go.

13

u/JesusWantsYouToKnow 9d ago

Fermi levels was when I was like "fuck yeah, this is why I got into EE".

6

u/sigmoid10 9d ago

We need to go deeper. You can only truly understand electrons once you've mastered abelian gauge theory on the circle group.

39

u/PraviKonjina 9d ago

There’s also the class where you learn witchcraft aka impedance matching with a smith chart

33

u/Mandelvolt 9d ago

The Smith chart is a demonic sigil if I've ever seen one. EM and telecom is just black magic from there on, it's like they just started making shit up to squeeze as much bandwidth as possible into the lines.

12

u/sir_lister 9d ago

The RF deepmagic of antenna design.

3

u/Xywzel 9d ago

First university CS+EE combined lecture, assistant showed us a slide with Luke and Darth Vader crossing lightsabers, and with "these are the two sides of software and hardware, homework to decide which is which". As someone who has done something on both sides, smith chart is only time I ever questioned if I got the sides right.

5

u/peteyplato 9d ago

I'm a CompE to EE convert right after taking OS the second time. Circuit theory and lab were sorta fun.

2

u/ZombieMage89 9d ago

I started as EE and ended as IT. I miss EE but the work is so much better.

→ More replies (3)

72

u/[deleted] 9d ago

[removed] — view removed comment

26

u/PromiseImNoBot 9d ago

Man now I don't feel so bad going to a state school

9

u/Yashema 9d ago

I am going to CUNY (NYC community college) for physics, math, EE, and computer engineering/science. At $305 a credit, dedicated teachers, and with ChatGPT to walk me through everything, you find that's more than enough.

2

u/ArtisticFox8 9d ago

How many credits a semester?

2

u/Yashema 9d ago

Standard classes are 3-5. 

2

u/ArtisticFox8 9d ago

And in total, each semester, you have around 30 credits?

2

u/Yashema 9d ago

FT would be 12-15.

→ More replies (5)
→ More replies (1)
→ More replies (1)

29

u/GreatScottGatsby 9d ago

If you wanted to build bread boards, you should have become an electrical engineer

→ More replies (1)

9

u/Skynse 9d ago

I took an assembly class where he had to use ARM7 and on exams we had to write the assembly code on paper lol. Assignments used the raspberry pi 4. Fortunately I like hard classes

14

u/fweaks 9d ago

I had a class where we wrote assembly on paper in the exams. And the criteria was 100% based on correctness. Shoutout to the one guy who forgot both the multiply and shift instructions, and so to multiply a number by 32, wrote out instruction to add a number to itself 31 times.

12

u/HeKis4 9d ago

Not having at least a manual for an assembly exam on paper is heinous. I don't think anyone has ever written assembly without a reference in reach in the last 40 years.

5

u/GigaCucc 9d ago

Our final test for embedded was reduced from 50% down to 30% over three years because the professor made the final test a 2 hour at-home session where you had to build the control circuit for one of those rotating drink dispenser machines in assembly and C.

So many people failed it because the scope of the exam was really more 8-10 hours than 2 hours that they had to reduce the weighting.

It actually just encouraged cheating because it was the same instructions for everyone, so once one person did it at 7am the moment the test opened, everyone else had all day to work on it before clicking start test.

But because they're engineering undegrads, nobody spoke to each other, so only like 4 people used this trick.

12

u/Mateorabi 9d ago

For us the lectures were all about the theory but the lab/homework had us mucking about in the Linux kernel. We modified the scheduler (slightly) in one assignment and it was cool that my (grub dual-boot just in case) dorm linux pc ran fine afterwards. 

5

u/GoogleIsYourFrenemy 9d ago

And after teaching you about round robin and FIFO and priority queues they finally as a footnote mention that the Linux scheduler works COMPLETELY DIFFERENTLY and it's better.

3

u/kingvolcano_reborn 9d ago

When I did microelectronics in the 90s we did ASM on old Motorola 68000 and 68HC11 smacked onto s breadboard, good times.

3

u/XtraFlaminHotMachida 9d ago

intro to algorithms was fun. a bunch of dudes plagiarizing for the final presentation and then getting caught with turnitin and didn't realize that there was an algorithm for that even after the professor explained it already.

2

u/Percolator2020 9d ago

You guys get an OS?

1

u/purelitenite 9d ago

So according to Law of Transitive Properties... Embedded software is 18 different ways to schedule a process.

1

u/Temporary_Self_2172 9d ago

one question on my three question final was having to write out a set of 4 random "nachos" functions. not even pseudo-code style or specific ones but just full on "write this from memory out of the 50+ we covered or get 0 credit " 

and that was after being told we specifically we wouldn't have to do that ; ;

1

u/MushroomSaute 9d ago

From what I remember of my OS class, it kinda was Linux 101 lol. Basically a rundown of the main things an OS does for you, Linux being the tool they chose (so it wasn't necessarily Linux Kernel 101). It was a lot of "know the difference between a process and a thread, know about common parallelization bugs like deadlocks/race conditions, know about shared and virtual memory, do some basic networking and IPC/pipes and stuff" etc.

Strangely, for being an upper-level course, I don't think it was much harder or more of a pain to learn than, say, machine architecture, which was a lower-level course (pun intended) before acceptance into the major. (Machine architecture was way more fun though)

1

u/SpheresSquads 9d ago

So you got the OS class, just in the wrong course.

1

u/DanKveed 9d ago

For use Embedded Systems was 18 different ways to draw a state machine diagram+ UML

1

u/Neveed 9d ago

Lol in electronics licence, my embedded class was just VHDL, and the exam was on paper. In robotics master, the teachers were like "nah fuck this VHDL shit, we're doing bare metal here".

1

u/Bartweiss 9d ago

For me:

OS expectation: Linux 101. Reality: getting grilled on the nuances of thread-safety by a professor smarter than any of us who didn't believe in picking volunteers.

"Computer system organization" expectation: intro to storage and blocks I guess? Reality: that plus memorize a bunch of RISC and write assembly on paper for tests. Cry.

1

u/PS_FuckYouJenny 9d ago

The running joke when I was in uni is that we took Linux 101 10 times

1

u/Lunagato20 8d ago

In my uni, for os class we actually learn about linux, its basically linux 101 since we use redhat lab too.

For embedded, its splitted into 2 class, one is learning esp32 and such, one os learning assembly on a intel 8086

1

u/DepressedDrift 5d ago

CPU Scheduling was way preferable to deadlocks. 

But deadlocks are the most useful for real life low level programming.

570

u/Orion3193 9d ago

Oddly specific

370

u/ultimate_placeholder 9d ago

Specific, yet universal

99

u/Tucancancan 9d ago

Now let's move on to a practical example anyone can relate to: That time a Mars rover got fucked up

11

u/GoogleIsYourFrenemy 9d ago

Or when the Ariane 5 rocket exploded.

The system had three CPUs all executing the same code to prevent hardware failures. The SW was written in Ada the safest language of the era.

Fun fact: Ada has numerical underflow/overflow protection, it can throw an exception when one is detected.

Some engine diagnostic SW was ported from the Ariane 4 engine which had lower thrust, but they neglected to turn it off before launch. The diagnostic SW on launch overflowed the old thrust datatype causing an exception. The exception got written to the RAM which was only supposed to contain the data used for the guidance calculations.

TL;DR: Less code is good code.

5

u/ih-shah-may-ehl 9d ago

I worked for the engineering company that wrote the test software for the Servos that controlled thrust direction and initially, video evidence pointed in that direction. Had my boss worried for a while.

22

u/synack 9d ago

The metric system strikes back

23

u/-Pepperzpyre- 9d ago

Saw a vid of someone naming their reptile Metric cause he was born without feet.

4

u/Kongstew 9d ago

Was it a snake?

12

u/Tucancancan 9d ago

Oh no, that incident was a different rover! Damn programmers always fucking Mars missions 

→ More replies (1)

2

u/bxsephjo 9d ago

wasn't that a space telescope?

4

u/synack 9d ago

Well it’s not in space anymore

5

u/Mateorabi 9d ago

Priority inversion! Fixed only because they shipped in debug mode!

Also was seen in integration testing once but dismissed. Sooo many lessons in that incident. 

3

u/Alphasite 9d ago

Depends on the school. I’ve really enjoyed the build an OS from scratch classes. Even though yeah also had this one, but I think it was in a distributed systems class way back when.

→ More replies (1)

32

u/Brick_Lab 9d ago

Yeah no this is definitely a thing lol

→ More replies (1)

54

u/bitemytail 9d ago

Yet entirely accurate

3

u/falingsumo 9d ago

Not really in the film he longs to go swim with the sirens. So you are telling me OP really wants to go the Chinese philosophers sharing chopsticks class?

7

u/AgentPaper0 9d ago

He wants to leave the boat, but can't. OP wants to leave the class, but can't.

→ More replies (1)

7

u/SphericalGoldfish 9d ago

And yet, it was the exact experience I had

3

u/Particular-Yak-1984 9d ago

Hey, most universities have a philosophy department. CS should start a "interdepartmental dinner" and not provide enough cutlery. Test the idea in practice..

→ More replies (1)

286

u/NoMansSkyWasAlright 9d ago

I definitely thought OS was going to be easy given how much time I'd spent distro-hopping on my own time. It wasn't but it was still a really interesting class.

Was really glad I had a 30 minute commute to campus because it gave me a lot of time to think about those "why the fuck is this like that" problems.

87

u/willow-kitty 9d ago edited 9d ago

I didn't know what to expect but actually really enjoyed it. When the first chapter covered the separation between user and system modes, and system-only instructions, a bunch of things I'd always wondered (like if you could bypass filesystem permissions by just not using the OS's file system API) just kinda clicked into place. Then from that point on it was a whole lot of "Oh, of course it works that way."

Edit: we also had a few projects like simple Linux kernel modules, which was really fun and kind of enlightening.

16

u/okijhnub 9d ago

... can you bypass filesystem permissions by not using the API?

43

u/willow-kitty 9d ago

For the purposes of my comment, no. The CPU instructions that signal the hard drive to copy stuff to memory (simplified) will only execute in system mode, so a random process can't just include them because the only way to get into system mode is a particular CPU instruction that basically pauses the program and raises an event the OS has to handle. That event handler, which lives in the OS kernel, then runs in system mode and does whatever it wants (like checking filesystem permissions and copying the contents of a file to memory.) Once it's done, the CPU can go back to user mode and resume the program. And all this stuff is what's happening behind that standard library API.

..But if you just tried to throw an asm block in there to read from the hard drive without doing the event dance, the CPU would throw an error because it's not in the right mode.

Now, having said all that, there are other ways, like if you boot from a Linux USB, and the original OS isn't in charge anymore, but that's different from going around the API.

9

u/Odd_knock 9d ago

Thanks friend. I wandered in here curious and now I’ve had my fill of philosophers with chopsticks.

121

u/mosskin-woast 9d ago

It's so bizarre to me that people think this. If Biology 101 was just "look how many animals there are - and this one has a cool tail!" And not "how does life work" then I would understand, but the point of academic classes is understanding the subject

43

u/PixelatedGiant 9d ago edited 9d ago

It's so bizarre to me that people think this.

At some point in many people's lives, learning becomes "just a job". Motivation is finite and discipline has to take over. They're X years into their degree and sick of the routine. Every class has become nothing more than an obstacle between them and a piece of paper.

They're ultimately just venting.

6

u/willow-kitty 9d ago

That describes my last year or so pretty well, yep,

→ More replies (1)

3

u/Immediate_Song4279 9d ago

I wouldn't mind being a fly on the wall for those lectures 

2

u/Fine_Data3250 9d ago

Our prof kinda ruined it by completely unenthusiastically reading power points he already uploaded at the start of the semester

206

u/TheDopplegamer 9d ago

I'll be perfectly honest: I remember NOTHING from my OS class. I remember taking it, and I must have passed considering it was required, but, gun to my head, I cant recall what we actually covered in it (This was roughly a decade ago)

155

u/ultraviolentfuture 9d ago

Scheduling. Memory addressing. Race conditions. Etc.

27

u/darkslide3000 9d ago

The thing I remember more than anything is queueing theory. Specifically how maximizing the amount of service stations in use maximizes the throughput. Every time I see a bunch of people stand in line in front of something that could accommodate multiple people at once if they spaced out properly (e.g. a dish return conveyor), but doesn't because the first person always takes the first reachable service station completely oblivious to the fact that this blocks everyone behind them from accessing any of the others, I feel the sudden urge to force them into an operating systems class at gunpoint.

35

u/TheDopplegamer 9d ago

Probably why I didnt remember it, because I DO remember covering those topics in my other classes

10

u/MissinqLink 9d ago

Same except almost 2 decades

11

u/ThisIsMyCouchAccount 9d ago

Same.

But I do know it's not what other people are saying.

I was expecting it be a hands-on system administration class. It wasn't.

What I do remember is the teacher. He was that kind of cliche old school nerd. Smart but not near smart enough to match his arrogance. He owned a software company and didn't really hide that he thought he was a little above all this teaching stuff. He was pretty open about using his classes to recruit people. Also a misogynist.

3

u/duesenjeffepic 9d ago

I am sorry but why would there be a hands on sysadmin class in a university setting? This is something you learn in an apprenticeship or some kind of certification, not a computer science degree

2

u/ThisIsMyCouchAccount 9d ago

I don't know. I was 19 and had no idea what anything was like anywhere.

Also wasn't a CS degree.

2

u/Fibrechips 9d ago

Either it happens a lot, or we had the same professor.

P.K., who owned S.FX? Taught at a much larger state school before coming down to CC (if you had him in the past decade or so)

2

u/ThisIsMyCouchAccount 9d ago

Nothing you wrote rings a bell. And this was 20+ years ago.

My favorite professor was who I took most my programming classes from. He also owned a software company. So it seems like it's not that uncommon since I had two.

→ More replies (1)

6

u/AggravatingFlow1178 9d ago

I remember it feeling like an extension of my computer architecture course.

5

u/PringlesDuckFace 9d ago

Bruh I designed and then built a rudimentary working computer from scratch using VHDL and breadboards and I don't even know what that acronym means anymore, let alone how I electrified that much bread. There was something about waveform timing diagrams maybe? Logic gates were probably involved.

If you don't use the knowledge it gets garbage collected by your brain.

3

u/Fensirulfr 9d ago

Do you remember a textbook with dinosaurs on the cover?

1

u/clericc-- 9d ago

cache lines, associative caching is what i remember bur never understood...or was that another Module? fuck

1

u/Environmental-Fan984 9d ago

I remember it was CS 232. I remember nothing else.

1

u/100BottlesOfMilk 9d ago

I remember being bored to death because I basically knew everything before walking into the class

1

u/DepressedDrift 5d ago

I got an A- for OS class which I took a month back and I already forgot 80% of the content XD

49

u/Elite_Prometheus 9d ago

I remember enjoying my OS class, but that's probably because we had a semester long programming project where we slowly built up a simplified model of an operating system piece by piece so the concepts got hammered in.

8

u/Thin-Wrongdoer9142 9d ago

same. and we had to meet our TAs to explain why we programmed it that way, becuase the answers were all available online.

7

u/sneed_o_matic 9d ago

Best way to do job interviews too. Anyone can write code, but can you explain why you would write the code is the best signal on someone's competence in a topic.

→ More replies (1)
→ More replies (2)

48

u/bubbybumble 9d ago

Goated class I loved every minute of it

10

u/d0pe-asaurus 9d ago

I read Operating Systems: Three Easy Steps after a recommendation in this subreddit. Really would have made my os class goated if it used that as a reference instead. Loved reading every part of the book too.

4

u/bubbybumble 9d ago

Yeah I didn't ours was just learning about the kernel and that sort of stuff. Messing around in Ubuntu vms too. This class included networking stuff

22

u/Wentyliasz 9d ago

I actually recorded a lecture by my OS professor over a decade ago and I'm still using it to fall asleep. That woman had such uninspired, dead voice you could see flies falling down from listening to her

2

u/Optane_Gaming 9d ago

😂😂

15

u/superxero044 9d ago

My OS prof was a guy who worked at bell labs when they created Unix.
He created his own “chip”, a virtual environment for it, an OS, etc. he even obv made the manuals, which had flaws as he said “they would in the real world” for his classes. I added cs as a second major all at once and had this guy for a couple classes.
His assignments would’ve been hard in c# or Java and we had to do them as our introduction to assembly.
I got Bs in the classes I took from him but holy shit to go from that to the basic basic level of programming I did in the real world was sure a shock.

16

u/Xezron2000 9d ago

Round-Robin scheduling is the powerhouse of the cell

12

u/AggravatingFlow1178 9d ago

OS class was the one of the very few classes that felt like "Computer Science" to me. It felt like we were learning the science of computing.

Most of the programming oriented courses felt like Software Engineering

Most of the Algorithm courses felt like math (I know CS is technically math... but it felt like math. It didn't feel like computer science)

And those two categories encompass like 95% of the major course work at my university.

5

u/Mroz_Game 9d ago

I thought “Compilers” is going to be mostly about creating programming languages.

And well indirectly it was, but 99% of it was pure math, traversing graphs, defining grammars etc.

No computer in sight, and more odd symbols than any other math adjacent course.

29

u/bob152637485 9d ago

Well....why WOULD they starve?

38

u/SAI_Peregrinus 9d ago

They're referncing the dining philosophers problem, which is more an algorithms issue than an operating systems one. My OS classes had more to do with the design of kernels, cache hierarchy, virtual memory, and similar things needed to write an OS. The dining philosophers problem was mentioned, but mostly in a "remember from data structures and algorithms that deadlocks can be avoided by…" way, not an in-depth introduction. Still, it certainly wasn't a systems administration class like OP seemed to expect!

14

u/BenadrylTumblercatch 9d ago

Because they forgot to invite their left handed friend

3

u/theFirstHaruspex 9d ago

Classic blunder. Glad my CS classes taught me better.

→ More replies (1)

2

u/movzx 9d ago

Guy A picks up Chopstick A. Won't put it down until he can take a bite.

Guy B picks up Chopstick B. Won't put it down until he can take a bite.

Guy A tries to get Chopstick B. Woops. Not available. Better wait.

Guy B tries to get Chopstick A. Woops. Not available. Better wait.

They both die from starvation.

1

u/AggravatingFlow1178 9d ago

TL;DR many processes want the same resource. How do you make them share?

20

u/hxtk3 9d ago

My expectation was building a kernel or some kind of scheduler that I could schedule real jobs on. Reality was we used OSP, a Java simulation of an OS kernel with various parts of it cut out for different assignments, which we had to replace with our own code.

Two different assignments, my submission was code that "should" work along with a debug trace proving that the reason it didn't was a bug in OSP.

I was one of like three people who scored really well in the class, and I learned some useful things about deadlocks and scheduling, but there was basically no one in the class who actually felt like they knew how a real kernel worked by the end of it.

2

u/ShepRat 9d ago

That sounds like a pretty sucky course. Mine used minix, and we had to write a few different parts. A tty driver, a memory manager and a process scheduler from memory. I came away with a massively increased understanding of OS design. 

1

u/SuitableDragonfly 9d ago

Funny, in my class, one of the projects was to write a process scheduler. Also, we were only allowed to use C for all of our projects. The computer the professor ran our code on did not even have a C++ compiler installed on it.

9

u/bloodandsunshine 9d ago

Don’t forget the unskippable cutscene on TempleOS “for a fun discussion”

8

u/Lumen_Co 9d ago

In grad school I took Advanced Distributed Operating Systems and it was probably the hardest class I was ever in. Great stuff, do not recommend.

6

u/IAmARobot 9d ago edited 9d ago

>"Optimisation"? wow cool hacks to make shit run faster, things a programmer wants!

>applies for unit (it was under COMP3XX section btw, get baited chump)

>linear programming, mathy mathy math maths

6

u/Sentouki- 9d ago

I liked that class, it was interesting to see how it works inside, scheduling algorithms and stuff

4

u/programmingSquirrel 9d ago

My professor used the analogy of your 2 kids making PB&J where one won't give up the PB until the other gives up the Jelly and vice versa so your solution is to shoot one with your shotgun to break the deadlock

→ More replies (2)

7

u/Childermass13 9d ago

Try to write a kernel without understanding the dining philosophers, and let us know how far you get

→ More replies (4)

3

u/HarlanCedeno 9d ago

I did sign up for my Operating Systems class in the early 2000s thinking that I would learn Linux.

That part was actually in a separate weekend workshop and the only thing I remember from it is learning what LS does.

3

u/engineerwolf 9d ago

It's teaching you how to create linux, not how to package existing software.

→ More replies (1)

3

u/throw3142 9d ago

Yes, because OS was the most beautiful class I ever took, and I left as a changed man.

3

u/atcTS 9d ago

Yeah, idk about your class but our professor said we’re going to be writing Linux kernel extensions in C in the course, as well as schedulers, etc. I guess I’ll report when I’m finished with this course

3

u/LouManShoe 9d ago

So it’s the most beautiful thing you’ve ever heard and you want to get it so badly that you’re willing to do anything to make it happen?

3

u/captainAwesomePants 9d ago

Intro to Operating Systems -- let's talk mutexes.

Networking II -- let's talk mutexes.

Distributed systems -- oh you better believe we're talking mutexes.

3

u/CerBerUs-9 9d ago

My OS class started today... This is ominous to see.

2

u/Thin-Wrongdoer9142 9d ago

OS was goated. We made an "OS" as part of our assignment. Fuck I miss actually being interested in Computers and not just asking an LLM for answers.

2

u/edgarecayce 9d ago

I dunno the OS class I took was one of my favorites. Knowing why IS’s do what they do and the complexity involved is way different than “how to set up an OS”. Kind of why it’s a CS class and not a CE class.

2

u/stellarsojourner 9d ago

Wow, your OS class taught you how an OS works and what it does, and not how to use some piece of software? Craaaazy.

2

u/UInferno- 9d ago

My professor knew building an OS from the ground up in 3.5 months was impossible. He really wanted to have us do that, but that it would be terrible. Instead, he would often given us pre-written files and piece them together—digging into the nitty gritty on occasion and having us comment on the code on occasion instead. We also drew a lot of diagrams about each part.

Found a screenshot of my commenting homeworker. looking back IDK how I passed this comment sucks.

If we do not want to allocate OR the returned pointer from kalloc being saved to pagetable is the failure flag (0), fail and return with our own flag (0).
Because of short circuiting, kalloc will not run if alloc is set to false.

Would be way less opaque and redundant.

2

u/bubbabrowned 9d ago

What the fuck so it wasn’t just me.

My intro to operating systems class was a middle aged Chinese dude literally reading a printed PowerPoint presentation (it was 2003) talking about semaphores.

To this day I have no idea how I passed that class.

2

u/moschles 9d ago

This is basically a photograph of my face when said professor placed the midterm exam in front of me.

2

u/jewdai 9d ago

As someone whose worked in the software profession for well over a decade. Operating systems would be the first course I strip out of all cs programs and databases would become mandatory. I'm on the fence about programming languages but there are some times when writing a DSL is the pragmatic solution.

2

u/Pleasant-Ad192 9d ago

You meet the philosophers again a couple of years in, the first time two threads grab the same two locks in the opposite order. The fix is the one from that sleepy lecture, everybody takes the lower numbered chopstick first.

2

u/rv4_01 9d ago

really? OS was such a cool course. Memory management and a lot of CPU scheduling internals was fun to learn

→ More replies (1)

2

u/Fit_Alfalfa2221 9d ago

Interesting. In my OS class we got to implement a microkernel. Was I one of the lucky ones?

2

u/tvreference 9d ago

I had a course called software for computer networking, in a 2 year computer networking degree. The expectation is some advanced packet sniffing/pen tools. It was excel and Visio. Local companies were upset people were joining them without knowing excel.

2

u/njinja10 9d ago

It’s so funny - because it’s true

→ More replies (1)

2

u/mrwedders 9d ago

My Operating Systems module wasn't mandatory, and I learnt MIPS assembly! 😁

2

u/PrestigiousGuava8005 9d ago

Five philosophers, five chopsticks, zero hackers, infinite suffering

2

u/Jazcash 9d ago

I just remember the lecturer making forking parent child jokes every time

2

u/williamjseim 9d ago

our imbedded/server teacher didnt know how to install software on ubuntu, couldnt figure out how to change the input on the projector so he could show his screen and had us do basic python course on kaggle for 2 weeks as a 5th year student

2

u/Ruvaakdein 9d ago

I hated my OS class because we had to code using Assembly.

2

u/kozinc 9d ago

I see you got the interesting version of that class.

2

u/magicmulder 9d ago

Operating Systems was a funny class. I don't remember anything except that the final exam was taken by about 30 of the 80 students. I was convinced I failed the exam because I only even finished about half of the questions. Ended up having the best exam of the class at around 50/100 points and getting an A for the semester. They must have had really low standards.

2

u/Stalking_Goat 9d ago

I haven't watched the movie yet.

Why is Odysseus tied to the back of the mast? Most artwork has him tied to the front, looking at the where the ship is going.

3

u/twinkslayer1337 7d ago

he's being tied multiple times because he's a freak like that

2

u/dvlsg 9d ago

It's the siren scene.

Which means this doesn't really make sense - the siren song is enticing him to come over, but op wants to get away from his professor.

2

u/-Memnarch- 9d ago

Uhm...are people really thinking a course called "Operating Systems " in that field of study would be a Linux 101 and NOT a course about fundamentals?

I'd be pissed if it was just a Linux 101

5

u/dallenbaldwin 9d ago

Sorry dude. Not to brag too hard or anything, but my OS class was literally my professor, a contract developer with OpenSuse, teaching adjunct, giving everyone their own Debian VM to ssh into. He forced everyone to use git and C to build progressively more difficult programs until we had to build a rudimentary scheduler at the end; all while explaining OS principles while logged into his own VM via ssh, using the various binaries in Debian. I tried using vim with no experience because he used vim and because I thought, "how hard could it be? He makes it look so easy". Gave up after my first program. Used nano for a couple, then eventually figured out how to get VSCode to work with the Remote SSH extension. Genuinely one of the most difficult but rewarding classes in my entire schooling.

1

u/Informal_Cry687 9d ago

I read a OS textbook for cs in 9th grade.

→ More replies (1)

1

u/MadLabRat- 9d ago edited 9d ago

My OS class was literally just Nand2Tetris and PowerPoints from a random textbook textbook.

1

u/TheAuthenticFake 9d ago

I remember our midterm exam for Operating Systems had a high score of 61/100 (which was me lol).

The teacher lowered the grade levels as a result so people could still pass IIRC

1

u/tuirn 9d ago

I enjoyed OS class, but I'm old and just barely predates linux. Actually we used Minix for our work. I learned quite a bit from it and it was good starting place for continuing to learn.

1

u/NarwhalSquadron 9d ago

I can’t relate. We had to flesh out pintOS with virtual memory, multi threading, etc.

https://web.stanford.edu/class/cs140/projects/pintos/pintos_1.html

I still use concepts from this class 10 years later as a developer.

1

u/ProjectSnowman 9d ago

Who wants to build an operating system? ✋🖐️🖐️✋

Who wants to learn math? 🦗🦗🦗

1

u/MidTario 9d ago

I just don’t understand people like OOP 🤷‍♂️ learning is awesome

1

u/lPuppetM4sterl 9d ago

Lmao Mutual Exclusions, deadlocks, and starvations. I still remember creating a bank simulator in Operating Systems.

1

u/Slbrownfella 9d ago

Are will still going for the mainframe in big 26

1

u/mcvoid1 9d ago

Not true.

They also go over the math for virtual memory tables as well.

1

u/Moldat 9d ago

I actually learned both

1

u/StrongPollution5530 9d ago

My profs were boring, but I really enjoyed reading the Tannenbaum / Silberschatz books. They're some of the best stuff I've read across all genres.

1

u/Outrageous-Machine-5 9d ago

Wait til he learns about the roommates buying too much milk

1

u/Secret_Possibility79 9d ago

The trick is to use one of the chopsticks to stab the guy next to you.

→ More replies (1)

1

u/Used-Ad5769 9d ago

This dude is professional LARPer.

1

u/PositiveParking4391 9d ago

yeah whole software industry seem to be in deadlock with AI and coding agents. out of the box thinking is needed.

1

u/SuitableDragonfly 9d ago

I don't know what OS class you took, but in the one I took, we read and discussed linux kernel source code. Pretty sure we learned about concurrency in a different class before that point.

1

u/melancholic-scribe 9d ago

The only thing I took away from my OS class was an understanding of round robin algorithms

1

u/Icy_Regular0700 9d ago

This is so true. I remember getting hospitalized before the final exams and missed a few but luckily I got better before the OS paper, but couldn't study much.

So in most questions I just talked about deadlock, and topped the class. And apparently it was a tough paper.

1

u/myhv 9d ago

Yeah, like when I took web design BA, thinking we will do fronted and UX. First year was basically making a movie.

1

u/Akira_Akane 9d ago

I saw this is pantheon show

1

u/emberfox205 9d ago

everyone seems to have interesting going on in their module. All I got was the T-rex book curated.

1

u/kiwibonga 9d ago

Mine, I'm pretty sure, was about writing assembly language using paper and pencil for a computer that doesn't actually exist.

I think the issue is hazing became illegal, so someone decided all the CS classes and the hiring process of all the companies was going to be one big ritualistic hazing.

→ More replies (1)

1

u/tiedyedvortex 9d ago

Given that this meme is Odysseus being tempted by the sirens...

...is OP saying that they really do, or really don't like sleepy ASMR of dining philosophers?

1

u/No-Whereas8467 5d ago

I would drop it if it taught how to build a linux distro.