the video. This is the brilliant one. Wow. No, absolutely not. Clearly not for me.  Books that are not worth the hype. This video is part one of two. In part two I will talk about books that are worth the hype. It's not all negativity around here all the time. I thought we'd start negative and end positive. So today is books that I feel were not worth the hype. This is of course a reflection of my personal opinions, tastes, and feelings. This is not universal. I do often like to say that it is because I feel in my heart that it is. I do not promise that I won't use words such as this is objectively bad but you know these are my thoughts and feelings. So it's also this list is in no particular order so I'm not going from like worst to best or best to worst or anything like that. This is by no means an exhaustive list. This is not every hyped book that I feel is not worth the hype. There are certainly many hyped books that I disliked that are not on this list. These are 10 books that most came to mind when I wanted to put together a list of books that I felt were not worth the hype. So number one is The Way of Kings by Brandon Sanderson. If you're new to my channel it's been actually a little while now since I took down the video. If you don't know this the entire reason that I started a Patreon was because of my two Sanderson videos. They were getting so much hate and I was like joking with friends and I think one of my friends suggested it that basically to put a paywall up to make those videos patron only videos so that if you wanted to come and yell at me you'd have to pay for the privilege and that's why I started a Patreon. So if yeah if you've never seen those videos the only way to see them now is to be a patron. The Way of Kings like I said if you're new to my channel then you may genuinely not know about my infamous hot take that The Way of Kings sucks although I feel that people have brought it up enough to where it's in a common collective memory at this point. One of my most famous hot takes. Yeah I thought Way of Kings sucked and over the years there's been many a time when I've had so much FOMO because like man the Sanderson fandom they are they are mighty and anytime Sanderson does anything they are there for him. It's kind of cool to see and it makes me always go oh I wish I could be a part of that and it makes me go maybe I should maybe I should give it another chance maybe I should try to read words of radiance but then I remember about all the stuff that was in Way of Kings and I thought was so dumb and I'm like there's just no way that any of that's gonna be any different in the rest of the series so yeah no I I do not understand why people like Way of Kings. Even if the next one is better which most people say that it is I like I said I'm fairly certain and I also believe people have confirmed for me when I've asked that the things that I am aggravated by are not fixed so it's like pacing better um things like I guess maybe character development is better or something like that but like it's like world building stuff which is supposed to be Brandon Sanderson's big claim to fame like he's the world building guy I think his world building genuinely sucks I think it's so bad and it just baffles me that people think it's brilliant I read Mistborn and I thought the world building was like pretty cool I quite liked the world building in Mistborn and people were like Mistborn you ain't seen nothing yet his true like the pinnacle of what Brandon Sanderson can do is the Stormlight archive so I was like all right let's go and I read the Way of Kings and I was like what this is the brilliant one this is the one that's the end all and be all of fantasy world building I have so many questions and problems and criticisms like my video was like an hour long admittedly it was an hour long because a lot of it was me just kind of like being frustrated so it's not a straight hour of listing points I'm not gonna claim that but there were so many things that I thought were badly done made no sense were not coherent did not make sense when combined with other things were just baffling decisions and then I also thought it was paced terribly I thought the characterization was like pretty poor there was just like no upside like I couldn't reading it I wasn't like well this isn't my cup of tea but like I get what it is that people are getting out of this genuinely years years later someone finally explained to me at least for them what they were getting out of it and I finally kind of understood what someone might be getting out of it that is definitely not something I would ever get out of it and it's like the way that he makes certain parts of his magic be kind of like a reflection of real world like principles in physics or something like that and my dad loves the stormlight archive he didn't pass that gene on to me and he's uh he was an aerospace engineer so if that's what he's getting out of it I kind of understand and if that's what people are getting out of it like I kind of understand but I also just feel like the average person is not going to pick up on that or be aware of that so like truly I can't say that I understand why people like it because I don't think people are getting you know physics out of the stormlight archive maybe they are maybe I'm wrong but real building and characterization and pacing and storytelling like oh atrocious in my opinion um clearly not the majority opinion and I to this day do not understand when people are getting out of this so yeah definitely not worth the hype you know how I said the sanderson fandom does show up for sanderson while my camera overheated conveniently uh just after I finished talking about sanderson so they were too late to stop me but we're back in business now and I'm ready to talk about the next book on my list which is the forgetting moon by brian lee derpy this book is not I wouldn't say like widely hyped like in the greater book reading universe but in my corner of booktube the fan of the adult fantasy corner of booktube it's quite hyped and a lot of creators that I respect admire follow regardless friends all love the forgetting moon and generally the five warrior angel series because of that because of how much they love it even though I was not liking the first book really at all I was like well they all seem to love it there's got to be a reason so I like gave it a hopeful three stars hoping slash expecting that the second book in the series would would justify that would reward the faith I had placed in it and oh boy that series well I have not and will not read the third book but the first two of the three books are just everything that I hate the characterization is terrible the royal building was not very good and the way it was delivered was through info dimson expository dialogue the themes and like the message of the book was delivered to the most ham-fisted aggressive here's the message guys way that beggared belief in terms of like what's going on in the story the way characters stop the story to tell you the message and also it's just insulting to me as a reader I'm like yes your message is so painfully obvious just in a way you're telling the story and then you also have characters stop and tell me the message because you were afraid I still didn't get it like sir sir we get it's not a very original message it's not a very clever message it's not a brilliantly nuanced message it's um it's just it's not it's not good and it has the tone of like the author being like I have it's like um like a kid that's gone to college and taken you know intro to philosophy and come home for Christmas break and it's like I have some deep thoughts that no one has ever had before let me tell you the let me share my wisdom with you and it's like these are not deep thoughts um or at least they're not very original thoughts like I'm glad you're discovering these thoughts but this isn't new this isn't groundbreaking you're not really doing anything here and then the handling of women was just egregious offensive and just bad where again it's like there were these moments where I was like I think you think you're being feminist and oh boy you are not so just just yikes basically just yikes wow no absolutely not next up I have legends and lattes by Travis Baldry I believe I would not have picked this up I kind of feel bad putting on this list because like I tried in making this list to not put books that are like just so absolutely not my kind of thing to where like there was just never a chance that I was going to like it for example like ice planet barbarians if you're expecting to see it on this list wait did I put it on the list no I didn't put it on the list and that was why I thought about it but I was like because it's really hyped and I hated it but also like I wouldn't have read it if I hadn't been made to read it because I knew that I wouldn't like it and that's just kind of not fair because I don't do that I don't pick up books that I think I'm gonna hate on purpose just or rant about them people seem to think that I do that and I really don't if I'm reading a book and I'm choosing to read it it's because I hope and expect to like it if I'm reading a book with the expectation of hating it it's because someone's making me do it like for a book club or something like that but anyway um back to the book I'm actually here to talk about uh even though it does kind of fall into this category so legends and latte is it's cozy fantasy which is like the new the new buzzword and that's just like not a thing that I'm interested in at all whatsoever if you tell me that a book is a cozy fantasy book I'm like yeah nope no thank you not for me my patrons chose it for me to read in vlog so so I did I was like I'm not gonna like it and I didn't but I mean I didn't go into it being like determined to hate it I was like I mean I hope I like it I don't want to spend time reading a book that I hate um that that's not a good time so I was like hopefully I get something out of it maybe you know even if it's not my cup of tea I'll find something you know charming about it or whatever and I just didn't it was just the most boring and unamusing waste of my time I truly do not understand people are getting out of this I'm told people find it like do find it funny and that they do really like the characters and that they really enjoy reading about cinnamon rolls I don't like sweets and I don't like saccharine stories and I don't think it was like sweetly cute and like aw so cute like I didn't think it was that cute really and I definitely didn't think it was funny like the humor and it was definitely not my my humor I was just so I cannot overstate how bored I was I truly was like what is the point of this I I do not understand um if I meant to like feel good reading this I do not I mean in fairness my comfort character is sand and glock yeah um so this is why I would not choose to read that but like I have read books that like I mean I always talk about linking radiance by Grace Draven which is a romance book and I don't typically read romance but I really like the characters and that's how I always describe rereading it is like I just like hanging out with brishon and il dico like I just like spending time with those characters and that I can almost like kind of feel like oh that's just like cozy to me like just being with them and like I like their humor and I like their dynamic and just being around them as I read it is pleasant so like if that's what people mean with with legends a lot to is like I guess I understand that as a concept but I don't get how you're getting that out of this book because it was just so boring like these are not characters like I wish I could meet like these are characters that are like I would have polite conversations with at work over the water cooler because because you do that because they are in your proximity but I would have no desire to have any more than polite conversation as needed when necessary to coexist in an office like you're like so boring so uninteresting so unamusing I don't understand how people are getting out of it I don't cinnamon rolls like if that's truly what you're getting out of this like just just watch some recipe videos number four is an oldie traders blade by Sebastian de Castel one of uh not my first rant review but it's an early rant review on my channel I was reminded recently of it because someone commented on it which like people do comment on like old videos from time to time and usually it's not a comment that makes me like want to go back and look at that video because it's usually like oh good point thanks for the video or like I don't need something like that I'm just like cool but they said something in my in the comments of the of that video that made me go what did I say in that video it's been so long like I don't even remember so I did rewatch my own video to be like what did I say about this book and I was reminded of how horrible that book is oh that book is so dumb so like a lot of the stuff in it that happens that's really really dumb is quite spoilery and I'm not here to spoil books even if I don't think you should read them so if you want to hear um my full spoilery ranty thoughts about it um there is that old video of mine um I can't vouch for like the video quality and the editing quality it's it's old oh my god I forgot how stupid that book was so like I remembered that I didn't like it but the specifics I hadn't forgotten about and as I was like rewatching my video I was like oh yeah I forgot about that so bad oh and it's so bizarre too and it's so gross and so it's gross because like these are like characters painted as being virtuous and they do some pretty icky things and but like the the weird stupid parts I cannot overstate how bizarre those choices are while also being off-putting it's just one of the most baffling reading experiences I've ever had I don't understand the the mindset of the author in writing that book like what were you thinking sir did did your editor never stop and go are you sure are you sure about that I kind of recommend looking up spoilers if you haven't read it because like I trigger warnings probably I think yeah I don't think that's overstating it it's like oh it's like everything that you shouldn't do in a book it does it's like it it had been challenged to do to write a book where you break every rule of like what you're supposed to do in a book it's kind of impressive yeah I've heard the rest of the series is better but I was not gonna give it a chance after that first installment because I owe it nothing number five is uh Empire of the Vampire by Jay Kristoff there is a live show with me and Alex from last Halloween where uh I wore the obligatory black lipstick Alex did not we did have um a good time chatting about that book reading it no I mean Alex didn't even finish it he he dnf'd it I read the whole thing and it was 800 pages of nonsense the way I described it um in that live chat in my worst books of the year video wherever else I've talked about it um is that it's like misogyny and homophobia met up at hot topic it's just the most ridiculous offensive over the top edgelord bs that I've ever read I just oh it's it's once again kind of baffling and it's also baffling to me how many people love it I don't understand how like people look this is Jay Kristoff's best book yet I'm like how I truly do not understand like that that book is a joke and like not on purpose like it's it's like I'm laughing at it not with it and I'm still to this day traumatized by the number of times it used the expression truth be told or if truth were told or to speak truth literally to this day when books do this I flinch because it did it so many times an empire the vampire that it I can't I can't handle that phrase anymore it's a perfectly valid phrase I cannot hear it anymore and if I find myself saying it I also flinch like oh it's it's not good guys it's not good it's very violent it's very graphic it's very again misogynistic worldbuilding is stupid the narrative device of the character telling his own story is just that's already a format that like kind of beggars belief you have to have quite an immense amount of going with itness to have that be the sort of like framing device but this person is under duress does not wish to be sharing his own story but nevertheless he shares his own story in the most elaborate time-skippy jumpy um detailed 800 page telling and we keep checking in with the present day of him being like I'm going to tell my own story in my own way if I have to tell it at all and it's like stop reminding me that this is the premise because that's so unbelievable um anyway yeah so check out the live show with Alex if you're interested it was again it was a spoilery so if you're worried about that um then don't but I don't recommend reading the book so wouldn't worry about it next is a book um which uh probably shouldn't put on the list for the same reason that I was talking about for like a um oh what's it called I explain a barbarians but from blood and ash by Jennifer L. Armand Trout because again like I probably wouldn't have pitched this although I can't say that I would never have read it like I might have been curious to read it because like I read and enjoyed the cruel print um I read it and enjoyed shatter me so it's so hyped that like I might have been curious to pick it up because it's a fantasy book um even though like romance is clearly central to it so it was so hyped I might have picked it up I'm not going to say that that would not have happened at all probably wouldn't have finished it though if it hadn't been a book club pick that was also a situation where the world building and character development is just like non-existent what is there is bad and offensive and very questionable and really cringe and I was told that oh well even though this is like a swords and sorcery like old olden day kind of fantasy um that the the reason it feels so like weirdly modern is because the author typically before writing that had written urban fantasy I was like that makes zero difference that's fine that she wrote urban fantasy before that's not what this is so if you're not willing to adjust your style to this other kind of a story then don't write a different kind of story like if Ken Follett suddenly decided to write like a present day story but everyone talked like they were in the olden days you wouldn't be like well he typically writes historical fiction that's why everyone talks in this completely unnatural way you'd be like no if you've decided to write a story on the modern day then you need to change what you've typically done those that I'm not I'm sorry that's just how it works like you can't be like well I usually write this other thing so I'm just not going to try to be good at writing this other type of thing I'm just going to do what I always do like what how is that a valid explanation for why it is the way that it is I I don't understand I don't know what is appealing about the story or the characters or the fantasy of it I don't understand what's appealing about the romance of it it's just so long and cringy it's clearly not for me number seven I have Babel by RF Guang I have a very long review of this book which I'll leave link down below if you're interested where I went in depth unpacking and analyzing it from multiple perspectives I've been kind of like jokey throughout this video that's kind of the fun of this kind of video but with Babel like I don't even really want to joke because like I it hurt me that I hated it I wanted to like it and it remains a project that like a book that has that as its project is something that I vastly approve of and would want to love like the product that is the result of this project and the fact that it was executed in my opinion so badly really like hurts and bothers me because I think it's a very worthy project and it was very easy to identify so many things that could be fixed about it to not make it perfect but like to immediately improve it it wasn't fun to rant about that book it was very upsetting how bad it was and I had kind of had a suspicion that I would feel that way about it I had very much hoped to be wrong about that but to find that it was even worse than I thought it would be was genuinely painful and the way that people talk about it being so so so so brilliant is also concerning to me because like if people think that that is the best version of that I just I guess I can never hope for a genuinely good version of that because people think that what we got was brilliant and it wasn't so I don't know what to tell but that that wasn't it next I have the shadow what was lost by the islington islington first name escapes me I have that on my want to read for ages and ages mostly because of the cover very orange cover we love an orange cover and you know a chunky adventure fantasy book like it looked like very traditional fantasy I think it was um it like came into my awareness or was on my radar around the same time that I picked up dawn of wonder by um don't remember the author's name dawn of wonder I highly highly highly recommend and that's a self-published book it is really good and dawn of wonder was kind of being shown to me at the same time on amazon as shadow what was lost and so like because that was like linked in my mind and I kind of expected shadow what was lost to be like that and in some respects it is because like it is a traditional fantasy there is like questing and chosen ones and like it feels very familiar in that sense so yes I guess like I would say if you like shadow what was lost you'd probably like dawn of wonder but if you like dawn of wonder you wouldn't necessarily like shadow what was lost because I love dawn of wonder and I did not like shadow what was lost because like dawn of wonder is like the rothfuss version where it's like beautifully told and emotionally told and very like character driven and character centric and shadow what was lost was more like wheel of time which there's a lot of people to like that but I don't because it's not that way the prose isn't very good the characterization isn't very good um so then like with something like rothfuss or dawn of wonder the fact of the world being fairly derivative and kind of cookie-cutter and just very traditional fantasy not groundbreaking in any way doesn't really bother me when I'm so engrossed in the characters and the story and I feel that that is being told so well that I'm like okay well the world is like it's whatever it's a fantasy world but I'm I'm so here for the story and these characters that it's taking place in it but when it's like the shadow of what was lost and everything is like paint by number including the characters and their conversations and the prose is like just just barely serviceable that's just not gonna work for me it's not it's not my cup of tea especially when it's so freaking long because it's not giving me anything that's like if you're not gonna wow me with your prose or your character work then I better be really impressed with your world building and I definitely wasn't so I kind of get why that's hyped because like I don't understand why people like wheel of time but they do and because they do then I get why shadow of what was lost would also work for you because people are liking these things that I do not like but if you like the one I can see why you'd like the other in a similar vein number nine is malice by John Gwynne pretty much just like copy paste what I just said because people love malice uh the way they talk about the faithful and the fallen I was so hyped I bought all four books before reading it and then read malice and was like nope and got rid of full four it also felt very like derivative and cringy the character work was not good people say that what they love about that series is the characters which is like where why I decided there was no point in reading on because if it was like yeah if people said that it's the character work isn't what's great about the series there's something else about it I'd be like well okay maybe read and find out but if they're like oh yeah the weaknesses you cite like those are that's true but it's the characters and I'm like no no the characters are not good they're not well written they're not fully fleshed out they feel so derivative and or like plot convenience and the dialogue was so bad and there was so many of them and I couldn't tell any of them apart and the plot the way out of it was just felt so amateurish so incredibly amateurish and not in a way that's hopeful not in a way that's like this is a little rough but I see the potential it was just rough and the way people praise it where they're like oh it's a little slow to start but once you get into it I was like no at no point was I into it so yeah I don't get it I really don't and lastly is red sister by Mark Lawrence which is a book that started out strong when I first started reading it like the first couple chapters I was like I think this is gonna be a new favorite and then it took me like two years to finish it uh yeah I don't like that I have an old review of that as well um it's for a while I think that was like a darling a book I haven't seen people talk about it recently partly because you know the books all came out already so people were talking about it as it was coming out um but I never read past the first book it also felt very much like a dude writing a fantasy book where like he thinks he's being super feminist and it's like just because there's a bunch of women in this story doesn't mean you're being feminist that's not what that means it was yeah it's a little hard to explain because it's a little more nuanced it wasn't so like immediately and obviously bad it wasn't like now I saw or to the forgetting moon like I think the prose is pretty good and I think the royal building is decently interesting which is why at first I was like I think I'm gonna be into this it quickly fizzled and the plot seemed to go nowhere and the main character became not just it's okay if your main character is unlikable but unlikeable in a way that felt very like not necessarily intended by by the author it's it's unlikeable in a way that like the way that they're structuring the character and the way they're having the character respond to things in the world and like what it is where they're expecting you to buy into this that's just like not working at all so it's like very hard to to root for or sympathize or understand or even be interested in the main character um and then a lot of stuff like kind of like building off of that and the world building started to feel less and less impressive and less and less logical as we went and I just was less and less impressed with it and I was getting really bored with it and not loving the women how they were being handled by this male author yeah so in the end when people are like oh this is such a good series I was like no it's not though I mean I guess maybe books two and three like are really amazing but when I talk to people like the people who loved the series liked the first book as well and didn't really have my problems with it so once again I really don't get it but I'm glad I'm really happy for y'all if you love those books you know nothing I say can really diminish your joy in them which is um pretty much what I have to say about all these books I have probably pissed off every single person watching this video it's unlikely that you watch this and there wasn't at least one book here that you like so I'm sorry but again just because I hate it doesn't mean you like it any less so really it doesn't affect you at all I hope you found this interesting or entertaining or helpful or something but whatever you want to let me know I post videos on Saturdays other random times as well but I think Saturdays like and subscribe join my patreon if you feel so inclined and I'll see you when I see you bye


The Swedish national flag was raised at NATO headquarters in Brussels on March 11. The country has officially become the 32nd member of the North Atlantic Alliance, Swedish Prime Minister Ulf Christersson, Crown Princess Victoria and NATO Secretary General Jens Stoltenberg looked on as two soldiers raised the blue banner and blaze in with a yellow cross among the official circle of national flags at the headquarters in Brussels, Belgium, the Russian, Brutal. Full-scale invasion against Ukraine united Sweden behind the conclusion that a full-fledged NATO membership is the only reasonable choice, Christersson said. Swedish government ministers and party leaders from across the political spectrum attended in a show. AS the flag was raised, a military band played the Swedish national anthem. After over 200 years of neutrality, you are joining the strongest and most successful military alliance in history. Welcome to NATO, we are glad to have you here, Stoltenberg said during the ceremony. For his part, Christersson stated that Sweden has come home. Sweden is a proud member and ally of NATO, alongside our closest friends and partners. We are humble, but we are also proud. We know the expectations for Sweden are high, but we also have high expectations for ourselves, he noted.


And Jennifer Lopez and Ben Affleck have been spending time together after her split from Alex Rodriguez. Oscar-winning actor Ben is thought to have visited singer Jello at her home in Los Angeles numerous times, according to sources. Ben and Jen previously dated in the early 2020s, 2000s, and got engaged in 2002. However, Ben, who went to the separate ways before Jen married singer Mark Antony in 2004.


Hello, I'm Gianmarco Ferrari I'm responsible for NFC solution for the region America. We are here at CS 2023 And we're going to present you the ST Evala SmartTag 2 sensor node the platform So ST Evala SmartTag 2 is an NFC enabled Ultralow power sensor node capable to sense temperature pressure light and motion and also Transfer the data when is triggered by a smartphone NFC enabled The connectivity of the platform is given by the ST25DV is an NFC dynamic tag It's a passive device with a wireless interface NFC compliant To transmit the data to the smartphone and a wired interface and a square C bus to communicate with the microcontroller To retrieve the data from the sensor The microcontroller we use is an STM32 ultralow power Cortex-M4 plus We have sensors environmental sensor. We have an high accuracy pressure sensor digital barometer with 0.5 hectopascal accuracy We have a digital temperature sensor with high accuracy of 0.5 degree Celsius Ambient light is lax and CCT color sensor with True flicker extraction engine In terms of inertial sensor, we have an ultralow power accelerometer 16g accelerometer full scale with a finite state machine and machine learning core with QVAR sensing channel and anti-lizing filter We have the IG accelerometer is 100 200 and 400 g Dynamically selectable full scales and also an IMU is an ultralow power IMU We've also finished the state machine and machine learning core To to enable reliable motion tracking and Contextual awareness as optional Anesthe safe secure element that can be implemented to it's a certified security solution from the node to the infrastructure also optional We have preset NFC wireless charging to be able to charge the the battery of the node The sensor node that can work a battery power To be able to do Data logging of all the sensor data into the dynamic tag or it can work also battery less But the rest of functionality is provided by the NFC dynamic tag Energy harvesting capability. So when the phone is applied is is Connecting to the NFC dynamic tag provides Energy this energy that is not used by the tag is available on a V out pin And it's able to power all the all the node and retrieve the data without without power It's the avala smart tag to Platform comes up with a form factor hardware its own firmware a dedicated app for both Android and in iOS and also a cloud dashboard to be able to project Distance to monitor the node with is a telemetry geolocation and also time stamp Estee avala start up to can be used as a solution for a set tracking for Predicting maintenance or for battery less sensing the benefit of the smart tag To platform is basically is a low cost very low power easy to implement and to certified as a solution and Thank you very much for listening to this presentation if you would like more information You can find the at the city comm slash st25 all the information and the platform is also available For purchase at the city comm or your local distributor. Thank you very much


This conference will now be recorded. Dear participants to the Conference on Land Policy in Africa, my name is Leon Verstappen. I am chairing Foundation The Land Portal since its establishment back in 2014 and before I was part of the steering committee from 2009 to 2014. I am happy to address the Conference on Land Policy in Africa on the occasion of the 10th anniversary of The Land Portal. Since its inception in 2009, a lot has been achieved. If I look back to where we came from, to where we stand now, I can see very clearly that not only the website developed itself from an easy-to-use platform, a knowledge gateway into one of the main actors working to democratize the land data ecosystem globally, but also that the organization behind it evolved itself from a one-person does-it-all project to an independent organization with a team and an internationally and multidisciplinary composed board and advisory committee. We are critical on every step we take in the development of the website instead of jumping into every digital online opportunity that comes along. We are selective in the projects we embark on instead of participating in every action in the land community. We keep pace with developments in the internet through a constant process of adjustment of the website. We collaborate with almost 1,900 organizations worldwide serving them by not only having the website also to their disposal but also to offer services to improve their open data and give them a platform to present their organization to the land community. We help them to create and disseminate land governance data and information through linked and open data technologies. We are open to all organizations in the land community that stay an independent organization. Our ultimate goal is to democratize information making it easy to share and reuse. With a lean and mean organization, we took small steps instead of giant leaps. It proved to be the right policy. I am very grateful to all our funders in the land community who provided the necessary financial means to do all this. I thank all current and past board members that have served the land portal over the years on a voluntary basis. We had some very inspiring and sometimes tough discussions. I am particularly proud that we have a dedicated and skilled team. Without them, nothing goes. And I'm proud to having served the land portal for more than a decade myself. With the increasing importance of trustworthy information and data in our society, an organization as a land portal is indispensable in the land community. Thank you for giving me the opportunity to say some words on behalf of Foundation The Land Portal on the occasion of its 10th anniversary.


One thing we've learned about soap pen is that it can have a really big global impact. Over 1.5 million children under the age of five die each year due to infectious illnesses. A majority of these illnesses can be prevented by the simple act of washing your hands at key times. Soap pen is a soap pen. Kids can draw with it on their hands and when they take it under water it lathers and washes off. It's simple technology that can be scaled affordably and very easily in schools and in households across the world. It doesn't make sense to me that it's not easily accessible to everyone in the world. We saw the disparities growing up. We were lucky to have basic necessities and there's a huge population that doesn't even have access to soap. It was important for us to find something that was so fundamental to a child's well-being. If you just prevent that disease it's way better for the kid than them having to find health care which doesn't exist. Entering the soap industry as a startup is not easy. Obviously like with any other product there's technical expertise needed so we had a very good sense of exactly how we wanted to look, how we wanted to feel, where we wanted to sit, all those things but getting the right team together took months on end. I feel like we grow together as a team during the whole process. We're all basically new at this. We've gone back and forth on the little list of things and made like the biggest mistakes with things that we are too embarrassed to even tell people that we've done. There's always, always changes. Cost being one, the packaging being one, environmental, the human factor, all four of them and you kind of have to balance all of them at one time and you never know which is the right balance. Obviously there are many rejections. There have been times when we've wanted to give up to be a woman not just in design but also in this field of manufacturing. You know you don't see going to factories, it's like mostly all men workers. When we're on the phone they're very like yes we can do this, such a great product and then you show up there and they realize you're like not even 25. We're always discussing if we should take someone older with along with us when we go for these factory visits. We've decided no, not yet. I think the James Dyson award has given us a lot of recognition and credibility. There's no design award that's recognized as much as the James Dyson award. Just having that stamp was really important and helpful. James Dyson himself as a founder has been very inspiring because we've gone through numerous prototypes, just thousands and thousands of prototypes from packaging to labels to everything under the sun but to hear that James himself did that with the first vacuum prototype was really reassuring because we were like all right we're not the only crazy people out here. I think for our company there's been two main missions to try to have some type of social impact and the other one would be just to have the products have something that's fun. That soap and has the potential to save lives is almost overwhelming. I just think about it and if such a fun product can have that impact then it's like our duty to find a way to make sure it has that impact.


Welcome back to three five three. Yeah, this is our last lecture before reading week and before the midterm. That's scary So Well, I expected like no one to show up today. So this is nice. So What do you want to do today? Want to hear me? Lather on review the course or do like the latest midterm or what? You want me to blather on about the course real quick? Yep View the course. Okay, so I can give some thoughts on the latest midterm too. So All right, so we can speedrun the course then and then go into stuff so started off intro lecture three major topics in this course and How they applied operating system. So we've only really touched on the first two so virtualization and concurrency so virtualization well Processes kind of virtualize the CPU. Also, they virtualize memory now We went on talked about all how virtual memories implemented all that fun stuff And then we talked about concurrency. So that was like, you know, switching back and forth between processes which the schedulers responsible for and Touched on it briefly with threads threads get switched back and forth to only differences threads share memory so important kernel interfaces, that's what operated between CPU Boundaries, so there there was like kernel mode and user mode. So We kind of we're talking about like what the hell even is an operating system and we're like, oh, well It's the software that interacts with the hardware that supports your application and it's like, okay Well the definition of what you might consider an offering system depends on what application you run So we learned that hey There is like this special hardware mode on your CPU called kernel mode That actually lets you have access to more instructions that interact directly with the hardware and that's you know How the operating system provides some security? The kernel is the only thing that runs in this kernel mode and it is definitely part of the operating system So the only way to actually ask the kernel to do things for you Aside from tricks with virtual memory that we kind of discovered is by doing system calls So that's the interface between kernel mode user mode. Basically doesn't interrupt Kernel handles it all that fun stuff Every program has to use this interface no matter what so we can S trace it all that fun stuff We saw the file format. Don't worry about that for the midterm not gonna ask you about that That was just so you could see what the operating system has to deal with And then the different kernel architectures somewhat important like more Monolithic so just put most of the stuff in kernel mode if you have a micro kernel then you try and shove as Much stuff out of kernel mode as you can idea behind that is well less code less bugs You hopefully Don't have any security issues with that because if someone can control your kernel They can control your whole system. You don't have security anymore. Yeah Specifics as to how the kernel interacts with the hardware as long as you know, it's just like it's essentially just an interrupt That's fine But remember I showed like that big trampoline thing and like the tricks you would have to do Don't really have to worry about that that much. That's basically just an interrupt that the kernel handles All right, then we saw libraries so you know most of the stuff we don't just use system calls all the time We have to use some type of library at least the standard C library we just kind of looked at dynamic libraries compared them to static libraries and How to manipulate the dynamic loader don't have to know that for the exam That was just fun little tricks that you might actually use in your career if you would need to you Go ahead and try and debug or like instrument a program or something like that Saw some examples of like hey if you define a library Well that corresponds to a specific ABI and if you change it you can change it without changing the API and really really bad things happen So if you write code that other people are going to use you have to be really really really really careful about it And essentially whenever you write something you're now no longer allowed to change it from here until Eternity or when you give up supporting your software, so like That's like the major reason why Windows has like a bunch of very very odd things. It does because if they made that decision in the 80s Guess what they still have to support it. They made that decision in the 90s They have to support that and like weird stuff happen in the 90s Wait, you guys are born before we 90s was before your time Yikes. All right, great Yikes, okay, so Unix so we saw how to create processes, so that's very important and in Unix there's always a parent-child relationship between Processes so like there's a direct you have to create a process you create them using fork We did lots of forking in this course So after the fork remember both processes exactly the same Except for the value for PID ID that's returned from fork they should be exact clones of each other and If you have got most of the way through lab 3 or at least the first part well you know a lot of it is accomplished by doing copying the page tables making copies of stuff and after that they can be independent one shouldn't affect the other and And then we talked about the scheduler. That's the thing that decides when to work run processes For us whenever we're like using them After we fork we have two processes in general. We have no idea which one is going to run So then we were talking about like your responsibility also very very important So the operating system has that parent-child relationship We talked about zombie processes orphan processes So you should be able to identify them figure out how I screwed up if I give you some code You should be of say hey Do we create zombie processes? Do we create orphan processes? Probably how would I fix that or what am I missing and that has to do with like oh I should probably you know call wait and take care of my children unless I Want them to outlive me in which case they become an orphan They might probably get adopted by a knit or a sub reaper because we love weird names All right, then we saw IPC read write very important It's basically what printf does anyways Sob redirect ring some file descriptors for communication using pipes So we created a pipe good stuff to know signals Signals kind of a pain in the ass. I might ask you a short question about that But for your Sandy and mine, I probably wouldn't do a long question on signals because they're kind of a bad idea They're kind of like interrupts for user processes Colonel has to like handle three types of hardware interrupts The three types of hardware interrupts not that important for us But if you have to implement this might be good to know them, but for the exam don't worry about it All right any questions so far am I going too fast or all right All right, so then we saw oh, yeah sorry the three types of interrupts they are Like actual hardware interrupts like faults and stuff like that and then like user requested ones So like if you trigger your own interrupt or if you like have an illegal instruction or something like that So those are all types of different hardware interrupts and they're Given names. I can't remember off the top of my head, but those are basically the three categories But don't really need to know them all we really knows that well signals user interrupts and The Colonel might get something like a divide by zero and then signal your process that you did something silly and You get you it essentially propagates that interrupt up to you All right, then we saw scheduling looked at a few different algorithms. It was a fairly fairly boring straightforward lecture So soft first come first serve aka the fast food restaurant algorithm or like the basic thing you would ever think of Then we did shortest job first to reduce average waiting time Then shortest remaining time first where we interrupt preemption so we could just Before we were just letting a process run until it was complete Then we're like hey, we can just interrupt it. We can take the CPU away from it if a shorter job comes in and If we do that, that's the lowest waiting time or turnaround time, but With scheduling processes, you don't really care about just minimizing the average waiting time You want fairness you want good response time, especially if it's a process a user is actually using if You opened a process and you had to wait. I don't know until your Until you're finished using discord to like use your web browser that would be really stupid So probably want to be able to interact with them switch back and forth between them So then we saw shortest remaining time first and then we saw the first one That's actually somewhat useful is round Robin to try and optimize fairness and response time Probably get a boring question about this as like a freebie for the exam So you'll see going through all mine. I basically always ask one just to make sure that I don't know you've shown up to the course So they might have a little tweak where I add something from this lecture So like more solutions more issues so we could introduce priority Have that priority inheritance issue where if a high priority process is depending on a low priority process Well, then that low priority process should actually be treated as a high priority process in order for that high priority process To actually run as a high priority process So solution was that just if some process is waiting on another you just inherit the highest priority After that dependency is broken You can reset it back to default Other things you could do is like you could try and categorize the processes between the ones you care about Interactivity ones you don't really care about that much So you might try and just do round Robin for the interactive ones and first come first serve for the rest or Just different algorithms completely Then we talked about you know what we would do if we had multiple cores We had to schedule first silly thing to do is just Do the same old algorithm But just throw your processes on CPUs as long as you have CPUs available then we were like oh well That's probably slow because there's only one thing making a decision. I can't make that decision in parallel So we could just have each CPU core keep track of its own schedule But then they might be imbalanced and the solution to that is like to switch a process back and forth between CPUs called work stealing All that fun stuff Then we finally got into like oh real time. So real time Needs predictability needs to be like things have a definite deadline that you have to meet and On Linux too complicated. You don't have enough control over the system So it does soft real time So it just uses like round Robin or first come first serve and the idea behind that as it meets its Deadlines in practice because it doesn't really do anything that complicated for real Like real real times that probably be just like an embedded Processor that's only running one application at a time and you know exactly how many applications you're running There would be simpler hardware and they would have a simpler scheduling algorithm Then we finally saw the completely fair scheduling that tries to model that idea of fairness tries to like keep track of how long each process is running for tries to even them all out in terms of total CPU usage and But that's basically all it does and that's what Linux uses to this day All right, then we got on to the fun topics of page tables So page tables They are the mechanism so we can translate virtual addresses to physical addresses so the MMU is the hardware that actually uses the page tables and the kernel as We should kind of know by now The kernel is the thing that manages the page table and then MMU is the hardware on your CPU That actually uses the hardware to or uses the page tables to do the translations So we saw okay Well, we can just do like we can do big blocks of memory and only do Translations for blocks of memory at a time We called them pages They're 4096 bytes Usually is the default and we saw okay Well, if we just had a large table which was basically an array that kept track of all the translations That would be really wasteful even on 32-bit machines But especially for like 64-bit machines that used a 39-bit virtual address They were like one gigabyte. So not something we would want to do so we We kind of simplified things we got like We thought of multi-level page tables and we can simplify the kernel memory allocation because the kernel only allocates pages And one page is just as good as any other page. So it can just use a free list This is where link lists come in so we can rejoice So link list just link list of free pages to get a new one front of the list when you free it Just goes back on the list so Then we were like, okay Well gigabyte page tables aren't going to work So we do multi-level page tables because we would notice that most processes Aside from web browsers don't use all of your memory. They don't need that many translations So if I have a multi-level page table where each of my page tables fits exactly on a page Well, I only need three of them to translate a one address instead of just one giant table and then We went back to our goal of hey, this should also be fast because well If I'm trying to access like physical memory, that's just one One access but if I'm using a page table I have to do a lookup for every level of page table and then figure out that Physical address and then do the final access so it becomes really really really slow Every additional level of page table we add just makes this process slower So that's why we don't like use a 64-bit virtual address We try and keep it as small as we need to so we can actually just run all of our programs normally So the solution to speed it up was to use a TLB or translation look aside buffer To speed up memory accesses basically access a cache So it just essentially saves any recent lookups so that it can just look them up fast without going at Going and stepping through all the page tables over and over again And TLB you should know what that means so Last year for the midterm People like asked me the question while the exam was happening like what is a TLB you never said what it was I was like So I can't answer those questions during the exam. So please know what a TLB is yeah a Translation look aside buffer I can I can answer it now. So it's basically that cache Which is why things go fast And remember there are all the things too with like If we're switching between processes We need to like delete the TLB or flush the TLB so that well when we switch to the new process That might use the same virtual address We don't get the same physical address because that would be bad Because I might be able to access another Processes memory and I shouldn't be allowed to do that But yeah, ask me questions like before the exam Don't ask me these things during the exam because unfortunately I cannot help you so Then we finally wrapped up with threads they enable concurrency or more explicit concurrency I guess so we kind of related them to processes So threads were just lighter weight. They share memory by default. They are all in the same address space and Each process can have multiple threads just one at the start There's no concept of orphan threads or anything like that But the concept of zombie threads exists, but there's a few other different things with threads like If we have default thread that's joinable same rules as when we had processes We would have to wait on our thread which is in this case called p thread join we can terminate a thread by calling p thread exit like we can terminate a process with exit and Unlike processes if we don't need the return value We can make them detached and that means that as soon as that process or sorry soon as that thread terminates Cleans up false resources. It will never be a zombie thread Otherwise if it's joinable and it terminates and we haven't joined it yet. It would be a zombie thread all right so both processes and kernel threads so Enable paralyzation so process can have multiple kernel threads most implementation. It's like one-to-one so P threads one p thread is equal to one kernel thread But there's other different mapping so we could have one like p thread or let's call them a a what thread one what thread can Correspond to a single kernel thread Oh, but we might have multiple what threads that all actually correspond to the same Kernel thread and that would be many to one the kernel doesn't know about them So if any of our user threads blocks the whole process gets blocked because the kernel doesn't know about them So we also saw more fun stuff. So the operating system has to manage what happens during a fork so if a we have a process with multiple threads and We call fork the rule is that that a new process will get created With the single thread and that thread will be a copy of whoever called fork So now we had synchronization Synchronization issues and I mercifully cut us off there before the midterm so Synchronization issues that's where all the hard bugs are like the things that live in the kernel for like seven years before someone figures Out how to fix them. So Mercifully we get to save that for after the midterm Yeah, yeah, yeah, so Two's yeah, I'll tell you the fix after the midterm not immediately after cuz well, I can Yeah, so well, even though if I tell you the fix it doesn't mean you will always do the fix So you might miss it that thing could exist for a long time Especially when we saw that kind of work most of the time especially with smaller numbers All right, that was quick. All right, any other quick questions about that like whirlwind tour the course More or less good All right, so now we have oh, yeah Oh, I need to update that yeah, cuz the vote was like big closed books So I'll just do close book for it and I'll write a page of like functions and stuff like that. Yeah Yeah, I can give you the page Sure, I Have to make it first though. So I'll make a page soon sooner rather than later All right Yeah, I forgot to change that. Yes. All right any other quick quest any other questions. Yeah, sorry so You don't need to know like the details of the lab because lab 3 is not due until after the midterm But like we discussed the ideas all before that so the ideas are okay any like weird Like implementation detail I wouldn't ask you about yeah, what you mean by do we need to know how? Schedulers are actually implemented. No, I don't like programmed the questions Yeah, so you can see so All my midterms are on my site that I've ever written So there's like this course and 344 are exactly the same This course and like CS 111 are pretty much exactly the same and Yeah, that so that's UCLA's version of it It is not a first-year course even though it's like CS 111 Here to like normal rational people that sounds like a first-year course. I Still I don't know why the way they order the way they number courses if it's a 100 level course That means it is a third or a fourth year course And if it only has two digits that mean it is a first or second year I don't know why but if you see CS 111 you're like damn those UCLA people are smart No It's the it's the same thing they just have a very strange numbering that I Asked lots of people no one could explain why All right, so do we want to I oh, yeah other things that we would use fork for Making anything that you want to be independent just different processes So like like you can run each top and see everything runs in a different process essentially, right Other single problems Basically, it's a trade-off of like do you want things to be independent or do you want things to be fast? so like web browsers started off using threads and That way they could like any IPC they do is essentially free because they all share memory But then you have the problem of oh if something bad happens in the thread it brings down the whole process Right, so that's the trade-off any program could make that trade-off so web browser started off in threads and then they discovered that hey things crash a lot and If your whole browser disappears you get angry So there's always going to be a trade-off of like How much IPC you do verse how much you want them to be independent? So you can make that trade-off with literally and anything because if you want to run anything in parallel now You have to use kernel threads or you have to use multiple processes, right? So you'll be doing that trade-off as well when you're developing software. So after this course Essentially everything you write should be able to run in parallel Because how many cores do we all have does anyone have like less than four cores on their machine? Probably not really so you're essentially you like only getting the fourth of the performance you should get so like Especially within infrastructure and other courses. I keep on it They're like hey this thing is slow and then I asked them. Oh Are you using all the cores and they're like no Okay, so what all right All right, so options I can go over this fun thing and explain it in Gory detail or like quickly run over the latest midterm and Give my thoughts on it any All right, this question Like no one. All right other midterm. All right more than one good enough All right, so this is the 2023 full midterm for 344 So some notes on it this one had too much writing for my liking So this one had a lot of short answer questions and people ran out of time So I would expect for you that you will have less short answer But I would also expect from you. You will have a threading question or a more Question that has like a longer question that has to do with threads So Yeah, so this is the one where people asked me what a TLB is because I was the first two questions It's like, okay So why does OS need to flush the TLB when context switching between processes? So you can't accidentally made it yet Yeah, what's it? What's a TLB?  So if you ask me it My answer was that's the question So I can't answer a question for you on an exam So why does it need to flush the TLB? Well, because the TLB contains like all the translations for that processes If I don't flush it when I switch to a new process, I might still use another processes translation I can access its memory don't have security blah blah blah lots of bad things happen All right, does the OS need to flush the TLB when context switching between threads in the same process? No, because they all you like they share memory. They're in the same address space Same translation share everything. So don't need to do that How does the OS prevent your process from directly accessing hardware? The kernel runs in Kernel mode, which is can access instructions that you can't and that's those instructions let you access hardware Oh, why can you not call whoops blocking weight PID twice on the same process? Yeah Yeah, if you blocking weight on it and it returns that means it's terminated and when weight returns You also clean up all the resources. So now no longer exists. So if you wait on it again, it doesn't exist anymore All right, if you only ever run a single application on an embedded system, do you need virtual memory? Yeah Yeah, no, you have one application virtual memory is to like protect processes from one another and Well, if you only have a single thing running on a simple chip You don't need virtual memory. So what benefit would you see if you don't use virtual memory? Yeah Faster you don't have to do all those stupid look-ups and while you don't even need a TLB or anything like that You're just accessing memory and then guess what it's random access memory We all never questioned before so it all be fast All right, see what change can you make that will change the API and not the API Well, lots of different ones, but the main one was like I reordered fields of obstruct Even if I reordered the arguments of a function Things of that nature just like shifting code around without actually changing the meaning of it All right, let's see if we get what system called this print f and then I didn't f flush So this in retrospect was a mistake because I never said what this does So f flush like forces print f to actually do a system call because as you might Notice especially when you fork stuff if you do print f Well, see wants to make that fast So it might collect a bunch of print f calls all together and only do one system call So this essentially forces a system call. What system call would it force from print print f? right and What is the value of the first argument? One it's the file descriptor file descriptor one standard out So that should be that would not be on the sheet. I give you you should know zero in one out two error or If you want to forget one zero is in to it or one is out All right, why does links use FIFO and round robin for soft real-time processes? Basically, they're simple they're predictable You don't really want anything complicated What once you want real-time because you want to be predictable? So having some complicated algorithm running is not going to be great And this is where the writing was way too much. So this is like 10 questions of writing. So retrospect bad idea So describe how you can use the output from standard out from one process running LS To another one process using standard in running WC Explain any system calls you'd make so this basically you just make a pipe so pipe system call and then In one process you would replace standard out with the right end of the pipe in the WC process You'd replace standard in with the read end of the pipe and then you would fork or sorry You would exec and then you're done so pipe change file descriptors which would be dupe dupe to something like that I didn't really actually care about that as long as you said change the file descriptors I think I let that slide and then exact All right describe a situation where it would be beneficial to create multiple threads in your process Even though the machine only has a single core cannot run anything in parallel Assume your process does a lot of IO. So that was a dead hint right there Would it be beneficial if the threads were kernel threads instead of user threads explain? Why are why not so would still be beneficial if you're doing a lot of IO if threads block all the time If you have multiple threads, then you can switch do something else while you're waiting for hardware to Complete do a write whatever waiting for network something slow so in the case that Yeah, so that would be a benefit to using threads, but they would have to be kernel threads Otherwise the kernel wouldn't know to switch between anything else so if they were user threads it would just block your process and Everything would be slow Okay The question I'll skip to the virtual memory question because people screwed up this one More than other ones So let's see if we can get it So consider a system with a page size as 64 kilobytes quick a1 what is 64 empowers of two To the six right so remember the good one to remember to the five is 32 and I can multiply by two once to get 64 So 64 kilobytes. It's like two the six and then a kilobytes two to the ten So that means 64 kilobytes is to the 16. I Would highly recommend just to write start writing things in powers of two for virtual memory questions All right Why'd that disappear? All right the page table entry size is 16 bytes What's that powers of two? Four right to the four all right system supports 128 bit physical address some truncated page tables so Through some people off that wearing basically I didn't show a full page table. I just showed the first three entries in some page tables so since my page size is Two to the 16 that means 16 bits are used for the offset, which was nicely each hex is like four Yeah, each hex is four bits. So that would be four hex characters. So like this is the offset Which is why all these pages start at ending in zero zero zero zero All right First question how many page table entries can you fit in a single page? Yeah to the 12 right so This is the page size to the 16 divided by the size of page table entry because it's basically a gigantic array So here I can fit to the 16 in or if I wanted to write that so For Purposes of writing this course just leave you can leave in powers of two. I don't care so just leave in powers of two if you want to save yourself some time and Yeah, you're allowed to have a non program will calculator But honestly if you're punching numbers into a calculator, you're probably just wasting your time Just leave in powers of two and then don't bother using a calculator is my advice but again Don't have to listen to me. I If it makes you feel better go for it all right So with only a single level page table, so it has to fit on a page What is the maximum size in bits of the virtual address we could have or we could actually do translations for? so yep 12 bits so full size of the virtual address So remember my virtual address is Made up of two big components, so it's like the virtual page number and then the offset 12 plus yet Yeah, so I need 16 bits for my offset here and then If I only have one level of page table then I would have I would have this many entries I have to pick between so I would have 12 bits for my index for my single page table So in total that means I have a 20 I can support up to a 28 bit virtual address So anything higher than that. I need another level page table. This just says for a single level So just one All right Are we okay so far? All right so For the system with a single level page table assume the root page table is at ppn a Which means this would be at address like Since everything is page aligned it would start at address a 000 in hex so that means It is this page table right here So this page table if we only have a single level of page table this would act essentially as L zero, right? so We're given that our L zero is supposed to be that page table, and then we're translating the virtual address 00177 so we can break this apart So the last four hex digits That's the offset which we don't have to translate that's where we are within a page and then this Would be our L zero index So we need to look at the page table entry at index one which would be This one right and doing the translation that We've talked about it would have to check. Okay. Is it valid? Okay. It's valid. It's valid bit as one Perfect, and then since this is an L zero one the ppn is what we use for the actual translation So we would get the address 00e or just e 7777 because this is The ppn and then our offsets the same Yeah Yeah, yeah, if if the valid bit was instead zero you just say page fault can't No translation Seg fault page fault. Whatever you want to call it. I Probably not too picky All right, so has well, yeah, here's that right now for the same setup above we translate the address to 777 What physical address do we get or page fault? So in this case we're using index two valid bit zero. So page fault page good All right So now we do have two levels of page table. So each page table still fits on a page What's the maximum size and bits of virtual address supported? So now we have an L one we have an L zero and Then an offset to make up her virtual address our offset is still 16 bits and Each of our indexes are 12 bits So now this is what? 40 Wait bits if I can do math on the fly all right so For a system with two level page table assume the root page table for process 100 is at PPN B and Then for this process what happens if we translate the virtual address this so For this address What is my L one index? Zero right leading zeros it all has leading zeros so This is my offset This is my L zero index and Then the next three hexes that I haven't filled in here that would be our L one index Everything has leading zeros Just like in math so my L one index would be zero my L zero index in this case would be one so I Have to start at PPN B. So here this is process of hundreds L L one page table Okay, so For this process I'd go index one so index one is valid Great, so that means I can use this as my translation and then this PPN Tells me what page table my L zero is at so it is this one. So this is process a hundreds L zero page table Then I'm supposed to use Index one so it's this one. It's valid. So that PPN is The PPN of the final Physical address so it's nine. So we would get nine seven seven seven seven All right All right So this says assume the same system. So still two-level page table We have a root page table for process 101 and it is Zero C what happens if we translate this big old address? So again, this is the offset This is the L zero index This is the L one index and it's at C. So what happens here? So This is process 101 L one page table and then Here we are Using index one for the translation. So we'll see okay. It's valid and the PPN is D so that means this is also process 101 L zero page table and Then we go index two. So it's not valid So we would get a page fault and it says when there's a page fault tell me the page table entry or What look up fails? So the L zero look up generates a page fault All right, so might have noticed something weird that they both share an L zero page table So that was what this last question is all about. So given that our Processes and their root page tables. Is there any issues to make sure that they're completely independent? Oh, well explain why or why not? So here you could just give an example or say They're using the same L zero page table. So they'll have access to the same physical memory Possibly through different addresses so basically If I had in process a hundred if I use the address like zero zero zero and then doesn't matter here and So this would be like the L zero index And then the offset If I had that in process a hundred and then in process 101 I used This virtual address so zero zero one and then any L Zero index and then any offset Those would actually go to the exact same physical address, right? So if I just did I don't know zero zero Seven seven that would actually translate to the same physical address in both processes They're not independent. They're both accessing the same physical memory. That's bad All right Whoo. All right questions about that So the Hopefully the rest was okay. The last part was only two points anyways. So Yeah, this one usually my exam shouldn't be too long Usually I like to give you time to think about what you wrote this one. Yeah a lot of writing turns out I Don't know what I test my exams. I can write really fast. So I should just not do that. Yeah The average was 75 ish Yeah, 75 ish. Yeah, I I Try to have it like 75 is like good, you know, most of the course content. We're all you're good I'm not like one of those people. It's like, yeah, whatever. I'll just make sure you all fail And then I'll sort it out later.   And you're like, yeah, whatever Not satisfying on either end So yeah during the reading week I'll be on discord around. I'm an old man. So I go to sleep early So don't expect me to be up past like if the sun goes down assume. I'm asleep If you want, I'm up at I'll be up at like 6 a.m. Though if you're basically if the sun's up, I'm probably up Yeah, so I might be able to catch you on the tail end before you go to sleep But yeah, I can't do that anymore. So, um, yeah, I think that's it. We're out of time anyway So just remember phone for you. We're all in this together and