These videos have been extremely helpful so just wanted to leave a thanks
@angelicafroio7096Ай бұрын
I have a few questions: In the real examples at the end, can a computer really have 16 TB of RAM? How do we know that the size of the entries in the page table will be 64 bits? Why do we need to include the offset in the page table? I thought the entries just needed page number and corresponding frame number. Can't you still have internal fragmentation with paging? Like if you can't evenly split a process into a number of frames then you're left with one remainder page that isn't completely full? In other words if (process size % page size) != 0 then you have an incomplete page which would cause internal fragmentation. Consequently, does this mean that you definitely cannot have external fragmentation with paging because processes are divided into fixed size pages? Thanks :)
@damm2961Ай бұрын
Still Learning
@brookeschwartz6339Ай бұрын
Thank you so much omg. OS is such an annoying class and it's amazing having clear, simple explanations accessible for free online. Really a game-changer
@lewiscole5193Ай бұрын
I believe that Professor Cole has confused "first fit" with "next fit" in this video. In first fit, you starts searching to the list of available hole from the *START* of the memory region in which you are dealing with. In next fit, you start searching the list of available holes starting from where you last successfully made an allocation. So in the case of first fit, the example shown at [13:23] has process 1 fitting into region B, followed by process 2 fitting into that portion of region B not occupied by process 1 because there will still be space available in that region which will be found when the availability list is scanned from the beginning again. The situation described at [13:23] will look the way that Professor Cole describes because after process 1 has been allocated to region B, the request for process 1 will start where the search for process 1 left off which means that the *NEXT* region E will be found next.
@valentrixАй бұрын
Salutations from Argentina. Geat content <3
@maryoyosh4581Ай бұрын
I love your teaching😊
@GabrielTrejo-sj4ju2 ай бұрын
Thank God this video exists
@albert_ma40212 ай бұрын
thank yu
@albert_ma40212 ай бұрын
you are the best .... i hope your account keeps growing.
@hrushirajg99912 ай бұрын
Please upload a video on How to thank you very much😂
@kamyarsadeghi39913 ай бұрын
she speaks so slow that at 1.5x speed still sound totally normal lol
@uuitgaurav3 ай бұрын
I have exam time but I can't concentrate i am watching shorts evry time.i try to study.
@husamalsairi1643 ай бұрын
this is one of the greatest videos that explain Contiguous Memory Allocation & Frafmentation, Thanks
@nitilpoddar3 ай бұрын
Thanks it really helped
@enronenron24114 ай бұрын
hands down the best explanation of TLB in KZbin
@enronenron24114 ай бұрын
amazing thank you. you explained things very clearly
@ПавелИльин-н6г4 ай бұрын
Спасибо! Хорошо что есть Русский перевод
@maurice_morales4 ай бұрын
Super nerdy and I love it.
@CryptAmine5 ай бұрын
27:45 How is 1GB × 512B = 512GB Why is the result unit is GB ?
@Donald_486w6 ай бұрын
Brace yourself, cash refund incoming
@floatoss6 ай бұрын
In question 4 (at 23:48 to be precise), each entry in the page table is going to hold a frame number at max, right? We know that we have 2^{32} frames (done at 17:30) in our system. Now, we have 2^{36} entries in the page table with each entry holding a possible 32 bit value referencing the frame (we don't really need 64 bits for this), giving us the total size of page table as 2^{36} * ( 32 bits), right? You have it as 2^{36} * ( 64 bits). Where am I wrong?
@lewiscole5193Ай бұрын
I'm not Professor Cole and I don't play her on TV (and I'm not related to her either), but I think I can answer your questions, so here it goes. > In question 4 (at 23:48 to be precise), > each entry in the page table is going > to hold a frame number at max, right? Correct. And since we're talking about a 64-bit machine, the largest possible integer value that the hardware to deal with directly is a 64-bit value. A 64-bit value means that we are talking about something that is stored in eight (8) 8-bit bytes. > We know that we have 2^{32} frames > (done at 17:30) in our system. Correct. > Now, we have 2^{36} entries in the page > table with each entry holding a possible > 32 bit value referencing the frame (we > don't really need 64 bits for this), [...] While *YOU* may only need 32-bits to hold a page frame number, the hardware decides what units of storage it wants to deal with. For some types of hardware, it may indeed be the case that it can deal with 32-bit values directly if it wants to, but this need not be the case. And in this case, all we know is what Professor Cole stated which is that we are talking about a 64-bit machine meaning that it likes/prefers to deal with 64-bits at a time. > [...] giving us the total size of page > table as 2^{36} * ( 32 bits), right? Again, only if the hardware lets you. I suspect that you are drawing on your knowledge about common processors like those of the x86 and x86-64 variety. x86 and x86-64 machines are indeed capable of dealing with 32-bit long integers if you want to tell them to perform some sort of arithmetic. But when it comes to address translation, it's up to the hardware to decide what it permits and even on these types of processors, they deal with 64-bit values in their page tables. You don't get to say what the hardware should do, the hardware does that and you need to accept that or go into another profession. Just as an FYI, there are some machines that truly are "word addressable" rather than "byte addressable" meaning that the addresses that they generate can reference whatever they consider to be a "word" which can be 64-bits at a time. Why would memory be "byte addressable" if the processor is "word addressable"? Well because more than just the processor you are familiar with may access memory. Peripherals tend to deal with bytes and so there may well be some other dedicated I/O processor that moves data to and from memory as a stream of bytes. > You have it as 2^{36} * ( 64 bits). > Where am I wrong? Professor Cole is playing the role of hardware architect and therefore gets to decide what the hardware does and does not do and when.
@יקירמעודה6 ай бұрын
wow thank you!!!
@sajilrahim28216 ай бұрын
i love you from gilgit baltistan
@OneEye_King6 ай бұрын
Thank you for this video. Very well explained.
@JackieJKENVtuber7 ай бұрын
16:04 I do not get why these calculations are made.... If there is a fixed size for each of these partitions, we need only have an array of partition sizes, order the pointers to those partitions according to their sizes and compare the process size until we find the first one that's equal in size or larger than the process. If it's occupied, go on to the next one. Why waste computing cycles checking for every single partition?
@furgly65297 ай бұрын
What’s an Offset , Address , Indexing ??
@AbhishekVerma-kj9hd7 ай бұрын
I think no of bits required for page no is equal to the log of size of page table
@snarf457 ай бұрын
For people who may be confused, what she is referring to as 'virtual memory' is actually called logical memory. Virtual memory is a whole different thing
@lewiscole5193Ай бұрын
At around [4:30], Professor Cole says that virtual addresses are the same as logical addresses. She's more or less correct depending on how picky you want to be.
@ironmonkey19907 ай бұрын
thank you !
@tebes117 ай бұрын
This exemple is wrong. In the classic second chance algorithm after inserting new data into a frame the reference bit must be set to 1. When starting at frame 0 after inserting 4 into the frame we have to set the reference bit to 1 in this frame. There is also a pointer showing which frame is the candidate frame (victim frame) to insert data at the next page fault. So a the the beginning all the reference bits a set to 0 and the pointer is set to frame 0. Inserting 4. Setting reference bit to 1. Moving pointer to the next frame (in this case frame 1). When there is no page fault the frame where the value is locate will have it bit set to 1 if not already. The pointer will still be set to the last frame in date.
@sebastianlv8573 ай бұрын
thats a different implementation
@b213videoz7 ай бұрын
0:45 so I'm not alone confusing "contiguous" with "continuous" 😊
@tommasoc.22077 ай бұрын
THANK YOU A LOT. This is the video that finally made me understand the topic
@prakharwini7 ай бұрын
❤
@hobinh87447 ай бұрын
thank you so much, i cannot understand when i study at school but you help me a lót
@Maria-md4po7 ай бұрын
thank you soo much , im glad that you included all the conditions in one question itself
@comicmania767 ай бұрын
That was good! Thanks Mam!
@nerometallica86778 ай бұрын
crystal clear explanation, thanks
@nerduser10008 ай бұрын
the only video which cleared the concept for me thank you casey
@therealajmelmuadz8 ай бұрын
Thank you for such an easily understandable video. I find the Dinosaur book tough to understand for some concepts