- Mastering High Performance with Kotlin
- Igor Kucherenko
- 165字
- 2021-06-25 20:55:21
Memory management
Memory is one of the essential resources of a computer, and it's essential to manage it properly. Failure to do so can lead to slow performance and bugs such as arithmetic overflow, memory leaks, segmentation faults, and buffer overflows.
The primary purpose of a memory management system is to provide the ability to dynamically allocate the requested size of memory to programs and to release it for reuse when no longer needed. These systems perform management on two levels:
- Operating-system level
- Application level
We'll concentrate on the application level because it's the responsibility of an application software developer. The operating-system level is managed with an operating system.
There are two types of application-level management systems:
- Automatic memory management
- Manual memory management
Manual memory management assumes that the programmer uses manual instructions to release unused garbage. It's relevant to languages (still in wide use today) such as C and C++. The JVM has automatic memory management that involves the garbage collection.
- Go Web編程
- 兩周自制腳本語(yǔ)言
- Python進(jìn)階編程:編寫(xiě)更高效、優(yōu)雅的Python代碼
- Mastering Kali Linux for Web Penetration Testing
- Nginx Essentials
- TypeScript實(shí)戰(zhàn)指南
- Learning Selenium Testing Tools(Third Edition)
- Python漫游數(shù)學(xué)王國(guó):高等數(shù)學(xué)、線性代數(shù)、數(shù)理統(tǒng)計(jì)及運(yùn)籌學(xué)
- Windows Forensics Cookbook
- C程序設(shè)計(jì)案例教程
- Kali Linux Wireless Penetration Testing Beginner's Guide(Third Edition)
- C程序設(shè)計(jì)實(shí)踐教程
- Java:High-Performance Apps with Java 9
- Python Data Structures and Algorithms
- TensorFlow.NET實(shí)戰(zhàn)