Issues with the SSD storage system on Mac OS

I need of some help with a Mac book pro’s SSD storage.

Currently running Mac OS Catalina Version 10.15.4 with a flash storage drive with 121 GB of space.

For some reason, the system keeps running out of virtual memory, and when I check the storage manager it displays a lot of odd behavior.

enter image description here

I get this error message all the time, and it’s not possible to turn off automatically. I think though for this one, it has to do with the browser taking up a lot of space, so if I check the browser’s task manager I can see which tabs are taking up a lot of space, and I close them to free up some virtual memory space.

But the problem has more to do with the overall storage on the flash storage drive. When I open the storage manager it shows that about 50% of my disk space is going to other. That’s a lot of space.

enter image description here

enter image description here

In the screenshot above, I wish I could show the time, because I think something tricky is going on, after a half second, 15GB disappear from the other category (from the first image to the second, they were only taken a second apart). So I think my memory problems are coming from the way the OS is coded.

And often the only way to get through these memory issues is to restart the computer -- which for some reason removes a lot of virtual space. I think the new SSD drives treat virtual memory almost like RAM or a cache system now days, way different than the physical disk drivers from before.

What I was wondering, is there anyone out there that can point me in the right direction or link me to some articles or tutorials on how to go about debugging this?

I currently reading up on Kernel Programming, but I bet Apple isn’t going to allow me to fix this myself.

https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/vm/vm.html#//apple_ref/doc/uid/TP30000905-CH210-BEHJDFCA

Could anybody point me in the right direction on how to fix this?


Solution 1:

Several points to make here:

First and foremost - the difference between the two screenshots is not just that the "Other" category shrunk. If this was the case, I can understand why you argue that this must a bug of some sort. However, if you look closely you'll see that a new row appeared named "Other Users" - and this accounts for the changed numbers as it takes up 12,49 GB of its own.

Essentially when you open that window, the system displays the information currently available to it - while at the same time scheduling a new calculation in the background. This means traversing part of a disk index in order to group the storage used into meaningful categories. In your case that means that another user on your Mac has 12,49 GB of files in their account.

This is by no means a consequence of "how the OS is coded", nor are your memory problems caused by "OS coding". The window you're looking at, and the calculations that continually update, are not in any way part of the operating system kernel.

I would strongly recommend using a program such as Disk Inventory X or DaisyDisk to locate large files, and see if there's something you can do without, or perhaps move to secondary storage, in order to clear up space.

The reason you're seeing the "Force Quit Applications" window a lot is that you have programs running that are filling up your physical RAM. As you have a relatively small capacity of 8 GB of RAM, programs like Google Chrome will quickly fill it up. Some times you can save lots of memory by using alternative browsers such as Safari or Firefox. You could also consider upgrading the RAM capacity, if that is possible with your model of laptop.

Normally though, applications filling up the RAM won't result in the "Force Quit Applications" window. Instead the operating system would automatically use part of the disk drive to offload RAM in order to keep all applications running - a process known as "swapping". If this happens a lot, you will end up with a slower system - however you won't have to quit applications. When your disk is completely full, as yours seem to be, swapping becomes impossible, and you'll have to quit applications instead.

Contrary to your statements, it is not so that this process is different with SSD than with traditional hard drives. It is exactly the same process. Swapping is done in exactly the same way with SSDs as with traditional hard drives. However, as SSDs are usually much faster, the performance hit taken by swapping is not as severe here.

The reason rebooting your Mac helps is because this stops all the running programs - and thus reclaims all RAM they have been using. This also means that any disk space used for swapping is reclaimed as the programs using that space are no longer running. This is why you see the amount of free disk space go up a bit after rebooting. If you continue to run the memory hogging programs, the amount of free disk space will go down again eventually when the system swaps data out from RAM.

However, none of the above is because the operating system uses "SSDs as system cache", or because SSDs are treated differently than "disk drives from before".

I wouldn't recommend that you spend time on researching kernel programming for solving this problem. Judging from your questions, you'll have an extremely long learning curve, as you would first need to understand how operating systems work, and the basic concepts. However, it is not so that Apple "won't let you" fix this problem - nor that they "won't let you" do kernel programming. You can do all the kernel programming you want.

However, it is completely the wrong direction to take in order to solve this problem, as it is not caused by an operating system bug, or a deficiency in operating system functionality compared to other common desktop operating systems.