根节点对应于这样一种不在堆中的位置,它们中包含指向堆中的指针。这些位置可以是寄存器、栈里的变量,或者是虚拟内存中读写数据区域内的全局变量。
非也
C程序的Mark&Sweep收集器必须是保守的,其根本原因是C语言不会用类型信息来标记内存位置。因此,像int或者float 这样的标量可以伪装成指针。例如,假设某个可达的已分配块在它的有效载荷中包含一个int,其值碰巧对应于某个其他已分配块b的有效载荷中的一个地址。对收集器而言,是没有办法推断出这个数据实际上是int而不是指针。因此,分配器必须保守地将块b标记为可达,尽管事实上它可能是不可达的。
主板、电源、硬盘(ROM)、光驱、显卡(GPU)、网卡(网络设备)、声卡、调制解调器、软驱(老式电脑)、散热器、显示器、键盘、鼠标(输入输出设备)
单片机可以把微处理器、存储器和I/O接口电路等制作在一块集成电路芯片上