Welcome back to our channel. I need you guys to help really quick. Which cat are we shaving today? Is it gonna be you? Do you wanna get shaved to the bone? I don't know, or is it you, Thor? Do you wanna get shaved? Do you wanna get shaved today? I don't know, something's telling me that I have to shave this fellow, right? Going on. He's looking cute, he's looking fluffy. Okay, so Snap is our biggest haired cat for now. Scar, on the other hand, he is supposed to get like super big, he's a full breadman coon. And you can barely see him right now because he blends in with the table. But, Scar's hair is supposed to get super thick, but Snap has been having problems lately with his grooming, okay? When it comes to like, when he goes to the bathroom, like, his hair kinda gets in the way of everything.  This is like a 23 millimeter. They got a whole bunch of stuff.  But basically, instead of bringing him to like the cat place for them to do it, we started doing it ourselves because not only does it save you money, but like, I don't wanna take the whole trip to a cat place to leave my cat with people I don't know, and if y'all have pets you know, you don't wanna leave your pets with a stranger, you don't know what they do, you don't know if they grab their necks, pull them down while they're trying to room them and stuff. So, it's just a better piece of mind that we're doing it ourselves. But here's the tongue twisters. So, I got this idea after this thing came in, this vacuum shaving death trap, right? Me and Mariah are gonna be shaving him today. But currently, she just stepped out to go get her laser hair removal done. She gets laser hair done. If you did not see in one of our recent videos, I know she's talked about it a little bit, but she's been getting laser hair done for a while. She should be there for about an hour, and while she's out, I am going to text her showing her a picture of clumps of this dude's hair, right here, because this is the main dude that we are going to be trying to trim up today.  I accidentally shaved Snap too much that it looked terrible, so I made the decision to fully shave him down.  And you already know, Mariah, this is her first baby. This is the cat that started it all.  I have not seen her react to the cats yet, but obviously I know she loves cats, not in general, but on top of that, our cats, she literally is like this. These are our children, okay? And the thing that we like most about Snap is his fur. I'm really tempted on taking a Photoshop picture and photoshopping a picture of a hairless cat in my hand and sending it to her. Should I do that? Should I do that, Snap? Oh my gosh, she would absolutely freak out.  Dude, Mariah would literally kill me. Like she would literally freak out. Is that too much, you think? What do you think? I'll let you be the judge, okay? What do you think? Let's go. Dude, I totally agree.  This guy is known for his fur, okay? Like I said earlier, he has so much fur on him which also means he sheds a lot.  So by the time Mariah does rush home or get home cause I wanna tell her while she's out, she sees all this hair everywhere and then maybe I'll hide Snap in like the closet or something so she can't find him. So she like literally thinks that like I'm trying to hide him because I'm embarrassed. So Snap. Get over here, come on. Snap actually really does like getting brushed but he usually likes playing with a toy but you also kinda gotta hold him because he does get antsy once in a while like this right here. Come on, you know what's done. So this is all the hair that I got out of him but I have one more place to check before we can get this prank on the roll and that is the couch. Got the holy grail of fur. Oh my God. We literally haven't done this in like three weeks so definitely overdue and they love to sleep in that corner right there so that's where most of it came from. I think this is gonna be more than enough to trick Mariah into thinking that I literally shaved Snap bald and he is now hair of this cat. Oh God. Pray for me, Marvel Squad. This is definitely gonna be one you're not gonna wanna miss. Make sure to watch this whole video all the way through cause I have a feeling Mariah is going to go berserk. Yo, this literally looks like I just shaved an animal right here. I basically sprinkled out like clumps cause I feel like when you shave it comes off as like clumps and stuff and I also filled up the whole vacuum bowl area with as much like fur that I could. So this looks full as well and just to show you this is the trimmer that it comes with just to show you that this actually does work. Watch this. This thing would literally shave my head right now if I tried. Honestly, if I had a beard going on I could use this too. It actually like kind of reminds me of the one that I use. I am so scared right now. Y'all have no idea. All right, so right now I'm gonna look up a hairless cat and... Bro, I'm sorry. Hairless cats are cute, right? They're just so cute cause they're, I mean they're hairless. All right, maybe I should do hairless Norwegian Horrish cat, hairless bro, no way. Hold up. I feel so bad. These things are so cute. All right, I think I'm gonna go with this one because Snap, like I said, like he is white, brown and a little bit of like grays and almost black. So I feel like this one would be the perfect cat to do. Now I just have to cut them out because obviously Mariah's gonna know. All right, so it took me a minute. And quick editing on my phone. It looks, it doesn't look the best but this is what I came up with. Basically it is a photoshopped hairless cat that I made to look like it goes on our counter and this is as close as good as I can get but I looked up a Norwegian forest cat that is shaved and that is what Snap is. So this cat looks exactly like Snap but a shaved version basically. And the reason why I cut off all by the feet is because usually when you have feet there's a shadow, see the shadow behind my hand? Well if that shadow's not there it doesn't, it looks photoshopped in so I cut the image above his feet so it should look good and Mariah should believe it especially when she comes home and sees all this. So without further ado I'm gonna keep an eye on Mariah's location and the moment I see her start driving home I will text her and send her and say like baby I screwed up and start the whole prank.  All right, Marvel Squad, she's on her way home she's about five minutes down the road so I have to hurry up. I haven't even put Snap, I don't even know where Snap is. I have to put him in a room or like a closet for the time being.   Come on, respond girl, let's go. Oh, she's responding, wait, hold on. She's calling, she's already calling.  Diane, it's her right away. Hello? Hello? Hi, are you almost home? Yeah, why did you text me that?  Why? Babe, I did not mean to and I thought it would be fine but I screwed up. Okay, what? Let me just send you a picture. I'm sorry, please don't be mad, it'll be fine, it'll go back to normal soon, okay? It's not that big of a deal. I just sent you. Let's snap. Babe, I was shaving his back area and I accidentally moved and shaved some of his fur. It would've looked weird so I just decided to shave him fully because I thought it would be funny. Like a buzz cut. I thought it would be like a buzz cut, Mariah. I literally did not think it was gonna look this bad. I literally like, I'm sorry, I thought it would be funny. Like cute. I messed up. Babe, I was literally shaving his, how did you mess up? I was shaving his butt and when I was going around the corners and stuff, I didn't realize, because I wanted to surprise him when he got home and he would be all groomed and nice but when I went to go shave him, I thought it was the comb but it was actually the buzzer and I buzzed off half of his fur so I just finished it. Mariah, I'm sorry, it's not that bad. It'll be fine. It'll go back. It only took like a year for him to grow out so it'll be fine. Right here, right there. Babe, oh babe, it's fine, it's fine. This is why I didn't want to tell you. This is why I didn't want to tell you.  You should have talked to him.  All right, I gotta go. I gotta go. I don't know where he is. He's like shaking. He's like shaking nervous. He's trying to, everything will be fine because you- I knew what you were doing. You just did exactly what I was afraid of doing with you except you just did that. All right, I'm sorry. I'm sorry. I'm sorry. Okay, it will grow back, bro. Are you on your way home? All right, I'm sorry. I just wanted to tell you before you got here so you didn't like yell at me when you were here. It's not that big of a deal. It'll grow back. It's just hair. It's just fur. I gotta go find him, bro. I don't know where he is. I don't know where he is. I gotta go find him, okay? Mariah, I gotta go find him. Just drive safe. I don't know where he is. He was shaking. He ran away with his tail down. And by the way, by the way, his tail, by the way, his tail looks like a pen. She just hung up on me. All right, I gotta go hide snap right now. I really don't know where he is. I gotta hide snap, hide this camera because this girl's about to come in blazing. Buddy, mommy thinks you're, come on. We gotta go. We gotta go. No sleeping. Mommy thinks that you're shaved right now. Come on. Come on. Bro. All right, dude, we gotta go. Mariah is absolutely pissed. Like, I knew she was gonna be mad, but she is pissed. All right, you stay in here. You be a good boy. Don't worry, he has food and litter box and everything and water and all that. Is she? Where is he? Mariah. Where is he? No. Where's snap? Where is he? Baby, I'm sorry. Why would you, why? I'm sorry. No, I'm being so dead serious. What? Mariah, please. Just let me, it's just, look, it will be fine.  I know I'm sorry. I'm actually about to come over there. Don't. It's kind of funny. It'll be, we're gonna laugh at it one day. This is not, this is the problem here. You told me not to take him to a groomer because you were scared of this incredible reason. Okay, okay. Yeah, you just shouldn't have helped her. Yeah, you could have f**ked up a little further. I got, I got a knot out. Would you like to shave this? I got a knot out though. I don't care about his knots. Now he's gonna start. He's, okay, okay. No, he's, okay. No, he's in the cat room. Don't freak out, please. She's missing him. No, just. Calm down. Calm down. I'm sorry. No, you're not sorry. No, absolutely not. Give me his. Why are you being mean to me? It was an accident. Just please. That's like giving our baby a haircut and she'll have it. Okay, well, let me, let me make sure he's okay. You're probably scaring him. No, seriously. Let me look at it now. Okay, I'm sorry. All right. Let me see my baby.  What? Babe, babe. I didn't shave body, bro. You didn't even give me time to, how fast did you drive home? Right, it was just a prank. Were you in the neighborhood when you called me? Dude, I didn't even have time to hide the camera.  Baby, how did you do that? I went online and I found a Norwegian forest cat that was shaved and I did like a hack job, but I made it look good where I added him on the counter. But that was literally a Norwegian forest cat, which is what Snap is. You can't hide every it, baby. I actually just get, that's not even funny. So then what, how did you do all this then? That's, I literally, I spent like 10 minutes scourging, no, babe, I literally spent the past 10 minutes scourging the couch and brushing him to get enough fur to make it look like I shaved. Come on, Mariah, come on. It's not that, ow, okay. Don't hit me. No, do I know why? Because Team Bill came back and let's see the hashtag Team Bill's in the comments, Mama Squad. This girl, I got this girl rolling in her heels. What do you think, are you already going for food? You saw that your baby's okay, now you're just going for food. I'm just irritated because I really thought out here that that's me. I'm not laughing. It's pretty funny. I'm surprised you didn't see me holding the camera.  I wasn't focused on you, I focused on myself. I know, I was literally like this. I was like the whole time. I didn't even look at all this. Mama Squad. I'm sure my house was not fully groomed and freaking annihilated. I'm so glad that I sent her that picture because I knew the moment she got home, I would not be able to hold her off from looking for snap. So baby, I'm sorry. Can you forgive me? Can you forgive me, please? I love you. Doesn't mean I'm not going to do another one like this to you in the future, but... Get this video to 10,000 likes and we will actually shave one of our cats. And we will shave one of our kitties. No, it's actually good for fur.  They're not outside and it's actually good for their fur that grows back. She's quesadilla and I'm not making you one. Oh, please, come on. The least you can do for a good prank is make me some food, right? Half to the no. Please. I haven't messed up ankle. Look at my ankle. Okay, I'm going to show you guys a little update on my ankle before I close out this video real quick.  Whoa. It still hurts. It still hurts. They're like, how is he walking on it? It's not fake, bro. I literally almost broke my ankle. We figured out that it wasn't broken. Well, the bruising actually looks a lot better. Is it going down? Yeah. How's it look? It looks really good. It still looks bad. No, it does. Let me see it. It's definitely going. It's fading out. Is it hurt? It still does, yeah. It still does. Going on back to be sales. I've been trying to strength train it. So I've been trying to do some of these. I'm doing physical therapy at home. Therapy, going backwards. Ooh, that hurts. Backwards. By the side that I rolled it, I'm trying to also stretch that out just a little bit. Enough where it doesn't screw it up again. But I still gotta use my leg. But anyways, Miles Scott, I hope you guys enjoyed this video. I hope y'all are having a great day. I hope I also put a smile on your face and entertain you for the past 15, 20 minutes. I definitely did. I definitely did. Okay, but if you think about it, I made you so much more appreciative for snapping his fur. Because. No, you didn't. You made me mad at you. You wanted to cause an argument. People really don't appreciate things until it's too late, until they're gone. So, actually, the lesson of this video right now, I want y'all to think of something that you haven't really appreciated in the past week, month, year. And I want you to look at your animal right now.   Or wherever you are. Whatever makes you happy. And appreciate what's in front of you. Even as little as taking a deep breath and just appreciate being able to. I love that you're trying to get all, you know, loving and all this stuff after you're just pregnant. When was the last time you appreciated taking a deep breath? I always take deep breaths. And you always think, I'm mad when I take deep breaths. I'm always like. And before I close out this video, I'm gonna share what I am appreciative of. I'm appreciative of Team Bill coming back today. Give him a round of applause. I'm on top of the, I'm on top of the world. I'm on top of the world. This girl's not. She's in the valley. She rolled on the hill. Mama's gone. I hope y'all enjoyed this video once again. I really, really tried. I really, really tried to set up a crime scene right here. Yeah, you really did.  Comment down below what you thought. Or if you have any other video suggestion ideas, leave them in the comments, except Pranks. We don't wanna see Pranks because if we see Pranks, we're both gonna know what they are. And I hope y'all have a great October and we will see you in the next video. But until then, peace. Love you guys. Now you gotta make me a quesadilla.  Heck no, these are for me. Then why are you putting four on there? Cause I'm making two for myself.  That's what you get for being good. You are making me, I'm taking these then. This is my quesadillas. Okay, make it then. No, please. Can you actually make me one though? For real? Like this is off camera. I'm not putting this in the video. Can you please make me one? No.  Just please. You know how much you love me? I see her. I'm not even filming right now. Bro, the light is off. I'm happy. No kidding. No quesadilla. She's making me one. It's a victory quesadilla. Excuse me. There's no way that she's not gonna make me.


Welcome to All Hands Update, I'm Petty Officer Tony Rosa. These are your headlines from around the fleet. The 2014 International Mine Countermeasure Exercise ended in Bahrain November 13th. More than 6,500 service members from more than 40 nations worked with 700 civilian mariners throughout the Arabian Gulf, Arabian Sea and Red Sea. The exercise lasted almost three weeks and promoted international partnerships while protecting global commerce and secure sea lanes. Those of you anxiously awaiting advancement results don't have to wait much longer. The advancement quotas for active duty and full time support petty officers will be posted on All Hands Magazine online November 19th. Command Bupers online accounts should receive results on November 24th to allow commanding officers to notify their sailors 24 hours before the results are released. You can view your individual results on November 25th on BOL or All Hands Magazine Online.


When I'm 80 years old, when I'm 90, hopefully when I'm 100 years old, I'll be able to interact with people. Things I always worry about is being dependent on somebody. Health, to be engaged and productive. I hope to become an old, young, active person. Over the course of human history, most people died before the age of 10, with an exceptional few living into their 60s and 70s. Around 150 years ago, a remarkable shift occurred and the average length of life began to increase. Every decade, about two years were added to average life expectancy. This trend continued in Western Europe and North America until, by the close of the 20th century, life expectancy had doubled for most people in the developed world. In those additional 30 years of life that we had in the 20th century, we call the first Longevity Revolution. It was primarily improvements in public health like clean water, sanitation, indoor living and working environments, controlled air temperature. These are all the things that created very harsh conditions for people in the early part of the 20th century. We wanted to live longer. We didn't want our children to die. We succeeded in doing this and we got exactly what we wished for. Today, the numbers of people living to old age and to super old age are rising around the globe. To live a long life is a monumental achievement and longer life spans are precious gifts for everyone. But there is another side to this story. 50% of the children born now will live naturally to over 100 years. But if we don't increase health span, what it means is that individuals are going to still succumb to cancer, heart disease, diabetes and neurodegenerative disease. At some point between their 40s and their 70s. Here with health span versus lifespan, if you're not, yes, life expectancy from birth has gone up.  It's not enough. And what I'm going to make an argument for today is aging begins in childhood perhaps in utero. The Barker hypothesis some of you might be familiar with, but we need to do things in early childhood. One of the speakers yesterday talked about cytokine drizzle, you know, before the storm. How about cytokine overcast in childhood? I mean, I propose these at every meeting I go to that's dealing with adult diseases. Rewilding the biome. How about rewilding the jaws in the face in the airway? Meaning to become more like our pre-industrial ancestors. So the goal here is to delay the onset of these diseases that really shorten our health span. We don't even approach our lifespan as being healthy. And what we need to do then is move that up, okay? So again, this is going to be my thesis today is that I think I found a way to do it. And I've got evidence that I produced over the last 10 years that I'm going to show some of it, but there's not enough time to show all of it. I'm Kevin Boyd. I'm a pediatric dentist. I have a master's in nutrition and dietetics, which I never became a dietitian because I got into dental school. I'm on a task force at the American Dental Association that is really aimed at getting dentists to recognize not just cavities and gum disease and other things that we're very good at and we're very necessary for, but also a child's airway and sleep hygiene. Hygiene means health. It doesn't mean clean. Cleanliness is a component of hygiene. It isn't hygiene. It's not synonymous. Does anyone know what movie this is from? Anyway, that's my favorite movie of all time. So early childhood malocclusion is a new definition. Early childhood cavities or caries was something that hadn't been clearly defined and thus insurance companies found ways to not pay for children who had to be put to sleep in a hospital to get all their cavities fixed because there was no clear definition of it. Early childhood preschool years, any kid who has a cavity under the age of 72 months old, 6 years old, that's called early childhood caries and it totally changed access to care for a lot of kids. Just that definition. So we're proposing myself in another group of a consortium where we're all working together on this. Early childhood malocclusion is just poorly aligned teeth and jaws. Well, the jaws and face are connected to the airway intimately. We call it the craniofacial respiratory complex and it is something that we call the back of the face, the airway. The front of the airway is the face. Change the face and jaws, you're going to change the airway whether you like it or not. Our ancestors, normal just means average, right? Well, normal used to mean optimal for health. It doesn't anymore. It just means average and it's usually not optimal for health. There's risk assessment tools. Chicago Hearts is physical risk assessments. We have established this flip chart and it's going around the room. James Nestor has it there. He's going to look at it and pass it around. I've also got pamphlets from our task force at the American Dental Association that has just gone live. So help yourself to that. If there's not enough, just you can email me and I'll send you one. And then, again, I talk about the craniofacial respiratory complex. We used to just say craniofacial, but there's more to it than that. Really assessing risk for visual acuity. It begins in very early childhood hearing acuity. But how about orthodontics? If you have kids, if you have grandkids, if you have nieces and nephews that even yourselves save up your money for braces as a common term, that means that a third-year dental student can look at a child of four or three years old and predict reliably this will persist and worsen and often already is or will become a comorbidity with sleep and breathing disorders, which is a comorbidity for you ready, lowered IQ, ADD, ADHD. Okay, so am I saying if you expand a child at three, you're going to avoid all that? I'm not saying that, but you can take it off the table as being a comorbidity factor. So I'm going to talk to you a little bit about this risk assessment tool that we developed in Chicago.  They can breathe better. There's less resistance to nasally-inspired air. And all air is not created equal. Ambient air that we breathe in today, whether you're indoors or outdoors, is not the quality it was for our ancestors, our pre-industrial ancestors.  Okay, when you're on the road and you're hungry and you need calories, go ahead and go have a burger king or whatever once in a while. It's emergency. That's what mouth breathing is. Okay, nose breathing confers such an advantage to the person because it mechanically filters, chemically filters with a compound called nitrogen oxide, which is released from the mucosal cells of the paranasal sinus complex. And it comes from L-arginine that's in there and it turns into this enzyme that will create a nitrogen and an oxygen, not nitrous. That's laughing gas. Nitrogen oxide kills all airborne pathogens, including COVID. Okay, it also is responsible for vasodilation and opening up the airway and facilitating warmed and humidified oxygen into the alveoli of the lungs to the hepatic portal system to the brain and the rest of the body. So there you have it. Breathing habitually through your nose when you're sleeping, especially when you're a child, is just paramount to optimal growth of the brain, the long bones, everything. And it should, they should nose breathe all day long as well. Adults should too, but you know what, if you're not going to save yourself, just pay attention to these kids. And again, your own kids, your patient's kids. So this just in, cardiorespiratory fitness. This is the oxygen utilization of skeletal muscle during exercise. And American kids are really in bad shape. Not a word mentioned about sleep apnea in this, but it definitely figures into it. I write a lot of letters to people, and I really want dentists to be, especially those who treat children, to be very involved with this. And also this just came out, is that uncorrected apnea in children will turn into cardiovascular risk, mainly in the form of hypertension and adolescence, but other components of cardiovascular disease that aren't mentioned. These are the main, when a kid has apnea, the gold standard is tonsils and adenoid surgery. Gold standard they call that.  So those are tonsils, adenoids. Adenoid is a pathological moniker. You're not born with adenoids. You only get them if there's a pathological condition.  It can be food allergies. It can be environmental allergies because it's lymph tissue. But the goal is to take them out. Well, that kid that you saw, that's an x-ray that I took, had apnea after he got his adenoids out. Recurrent apnea after TNA is a big, big problem, and it's been a problem in the medical and dental literature for over 100 years. These are things that happen afterwards. These kids, under three years old, if they get tonsils and adenoids, there's a certain significant percentage of them that have to be admitted because of morbidities that happen. And it's usually bleeding. And, you know, here's another one about relapse. And I was asked to write a chapter and a major textbook about this. But it is a big problem, and it's been a known problem for a long time. I'm going to write a commentary in one of the major sleep journals about this problem of recurrent symptoms after TNA surgery. These kids are seldom cured. And I have, in the bibliography, studies from the late 19th century. And I was surprised they published it. Oh, that's not evidence-based.  It's observational studies. No random controlled trials until World War II, until shortly after World War II. Here's that same guy. Again, what do we do? Well, we advance the interior wall. So if you look that first red line after the adenoidectomy, all the tissue behind it was carved out. That's what an adenoid is.  And what I did is I brought the interior wall forward. That's the soft palate. If I had a pointer where that yellow line is, that's the soft palate. The therapy that we're doing is a nonsurgical advancement of the entire maxillary complex. And it not only looks great and prevents major complicated corrective orthodontics when they're older. It doesn't prevent it. They still often benefit from Invisalign when they're 13 or whatever. It doesn't mean I failed any more than an ophthalmologist fails when they give a four-year-old glasses. You need six pair before you're driving a car. Big deal. You fix the problem when it occurs and as it occurs. This is what we do. We expand. We don't always put this reverse pole face mask on. We used to only do this for Jay Leno-type people, kids who had underbites. I had a subtle underbite when he was four. I got pictures of him and nobody knew how to do this for him. But we do it on kids who have excess overbites. We still make the upper jaw come even more forward. So the lower jaw can grow even more forward to give them nasal respiratory advantage. This is how it works. There's a suture.    Well, way back in there, you have a suture called the Terrigal Maxillary Suture. And that will split open if you do it before the age of eight. So like I said, as long as you've got 20 teeth, two and a half years old. Most kids have 20 teeth. And I'll treat them at two and a half years old. And this is a, you know, Photoshop, not too scientific, but this is how it works. And it's attached to that posterior nasal spine is a soft palate. Here it is. Everybody said, well, expansion, of course it decreases nasal resistance because you're widening the nasal cavity, which is the floor of the nose is the roof of the mouth. It's the same wall. You not only do that, but you widen the nasal pharyngeal quarter in the back. It comes forward. The whole face will come forward. And that will open up that airway. So there's another way to do it. If you're squeamish, just close your eyes. But here's how you can bring a maxilla forward.  But it works. Ask me how I know. I need one. And what I just explained to you, you all know more than I did when my four-year-old, five-year-old, six-year-old, you know, when she was under eight, my baby, she's 25 now, but she looks like a movie star. And that was what broke our heart. It's like, yeah, I can't breathe. Yeah, I got migraines. Yeah, you know, I got sleep apnea, but I don't like what I see in the mirror. And it really does make a difference. So my own kid had to have that done because her dad, who does it now for lots of people, couldn't do it for her. This is a metric that was developed in 1970 by a Swedish orthodontist named Linda Aronson. And he said by eight and a half years old, if you're not at a certain dimension, and the first one is 20 millimeters, the second one is 15, you're at high risk.  So we do that measurement on every kid for the last 10 years. We have a database now of 60 children that started treatment before the age of six. And we're going to be publishing this as a retrospective observational trial, not prospective randomized controlled trial. It's still going to get published. So this is something I like to talk about ontogeny. And ontogeny, you know, from conception, you know, from in utero, through death. Okay. And when does it start? There are two types of malocclusion traits that will, there's actually four, but I'm going to talk about two of them. Narrowness, transverse, deficiency, and length. That's sagittal deficiency. Jay Leno being the perfect example of a maxillary sagittal deficiency as an adult. But this, you know, again, he could have been fixed when he was three or four years old. But he wouldn't be famous now probably, who knows. But, and then the other one is me. Okay, I'm chinless. I'm not overweight, but I snore like I'm a real fat guy.  They didn't treat me till I was 13. I wore headgear till my junior prom. So anyway, it's all wrong. It's all wrong what they're doing. And again, if you have children, you demand your pediatric dentist, general dentist who sees kids or orthodontist, how come you're not asking me about my child's airway? And how come you're telling me to wait until they're, you know, older? So this is a kid, one of the first kids I treated, referred, and I used to get, I'm not an orthodontist. I'm a pediatric dentist who only does orthodontics, period. I have drilled a tooth in about five years. My partner had me do one the other day, but I just, ugh, I hate it. I mean, tooth decay and early gum disease, they're preventable, completely preventable. Not suffered appreciably by anybody until agriculture, okay? So I'm making a great living off of putting out sugar fires. That's what I call it. And I just, we don't have much of it in our practice in Chicago anymore. This is, so I used to get a lot of crap from the orthodontist. You're not, you're not an RO, a real orthodontist, you know? I'm an imposter, right? Guess who refers to me? Allergist, ENTs, pediatricians, sleep medicine physicians, psychiatrist, psychologist, okay?  And I'm sorry, you know, this is being recorded, but... I've never been happier being a dentist because I just don't do dentistry anymore. I'm doing something completely different. So these lines are off, but I, the slide must have moved, but this is a kid who almost died, wait, let me... Okay, she had sickle cell disease, hospitalized, admitted for two years, once a month, and for a pulmonic crisis associated with sickle cell disease. We put her on CPAP. Well, what does CPAP do? It saves her life. It blows air into airway. It also smushes in her face.  It affects like binding of the feet. Certain Asian cultures will bind the feet to keep the feet small. It works the same way. But when you see what we did, and that doesn't look like an appreciable change, that's huge. The law of laminar flow says if you change the radius, you affect resistance inversely to the power of four. Meaning, if I double that airway radius, I cut resistance not in half, one over two to the fourth power, one sixteenth.  These kids respond to treatment so quickly, and it is so easy. They've been doing this on older kids, say 10 through 14, expansions, real common. If it'll work on a 10 to 14-year-old, it'll work on a two-year-old. Ah, what if they won't open their mouth? I'm a pediatric dentist. Are you kidding? We're pied pipers, we're taught that. We can't get board certified until we prove that we are competent at getting into the lives of children and their adult caregivers. So, they don't teach that in orthodontic residencies. They have no requirements to manage behavior guidance, we call it. Child development, none of that, because you're not going to be treating them until they're 11 or 12. Why should you need to learn all those things? So, that's got to change, and this is part of the Task Force, I'm not at the American Dental Association. So, this is, sorry, where do we go here? I'm getting away ahead of myself, sorry about that. I wasn't looking at that. So, I was actually trained at St. Louis University by one of the leading pediatric pulmonology neurologist sleep medicine doctors at Lurie Children's Hospital. He took us to St. Louis, a group of dentists, and trained us in assessment. Not how to do sleep studies or anything, how to really do validated risk assessment in children. And I've been doing it for 12 years now. I'm also so impressed, a 67-year-old getting a PhD. I've been a visiting scholar, consulting scholar at Penn in the Museum of Archaeology and Anthropology for eight years now. I will never get my PhD, but I have access to everything that a PhD student has. And it's gotten me all kinds of invitations to speak. And you met Janice yesterday through James Nestor, who's visited her as well. This is Mariana Evans, and we use her orthodontic office outside of Philadelphia to take these skulls out of the museum, and we do these three-dimensional radiographs. And we've established a new database, normative values that are anthropologically informed or pre-industrial informed. This is all it is, you guys. This is all your kid needs. Again, any relative neighbor, you know what? If it's obvious to you that, boy, that jaw doesn't look right, there's something wrong. And it could be affecting the airway, which could be affecting neurological development. So, again, normal isn't healthy anymore. It used to be. If normal wasn't healthy, guess what? You didn't survive childhood, period. And that is, I can say that with a high degree of scientific certainty, at least relative to the morphology of the craniophacial respiratory apparatus. This was first studied. This is well before I even was even curious about this. I found this paper, and now Jerry Rose hired me and I'm mentoring a PhD student in dental anthropology at University of Arkansas. And Robly, just like Mariana Evans at Philadelphia, has this three-dimensional machine and we take Native American skulls to his office and we analyze them. And that's Cheyenne Lewis. She's our PhD student there. Yesterday and Thursday, everybody, I was taking down notes. Everybody had something to say. People were talking about eczema. Oh, my God. I don't have time to talk about it, but that's a risk fact. That's a comorbidity with sleep and breathing disorders and malocclusion. Who knew that? Because of IgE. It affects respiratory function on every kid. So I ask every parent that brings their kid to me, did your child have eczema or do they know? Well, it's not a risk factor. They're saying it's a comorbidity. That's what we say. Anyway, this is what anyone who's heard me talk. This is what I always... And Todd, oh, my God. Todd, you are unbelievable. Every year he comes up with something novel and he lectures on it as if it's been his life's work. I don't know how he does that. Anyone who's heard me, it's just like, well, it's my life's work. And I'm giving you the most updated info, but I always digress back to where it all started for me. This is where jaws and faces started to get smaller with agriculture. And what else? Well, women had to enter the workforce. And when that happened, they stopped this lifelong commitment or at least the first three years of life to breastfeeding and baby-led weaning onto firm and fresh, unprocessed foods. So these are some of the talks. I was gonna... If I had more time, I would have just want to talk to about everybody here, but there just isn't time for it. So, again, early childhood malocclusion before the age of 72 months old. Five minutes left. How did that happen? Okay. This to me... This is bullshit, okay? First, orthodontic checkup at seven. That's a geriatric patient in my practice, okay? So, evolutionary medicine. Why do moths get sick? This should be affecting every aspect of health care, especially when it comes to children. Do you know about Luca? The last universal common ancestor to every life on Earth. So, you know, where does phylogy... Do you know what's common to everything alive since four billion years ago? RNA, become DNA. And the grip cycle. Everything alive that's ever lived, that's common to all of us. So, where does it all start? Malocclusion started probably around the time of the Industrial Revolution. Phylogeny, what is the family? Phylogeny just means the tribe, beginning of the tribe. Well, maybe we started as amoeba. You know, who knows? I'll just say anatomically modern humans. Antagini is obviously... And we are doing a... We're proposing a trial at Tufts University in the orthodontic department that says that we might be able to predict these comorbidities for apnea based upon the shape of the jaw in utero at 20 weeks. Stay tuned. That'll be what I'll talk about next year or the year after. So, every single skull that Mariana and I and Cheyenne look at, 100% that the maxilla is forward and wide. 100% before the Industrial Revolution. You can reasonably predict what that looked like as a baby when you see that. That's one of my patients. Can you tell me what he looked like as a baby? No, because we have orthodontics. They didn't. If you didn't have perfect jaws at two, three, four years old, you're dead. You do not survive a child. There's other reasons to die in childhood, but nobody died. If you reached the age of two or three, you had perfect jaws, and that means you were a nurse and weaned according to an ancestral pattern. So, I am just going to skip to one of them because of that awful audio you guys heard. I want you to hear something better. These are... I'm sorry. A lot of this stuff is like literature that's over 100 years old. Look at that.  These are kids I fixed for various reasons. There's one testimonial that I just need to offset the awful one that you heard. There's just no way I need the first randomized trial at World War II. Hand washing, scurvy. Those are all things based on observational trials, not random controlled trials. There he is. That's my guy. Hello, my name is Jeanette Castillo. This is Julian. Julian is 10 years old. He is diagnosed with Down syndrome along with some medical conditions, other medical conditions. We found Dr. Boyd through Dr. Lovmani. We came here three years ago asking for help to improve his breathing after a few surgeries with no success to help with severe sleep apnea. Dr. Boyd and staff have been a blessing to our family. Not just his breathing got better, but also his hearing got better. His hearing improved tremendously. Julian is now sleeping better, sleeping all night, and he's also hearing better. His speech has improved tremendously. Thanks to his hearing, we are so grateful for Dr. Boyd and staff. We get that stuff every day. You tell me I don't love going to work. That kid had irreversible hearing loss. We think it was misdiagnosed because we've known conductive hearing loss is reversible with expansion, but this is a kid who said he would never talk and now he talks. So that was pretty amazing. So who's to say? If we do this to a kid, am I going to increase their life expectancy at birth lifespan and maybe improve the amount of time that they get to stay alive and be healthy?  Do no retraction. Don't push the face back. Don't delay treatment. And has anyone seen this by JFK? Comfortable inaction. I love it. We don't do these things because they're easy. We do them because they're hard. He also said that and that's been inspirational to me. This was 1918. Sound familiar? And look at this. Does everyone know that your seasonal flu shot is because of variations from the Spanish flu? And once the pandemic's over, we're going to need two seasonal flu shots. We're going to need one for the Spanish flu, which we do now, and one for COVID. Men needed more convincing. Does that sound familiar? And they thought they were sissy. Well, thanks for your attention. We are going to open the microphones for questions, but I have a question. What do you think about or how should a parent help their kids work their jaw muscles with baby lead feeding? What are your thoughts on that? In addition to baby lead weaning and nursing, according to an ancestral pattern, I've had lots of moms. I nursed them, told two, and you're treating all five of them. You didn't nurse like an ancestor, but the other thing I've learned is men clinicians should never weigh in on breastfeeding. Okay, because we can't do it. And women... So I have a speech pathologist who works with me, Jody Walker, and she's also a certified or a facial myofunctional therapist. So or a facial myofunctional therapy. And you have one of the best in the world right here in L.A., Joy Moeller, her name is. So if anybody... I have every child get a myofunctional assessment. And also, pregnancy wellness. It's not just yoga. It's not just folic acid. It's breathing. There's something called gestational apnea. Women who do not breathe well during sleep, they can really enter uterine growth restriction, preterm birth, low birth weight. These are all things that can happen. Even if you're eating well and exercising, but if you're not breathing well, you can affect the delivery of oxygen to the fetus. I think he might be next. I was just curious about your thoughts on devices like the myobrace and myomunchie for kids of all ages, like infants through elementary school and beyond. Yeah, myobrace, infant trainers are the ones I use, myomunchies, myogysmuscle. These are little devices that have been designed to help children put their tongue on the roof of the mouth. And the earlier you start, I'm all for them. I don't really use them much because I start expanding. I can do this. Not a lot of people are really comfortable doing expansion on kids, so I use it to desensitize. There's some kids that they're just not ready. I just ask the parent, do you think he's ready? No, okay, then they're not ready. I don't want to treat yet, but let's try this. They have their place. Does it actually work to expand the airway? The tongue does the expansion. Whenever there's a conflict between muscle and bone, bone will always yield. In a little kid, if the kid's tongue is free, it doesn't have a tongue tie, and they can get their lips closed, the tongue will actually, that's what our ancestors did. They were papoost, when the hunter gathers, when the women went out in the fields and suckled, and the kids had to hold their heads up while they were papoost. Click sounds, forming consonants before we really had the types of language that's a lot of force on the palatal-facial sutural complex. There's lots that goes into it, and myobrace and things like that really do help that. Thanks for your talk. At the very beginning, you were talking about the distinction between health span and lifespan, and it struck me that in our meetings we talk a lot about that, and I just wanted to share a resource that I use in my talks. It seems like we're in a health shock for the millennials right now. They're really doing poorly. And so, if you want some data on that, I recommend the economic consequences of millennial health by Blue Cross and Moody's Analytics. And what they did is they compared the health of the cohort of the millennials with the same age group, but from prior decades. And it's measurably less healthy. I'd love it if you'd send me a link to that. The other one is the health span initiative. That's what I, Martha Stewart narrated thing, the health span initiative. It's amazing. So I think all of those things would work together quite well. Incidentally, the person who wrote Survival of the Sickest, you know how he got onto that? He discovers that his grandfather had hemochromatosis, and he felt better after he donated blood. And then it went back that bubonic plague was actually the hemochromatosis protected people against bubonic plague. There's all kinds of things in that book. I was so glad to hear. Oh, it's a brilliant book, yeah. Thank you. So my question is after the period of nursing that early part of life, would it have some correctional would it affect some correctional malformation if the food, the diet was chewy, kind of meat centric for young child?   I mean, and let them start knowing that. Oh yeah. Say I'm a college student and I want to follow in your footsteps. What do I study? Well, I every kid, and I've raised up, brought kids, bring their own kids to me now that I've started seeing years ago. Great question, because I get to tell you something I just love doing is I ask these kids as they're going off to college promise Dr. Kev something. Yeah, what Dr. Kev? Take one anthropology class because it's not required. Cultural anthropology, evolution by please, because it's a Rosetta stone, you can figure out everything if you start to think about how things go from simple to complex. It's just that everything works that way. Everything. So that would be my one nugget that I would like to give kids. And a lot of them take me up on it. Yeah. Is it your opinion that the malocclusions you're seeing in the face are leading, in utero, are leading to breastfeeding issues? Yeah, they could. We can't even say that they, even though we know like if a child is born with no chin, that showed up in utero, okay? It doesn't just happen. And when you see it in early childhood, postnatally, it will always reliably persist, worsen, and it either is or will become a comorbidity with sleeping, breathing, and neurological and other systemic issues. So if a kid comes out, retranathic, which many do, and there's some orthodontic textbooks that say, oh, it's an advantage, evolutionary. The chin holds in so that the delivery through the birth canal is easier.  It's not true. The chin goes nowhere near the pelvis when a baby's being born. So in all the skulls that Mariana and I have looked at, even fetal skulls, the jaws are forward. It looks like I've gotten in there and done treatment on them. So it can make it difficult, but so can tongue tie, so can lip tie. There's people, lactation consultants, and there just needs to be more people that probably can help reverse that. It's a reasonable hypothesis. Hello, Sharona. Thank you so much for a fantastic talk. I just wanted to say that as a periodonist, people in their adult years, 50, 60s come to me like, why am I losing my teeth? I brush, I have the best toothbrush, I see my hygienist every three months. Why am I losing my teeth? Why am I losing my dental implants? And I can almost always trace it back to childhood, mouth breathing, and of course also low vitamin D levels. To me, those are the two biggest risk factors. So much of what you do prevents these horrible problems later on in life. Yeah, we think pre-temporal mandibular disfunction, pre, pre. It starts in early childhood and it isn't jaw pain, it's asymptomatic. But you see signs, they're grinding their teeth, they're wearing them down. And it's not really oral hygiene.  There wasn't, you know, so good point. Okay, we are ready for break and if you have any questions, you can approach the front of the room. Thank you.


separation in scheduling policy and mechanism, right? This is a nice example of sort of a nice clean separation between policy and mechanism that, and this is kind of a design pattern or an example of a way to build systems that we'll see examples of later in the class as well, when we talk about virtual memory and file systems. So I'm gonna give you a little bit of a, you know, an overview of some of the tensions that drive scheduling, right? So what do we expect from computers and how does that line up or not line up with the most efficient way to allocate the resources, right? Because we talked about the kernel as that being one of its goals, right? That it's doing resource allocation and trying to do that efficiently, but when it comes to scheduling, there are some interesting trade-offs to me, right? And then finally, hopefully today, we'll get through some of sort of the simple canonical scheduling algorithms. So my goal today is to, you know, to try to do this, I'm not gonna do any review this morning to save us a little bit of time, which I just lost by being late. But hopefully what will happen is on Friday we'll do kind of a fun lecture and we'll talk about a real Linux schedule, right? A real modern, fairly interesting Linux schedule and there's kind of a fun story about the Linux community that comes out of it, okay? All right, so, yeah, so we actually have some videos online now, I'll link them off the website. And in every one, I seem to be wearing the same thing. So I'm gonna work on that actually. I have some new shirts in the mail, as it turns out, and a sweet gift from my wife. And yeah, so this year's videos, so last year, I don't know why we did this, but last year the camera followed me and I walked around a lot. So people who have been watching that have probably been frustrated by that feature of those videos and sorry there's not much we can do about it now. This year we're just looking at the slides, right? Which is probably the better way to do it, right? So the slides are clearly visible in this year's videos. All right, so remember we were going through scheduling. We said, you know, what was scheduling? You know, when do we get a chance to schedule? And then how do we do schedule, right? And we can clearly divide scheduling into kind of two parts, right? So the first part is what's the mechanism for switching threads? And this should not be a new idea to you, right? Because this is what we've been talking about for the last week, which is context switching and saving thread state, et cetera, et cetera. So that's our mechanism, right? But now we've gotten high enough up in the sort of kernel stack of abstractions on top of the CPU, if you will, that we can actually start to talk about some of the policies, right? So now we have this mechanism that says I can start and stop thread safely. I can save their states and then when they run again, things like the same. I have some tools in the kernel, these synchronization primitives that allow me to allow threads to coordinate and make sure that state is modified safely. And now, so now we can talk about, you know, an interesting thing, which is what should be the thread that's running, right? How do I choose the next thread and how do I allocate the CPU or multiple cores, right? So again, we talked about this, context switch moves, context switch and blocking operations move threads between the running, ready, and waiting queues, right? And yeah, I don't know. That's one of these slides a little too cheeky, even for me. Okay, so again, so scheduling is a nice example of this nice separation between policy and mechanism, right? And I mean, who wants this, like why, I think we've mentioned this in the past, but who wants to speculate about why, why does it make sense when you design a piece of software or a software system to try to separate your policy from your mechanism, right? Why not just, you know, integrate them together? You know, why not? That sounds nice. Integrates a good word, right? We should just integrate lots of features into our new smartphone app, right? On it. Well, okay, so I'll take the first three words of that answer, right? And then go with it. Policies might change, right? So for example, we've built up these nice mechanisms of how to switch threads on and off the CPU, right? And now what that means is that I can use those mechanisms to support a large number of interesting scheduling policies, right? So when you, you know, the reason is that my policies are gonna use these mechanisms, right? But if I bake these all together, then what happens is when I run the right new policies, I have to bake in the same mechanisms, right? And then those mechanisms, you know, end up very intertwined with the policies, and if the mechanisms change, I have to change every policy, et cetera, et cetera, right? So it makes sense, you know, to create these interfaces, you know, contact switching and other tools, and then just allow the scheduler to use them, right? Okay, so let's go through this example and look at each one of these and kind of tell me whether you think it's a policy or a mechanism. So let's see, designing which thread to run. One of the victims, Simon, policy or mechanism? That's a policy, right? Performing a contact switch, Sarah, policy or mechanism? Mm-hmm. So maintaining the running, ready, and waiting queues. Seshia, policy or mechanism? Satish, what's her name? I know, but what's your name? What's that? Shri Ragh, oh, sorry, okay. That's who I wanted to answer the question. So that's his mechanism, right? Giving preferences to interactive tasks. Someone just said it, wow. They were so excited, was that you? Someone just said it, maybe it was Bart. That's a policy, right? Or maybe I just, I didn't get much sleep last night, so I'm gonna be hearing things today. You've got to be spacing on those. Oh, I know, it gives it away.  I know, I should use a fixed-width fund. Okay, well, using timer interrupts to stop running threads, maybe somebody who doesn't have such an eagle eye can answer this one. Do you know? Mm-hmm, yes, the wide letter. And if I decided to choose threads to run at random, Andrew, that would be? Okay. Somebody should be taking notes of things to fix on the slides, not like me, for example, but I'm giving a lecture, so it's difficult to do. Okay, so, and again, so the other thing I want, you guys, to keep in mind, right, is that the CPU, how I schedule the CPU matters, right? We're gonna talk about the operating system's role in dividing up other kinds of resources on the system like memory and disk IO and stuff like that, right, that's the operating system's job, right? Like it's entrusted with multiplexing resources. But the CPU is particularly important, right? Why do you think that would be? You need a victim? Tim? Yeah, okay, yeah, I was worried about your answer for the first sentence, but yeah, I mean, in order to use anything else on the system, you normally have to get to the CPU first, right? If I wanna initiate some IO, I've gotta run, right? If I wanna use memory, I've gotta be running, right? So the CPU is kind of a gatekeeper, right? It's not to say that I'm gonna initiate some IO and I'm gonna use the CPU the whole time, but frequently in order to use any other part of the system or initiate an operation, you have to start with the CPU, right? So this is kind of an important part of scheduling the system, right? And this is why we talk about CPU schedule, right? We talk about dividing other kinds of resources, right? But the CPU matters quite a bit, right? And this is the truth, right? So if you schedule resources effectively, you can make even a modestly powered system seem fast, right? And if you don't schedule resources effectively, you can make a powerful system seem really slow, right? And this is the truth, and you guys aren't exposed to this very much because most of the schedulers you guys run on your machines hopefully fall into this category. And so they make your powerful, even more powerful systems seem even more powerful, right? But I guarantee if you run bad, I don't know if this would be a worthwhile experiment to perform, right?  All right, so let's talk a little bit about, I thought this was especially in preparation for Friday's lecture, which is gonna be about interactive scheduling. I thought this was kind of important to think about, right? So typical usage pattern for interactive systems, right? Server systems are quite different. And again, we'll get to that a little bit on Friday, right? So when I thought about this, I said, okay, well, what do we expect the system to be able to do, right? So one of the things is respond, right? Responsiveness. So when I click on something, when I provide some input, I expect the system to do some, right? And usually the system indicates that it's doing something by running a task that paints to the screen or whatever, right? But when you go and you start typing into the address bar on Firefox or you click on some part of the screen, you guys will notice, right? So this is kind of the stuff that you guys will notice about your machine if it doesn't work, right? So you guys will notice if there's a lag when you start to type, right? You'll notice if there's a lag before the menu draws, right, if you click in a particular part of the screen. This is just part of interactive use, right? Another thing I think that's increasingly important, right, is this idea of continuing to run a process at kind of a fixed rate, right? So what's an example of this? What's something that many of you guys probably do with your computers that requires this kind of like fixed interval keeping up with something, you know, where you will notice if it doesn't work well, Jeremy? Games, okay, games are a good example. I was thinking of something else, yeah, Feroon. Yeah, watching video, right? Like watching video online, right? I mean, that's when you're watching a YouTube movie, right? You will notice if it starts to stall or lag or whatever, if the frame rate doesn't keep up, but that doesn't require the full throughput of your machine, right? But it does require that your machine kind of periodically keep up with something, which is the frame rate required by the video that you're watching, right? And then there's also this, and so I thought of that as kind of active waiting, right? Like you're sitting there, you're watching it, right? You're not necessarily waiting for it, but there's this continuity associated with it, right? And then finally, there are certain things on your machine that you expect to complete, right? You expect them to happen. A lot of times these things, you're not necessarily even aware of them happening, right? These are frequently things that are to be done in the background, right? But there are features on your machine that then require this, right? So what's an example of something like this? This might be a little bit more subtle because again, this isn't something you guys necessarily always notice. Give me one. Yeah, okay, that's a reasonable example, right?  So that's a good example. What else, Frank? That's a good example. Yeah, that's a good example. I'm laughing for another reason, but I like this fragmentation. It's really mysterious. Greg, yeah, I mean, that shouldn't be like this, but it frequently is, right? Yeah, waiting for Java, waiting for Java applet to finish loading, right? That can seem like it takes years. Yeah, but then there's all these things that your computer is doing frequently in the background. So for example, one of the things I was thinking of is building indexes, right? So if you guys use things like spotlight or search features on Windows, frequently those components are periodically scanning your system and building indexes, so when you start typing into that little spotlight box, you get answers quickly, right? It's not building that on demand, right? That would be slow, right? It does some of these things in the background, but you would notice if those processes didn't finish because search results would start to be incomplete, certain things wouldn't work or whatever, you know? So there's all these things that are kind of going on and they need to kind of finish eventually, right? But they're not necessarily associated with interactivity, right? Okay. Right, so again, so responsiveness is that idea that when you tell the computer what to do, it kind of perks up and notices, so for example, I just clicked on my caffeine icon, right? Keep the screen from going off and the caffeine icon is now showing the little brewing thing, right? So I know it's working, right? If it didn't do that, I wouldn't know that, right? And we just did some examples of this, right?  Where you do something and you guys, you know, you don't think about this, but you're expecting a response from the machine, right? And sometimes, again, that response isn't necessarily I'm done, it's I understood what you told me to do, oh, master, and I am working on it, right? But these are some examples of these responsive type tasks, right? So connoity is this idea of, again, sort of active waiting, but you're expecting to continue to do something at a fixed rate, right? And I think, especially with media, this has become really, really important, right? And we just talked about some of these things.  Which I hate, which is always the first thing, I did you the favor of disabling the blinking cursor in your, you know, your VM for this class because it drives me nuts, right? And the webpage that I go to to figure out how to do that every time has this whole ramble on about Chinese water torture and how blinking cursors don't like that, right? So I hate them, but if you do like blinking cursors, then this is an example of something. So if you're sitting there watching a machine, the cursor is like blank, blank, blank, blank, blank. You know, like what is going on?  Things that require some, you know, it's essentially asking the machine, I need you to do these things at this time, right? Playing audio is another example of this. I mean, your MP3 player is not burning a lot of cycles, but if it doesn't get to run periodically, you notice, right? And then, and these sort of completion type tasks, right? So we start things in the background and a lot of times these aren't user initiated, right? These are things that are going on, so doing backups, right? So if you guys use things like time machine, you know those things can take forever, but you expect them to complete at some point, right? So the idea with this exercise is just to get you about, think about some of the different things that you expect your computer to do and the different types of expectations you have regarding those events, right? And frequently, you know, it's not like we classify applications into these categories, right? So if we're a music player, it's like, when I click on it, I want it to change tracks, I want some feedback indicating that it understood what I told it to do, you know, watch as this idea of playing the selected track and then finish might be, you know, updating some album art work in the background or something, something that happens periodically that again, if the album art doesn't get updated, then I start to get annoyed over time, right? But I don't necessarily know that this is happening, right? So with the web browser, the idea of click is sort of follow a link, you know, watching could be playing web video and then finishing is indexing search history, syncing, if you use things like old fashioned web browsers like Firefox, Chrome probably does this too, but I don't know how to use Chrome. So these are some examples of how, you know, single applications combine multiple of these features, right? So hopefully, you know, if you think about some of those, you'll realize that scheduling is this idea of, you know, what makes CPU scheduling interesting and challenging, right? And the reason why people are still working on it, right? You know, as recently as probably 10 minutes ago, right? It's because it requires balancing these different goals, right? And this is particularly interesting on interactive systems, right? So if you imagine that your computer could predict the future, then you might, and we'll talk about some scheduling algorithms that take that as a given, right? And they're useful to think about just from a conceptual perspective, right? But if you imagine that that was true, then it's not always the case, I would argue, that you want to do even what you could argue would be a provably optimal resource allocation, right? You know, keep all the resources on the machine busy, right? Maximize throughput, right? Because maximizing throughput conflicts almost directly in frequent cases with this idea of meeting deadlines, right? So I've got this process, I've got it started up, it's using all the parts of the machine, and suddenly I need to redraw the blinking cursor, right? So I need to stop that, move it off the CPU, start up the thread, it's gonna draw the blinking cursor, right? So that's not the most efficient way to do things, right? But your expectations for how your computer works dictate that that's what happens, right? So balancing these is very tricky. And the, you know, when responsiveness and continuity, right, require this idea of meeting deadlines, right? So responsiveness is interesting because it's this idea of, you know, the computer is kind of sitting there constantly, you know, waiting for you to mess up its whole life, right? It's like, I just started this big defragmentation and everything's going good, and then suddenly, like, you wanna browse the web?  That's gonna take like 20 minutes, right? Like, come back and bother me in 20 minutes, right? That's not how your computer works. It's gonna be interesting if that happens, actually. I mean, people already had this tendency to personify their machines, right? But that would be an extension of that, maybe. And then continuity is, I think, kind of this, but continuity is this idea of these predictable deadlines, right? So periodically, the music player needs to write data to the audio buffer, right? Or the flash player needs to repaint the screen, or whatever, right? And so continuity is these predictable deadlines where responsiveness is unpredictable, right? I don't know what's gonna happen. I need to respond to whatever you suddenly decide to do with your computer. And then again, you balance this against throughput, right? So throughput is this idea of, you know, again, I'm trying to put all the resources of the machine to work, you know, to the greatest degree possible, right? I try to get as many CPU cycles as much of the memory allocated. I want the disk, you know, going, assuming I have work to do, right? And throughput, again, kind of directly pushes against these other goals, right? Does this make sense to people? Stop me if you're confused or ask a question. I know we kind of rocket it off today. All right, so, and with interactivity, right? Humans are sensitive to interactivity, right? You guys, you know, I would argue at this moment, if people of you have your laptops out, you have no idea whether or not your system is optimally allocating resources optimally for throughput. You have no clue. And I would argue we almost never had a clue, right? You've just used the machine and assumed that things will happen in the background and eventually they'll get done, right? But you are very sensitive to responsiveness, right? Responsiveness of continuity. Those things you will notice, right? But you will, you guys, so the machine suddenly slows down, the cursor blinks a little bit weirdly. You'd be like, oh, what's going on, right? But you have no clue whether or not the machine is doing a good job of optimally allocating resources for throughput, right? So, what inverts this, right? In what case would we have a system where some of this might be flipped around a little? Well, in what case would we have a system where we might say that interactivity is not as important and throughput is more important? Yeah. Yeah, a lot of times servers, right? So, and this gets a little tricky too because certain types of servers, you know, web servers are serving interactive workloads, right? So, with the web server, it's like gotta get the page back to the user, right? A web server might be like, I'm collecting these 5,000 requests together so I can serve them all very efficiently, but in the meantime, those 5,000 users are sitting there watching the browser wheels spin around, right? But certain types of server workloads, right? Such as processing workloads or a lot of the stuff that Google fires out, these massive, you know, map-reduced jobs to do. Some of those are really just throughput-driven, right? It's like the difference, and optimal resource allocation for throughput, in those cases, can make the difference between something taking, I don't know, you know, like 24 days to run, and four, right? And four is nicer, you know? So, it's funny, a lot of times as computer scientists, we think about powers of 10, but when things get really slow, you don't really care about powers of 10, right? You care about like powers of two, right? Is this gonna take a week or three days, right? That's a feeling like a lot less time. Yeah, so again, you guys don't know, no clue whether or not your computer is doing a good job at allocating some of these resources, right? And again, I mean, so yeah, one reason for this, right, is that we don't like our time to be wasted, right? We're sensitive to our time with the machine, and we don't really care if the backup takes another hour, right? Because we just assume it's gonna finish at some point, right? All right, so again, let's go talk about, you know, bump up back to the top a little bit and talk about how to evaluate schedules, right? So one way to evaluate schedulers is how well is it, how good is it at meeting deadlines, right? How responsive is it, right? Whether those deadlines are predictable deadlines caused by continuous tasks or unpredictable deadlines caused by user interaction, right? And then the second thing, again, these are in direct conflict with each other, right? Is how efficiently does it allocate system resources, right? Because there's no point idling parts of the machine that could be in use, right? So these two things, this is essentially, you know, getting something that works well on both these axes is our goal, okay? Okay, I just talked about this, okay, great. So, I mean, I just wanna point out one, you know, so we're not gonna talk about real-time scheduling in this class, real-time scheduling could probably be the focus of an entire separate course all by itself, right? But, so, so deadlines, we don't know about deadlines or things like video, right? So if I don't paint the next frame of the video within a certain amount of time, the user will start to notice that the video is jumpy or laggy or whatever, the sound will get off or something weird, okay? What about, so there are systems where these, meeting these deadlines is actually kind of really important, right, so what's an example of this, right? Who can give me an example of a system where if I didn't meet a deadline, like, I might not have a computer system anymore? Spencer, anybody wanna help them out? Sirach? Yeah, oh yeah, okay, that's a good one, like, well yeah, withdrawing the cooling rods, it's like, well, I decided to run the D-frag at that moment and the cooling rod didn't get withdrawn, you know, but what, I mean, so yeah, so it's like, you know, what kind of device might be, like, oh man, and, you know, so like robots, right? Or a great example of this, right? Like the Mars rover, it's like, oh, you know, you're like, oh yeah, well, few milliseconds here and few milliseconds there, right? It's like, nope, you're gonna have a jumble of computer equipment at the bottom of some Martian, you know, valley, right, so it's just not a good thing, right? So in certain cases, with like, surgical robots, for example, you know, like, whoops, you know, I was doing that eye surgery and again, I ran the D-frag and things slowed down a bit and now I had to paint the blinking cursor that was really important for the doctor and whoops, you know, you don't have an eyeball anymore, right, or you have, you know, 22,000 vision. So anyway, so there are cases where this is, this is actually pretty important, there are whole approaches to doing deadline-driven scheduling that are really important for real-time, real-time systems that, again, we're meeting these goals, could hurt somebody or damage something, and your computer is just here, okay. All right, so before we talk about a few scheduling algorithms, I know this has been crappy, so any questions about scheduling principles? Guru, oh yeah, so does anyone understand what the default OS 161 scheduler does? Has anyone looked at it? Yeah, it does nothing, right, but what does that result in? What's that? Yeah, it actually turns out to result in essentially round robin, right, so the idea is when threads run, they run for a scheduling quantum and then they get put back at the back of the ready queue, right, and so by not reordering the ready queue, the behavior that results is round robin, right, and you can run some tests to confirm that this is true, right, you guys will have a chance to play with that a little bit in assignment too, but the idea is that, right, you are given a chance periodically to reorder the ready queue, right, if you don't, then the system will just keep doing what it does by default, which is putting things back on the end and taking them off the top, right, and that will result roughly if you have a series of threads that are continually ready to run, excuse me, in a round robin schedule, right, which we'll talk about just two minutes for now. That was a good question, any other questions about scheduling principles and sort of scheduling goals? Goals, okay, so we're gonna talk about, you know, schedulers that use certain types of information, right, so when you start to think about making a scheduling decision, right, you're the scheduler, you, you know, the operating system has asked you to pick the next thread to run, okay, what kind of things might you want to know or think about, might be something that you like to, Greg, okay, so I might wanna know something about priorities, right, so essentially I might have some artificial way of establishing some importance between different threads, right, that's pretty common, what else might I want to know, sure, okay, yeah, that's a good thing too, if I knew how long the thread would run without blocking, for example, that might be a useful thing to know, Alyssa, what else would I wanna know? Yeah, yeah, these are great answers, so what resources, so, okay, let's continue this exercise, it's kind of fun, but now when you answer the question you have to tell me, do you think that you'd be able to determine this or not, right, so priorities, do you think you'd be able to determine that, yeah, those are just artificial numbers, we're just gonna attach to a thread, right, do you think you would be able to guess how long a thread would run without blocking? Probably not, right, you're probably gonna have to run the thread to find that out, what about the resources that threads are going to use? Probably not, right, now these are, again, these are good things to think about, like what would you want to know, right, if you were the omniscient, you know, oracle schedule, right, yeah, okay, yeah, so you might wanna know if the thread is an interactive, doing some kind of interaction, right, so maybe the thread that needs to paint the screen or draw the blinking cursor needs to be given a little bit of extra priority, that's a good point, what else, AJ, give me one, yeah, same, yeah, like other threads that are in the running queue, right, I'm gonna look around and see what's out there, okay, let's see what I actually had up on the slide, so, right, so some of these are varieties of what's about to happen, right, what will happen next, right, if I do this, what is the next thing that will happen, and when we talk about access to this kind of information, we're talking about oracular, I like that word, or oracle schedulers, right, schedulers that have access to information about the future that real schedulers don't, right, and clearly, you know, unless, I mean, if you can implement one of these, that would be cool, but, and you know, you probably would, well, I don't know, it'd be nice if you took this class in one, that would be neat, but if you can do that, then you're probably gonna do well in life, but most of us can't, so we're gonna use them as a point of comparison, right, so we're gonna say, compared with this oracle scheduler, here's how well ours does, right, frequently, right, so this is the big, you know, this is kind of a big mantra we'll come back to in the next few slides, right, usually what systems do as a substitute for what's about to happen next is they use information about what just happened, right, so, you know, the mantra is use the past to predict the future, right, everybody say that along with me, use the past to predict the future, try that again, a little louder, use the past to predict the future, I'm not being weird about it because we'll talk about this many times in this class, right, this is a system design principle which is kind of, try to, you know, this is the best we can do, right, we can't predict the future but we know what just happened, right, and it's better than nothing, right, and sometimes it's not very good, right, because what might've just happened is the machine might've just been sitting there for 10 minutes and what might be about to happen is you're gonna come back and start to browse the web but, you know, again, it's better than nothing, right, it's better than just like being like, I know nothing about anything, okay, so let's see, oh, Firefox is an upstate ready to install, it's helpful, okay, aha, here we go, great animations for these, okay, so the first type of schedulers we'll talk about are schedulers that kind of take that approach, right, Sean, sorry. What's that? Oh, whoops, oh, sorry, what does the user want, right, so that was the priorities part that Greg got in there, right, and there's usually some way of layering on top of the input about the machine that the schedule will be collecting on the fly, again, some kind of information about what users want, right, and on Friday we'll talk a little bit about how this may or may not be anything, yeah, Remo. Yeah, I mean, yes, right, I mean, because normally what happens is the user doesn't really know what they want to happen, right, like you could tell the scheduler, I want this to have a higher priority, right, but remember the scheduler has to make decisions on a continuous basis about exactly when the thread is going to run, right, and you don't want to tell it that, right, like you could have a system that every time it needs to schedule threads popped up a little box and said, hey, what do you want to pick, right, but then you probably spend most of your time clicking on that box, right, rather than getting any useful work, right, so, right, priorities are, it's a great question, priorities are a good way of layering information on top of the system, but the scheduler is still in charge, right, because you don't want it to be otherwise, right, because the schedule, the decisions the scheduler is making, you don't want to have to make, right, okay, all right, so, imagine this is my system, these are my little thread guys, right, all color coded and nicely named, and this is my ready queue, okay, and in this, at the start of time, right, all my threads are ready to run, okay, there's nobody on the waiting queue, and you know, a simplest, what would be, so let's say again, let's say I have no priorities, I have no ability to examine the state of the machine, I have no information about the future, the past, the present, what can I do, and if all that falls down, what's left, what are some things that I can still do in order to produce some kind of ordering, I'm gonna ignore you for a few minutes, great, Gina, yeah, I could randomly pick a thread, right, and I could just repeat that process at infinite, right, what's another thing I could do, what does your system currently do, well that's what I'm gonna do, right, I'm gonna allow each of that to run for a period of time, then I'm gonna stop, right, but Masakazu, what can I do, I could pick randomly or I could just do what, wanna help him out? Should you just, in the order that we're picking? Yeah, I could just run them in some sort of arbitrary order, right, so your system is kinda, yeah, it's first in, first out, and as long as I'm on the ready queue, I'm just processing the ready queue in order, right, so yeah, so here's my random scheduler, I start T3, I let it run until it, in this, so, yeah, I remember it, this is a nice example, so in this case, I set up T3 on the CPU, I allow it to run, and at some point it finishes, right, or it's time quantum expires, right, this is, remember, this is preemptive scheduling, so I am not gonna let T3 run forever, like somebody said, I'm gonna give it a period of time it's allowed to run, and at some point, so what happens here, right, I set up T3, I let it run, and then what happens, what does that dotted line represent? Yeah, but what else does it represent, Mocta, right, so I'm gonna perform a context, but how did I get a chance to do this in the first place? Yeah, so either the thread called yield, which Gino pointed out, which in this case it didn't, and you don't know that, but I do, because I know T3 very well, but in this case what happened is that there's a timer in up the fire on the system, right, so a timer in up fire, the scheduler ran, it said T3's quantum is over, right, T3 is still ready to run, so where does it go back to? It goes back on the ready queue, okay, so now what do I do, what's the next thing I do, let's say I'm doing a random scheduler, who can predict the next thread to run? Hopefully nobody, right, so okay, I pick T5, right, just arbitrarily, I let T5, now okay, so that's the end of T5's quantum, what happened here? Thornton, why didn't T5 finish its quantum? It's got some time left, why did it stop, Tom? So it could have felt like stopping, what do we call that? Wembley, it could have called yield, it could have said, hey, I do feel like stopping, right, what else could have happened? Tom got it, well I'm gonna perform a context switch, but if it didn't finish its quantum, what did it probably do? Yeah, it performed a system call, or it blocked, right, so this thread is no longer able to run, right, if it called yield, it could go back on the ready queue, I think, if I remember what happened, it's X on the slide, it did not, right, it blocked, it performed a system call, now it's waiting for something, so it goes on to the waiting queue, okay, so okay, we can, I think you guys understand how this works, T2 runs till it's finished, where does T2 go? On the ready queue, now T4 runs, T4 also is going to block, and now I'm back to T3, right, T3, it looks like it's going to continue to run, and I don't know how long I dragged this example out for, but, oh, look, okay, there's another interesting thing, so okay, so what happened here, right, so T1 ran, didn't finish its quantum, so it means that it did what? Kevin, it blocked, right, so where is T1 going to go? It's going to go to the waiting queue, but what just happened? There were two things that happened, right, yeah, so what happened to T5, right, they don't have to be competing for resources, right, at some point, yeah, assume, yeah, whatever T5 was waiting for happened, right, so T5 was sitting there waiting for some Iota complete or network packet to arrive or whatever, and it happened, right, so now T5 is ready to run, okay, and, but I don't have to, but again, this is the point, I don't have to run T5, so I turned out I ran T2, T2 blocked, okay, so you guys, who understands this example? Okay, good, okay, so here's an example of, you know, again, what we would call, this is random scheduling, right, I choose a scheduling quantum, right, that's the maximum time I allow a thread to run, and I choose a thread to run at random from the ready pile, right, I don't really have a queue if I do random scheduling, I just have a pile of threads lying there, or queue implies some kind of ordering, and I run it until it blocks or it's scheduling quantum expires, or what else? What else could happen here? The cruel omission, yeah, I did you, it could complete, okay, that's good too, what else could happen? There's several things that are missing here, Navya, it might yield, is that what you said? Good, yeah, I heard yield or leave, yeah, so it could yield, right, and there's a few things missing here, right, and when a thread leaves the waiting state, I just put it back on the ready pile, right, and that's normally what happens, so it's just an important point thing to point out, just because I finished waiting, doesn't mean I have to run next, right, I just end up in the ready queue or ready pile, and the system then gets to make a decision about who gets to run, right? So Ron Robin's schedule is very, Ron Robin's scheduling is very simple, right, in this case I establish an order of queue, I put a thread on the tail when it's ready to run, when it gets to the head, I pop it off, I run it, and then I put it back, and if it's scheduling quantum expires, I put it back on the tail of the ready queue, again I have a queue here because I have ordering, and if it blocks, I just put it into the waiting area until it's ready to run again, and then it could, so if it leaves the waiting state, what could I do? There's a couple of different things, Robert, yeah, or I could put it at the head or whatever, I just have to find somewhere new in the queue form, right, so yeah, there's a couple, I couldn't put it at the head or at the tail, or I could, you're right, I could also put it back to where it was, right, if I had some arbitrary ordering, right. All right, so again, these are what we'll think of as kind of the know nothing schedule and algorithms, right, these require no information, and they also accept no user input, right, so there's no priorities, there's no information about the pass post in the future, there's no prediction, and these are not necessarily very interesting in schedule and algorithms, usually we just use these as kind of strong men to compare other things to, right. Okay, wow, man. Sometimes I know it's me who wrote these slides, sometimes. So one of the things that happens here, right, so when we start talking about interactivity, okay, one trick, I shouldn't say it's a trick, right, one thing that's scheduling algorithms, so somebody pointed this out before and it was a great observation, right, one thing we might wanna know is whether a particular thread is involved in an interactive task, right, at that point in time, right, threads may go from being involved in an interactive task to be involved in a more CPU, a resource-intensive task, right, but at a particular moment in time, I might wanna say, is a thread involved in an interactive task or not, right. One thing I can use to try to determine whether or not that's true is to see if the thread blocks before its scheduling quantum expires, right, why would that give me some clue about interactivity, okay. Yeah, so my argument is that an interactive thread or a thread that's involved in an interactive task is more likely to not use its entire scheduling quantum, it's more likely to block before its scheduling quantum expires, why is that? Yeah, so this is important, right, so let's say I have, for example, a thread that is watching the mouse, right, or that is watching a particular menu or something, so, or let's say, actually even better than that, I have a thread that's reading keystrokes from the screen, right, you're typing and that thread is drawing the screen, okay. What does that thread spend its time doing? Like, what's the three or four things that thread does? Yeah, Greg, give me the first one. Well, no, no, so this is just this thread, right, so don't worry about context switches, it will be context switching with other threads, but what does this thread do? It waits for you to press the key, okay, so it's blocked, and then when you press the key, what does it do? It just paints the screen and then waits again, right, so let's say, yeah, let's ignore painting to the screen as a blocking, but it would be, right, but basically it sits there, it waits for you to press something, it does a little bit of work, and then waits again, right, so a thread that does that will normally run, do a little bit of work, not exhaust its quantum, and then block again, so this is one of the tricks that old Linux schedulers use to try to identify interactive threads, right, they look for threads that don't use their scheduling clock, right, so if your thread finishes before it uses the scheduling quantum, it assumes that it's an interactive thread, so in contrast to that, and we'll finish with this today, what does a, let's say you have a thread that's computing to do this of pi, right, does it ever not use its quantum, if it finishes computing, it'll do this of pi, right, it'll stop using its scheduling quantum, right, but in general no, right, like a CPU bound or a resource bound task will just run through its entire quantum, and the operating system will always have to yank it off the CPU, right, every time, you know, it's like, oh man, that stupid pi thread, it ran out of CPU time again, right, whereas the, you know, the keyboard input thread will not do that very often, right, so this is an important thing, and this is something we'll talk about when we talk about Linux scheduling on Friday, and we'll finish these slides as well, so I'll see you guys then.