Memory is a core component of computers that allows CPUs to interact with programs and data. It was invented in the 19th century and has grown enormously in capacity over time. Memory comes in two main types - primary memory (RAM) which is volatile and holds active data and instructions, and secondary memory like hard disks which is non-volatile for long-term storage. RAM itself comes in variants like DRAM and SRAM that differ in how they store bits of data. ROM is read-only memory that stores instructions during startup. Caches provide even faster access than RAM but have limited capacity. Overall memory allows computers to function by temporarily or permanently holding the digital information they require.