它现在已经很长时间了.保护模式x86中的正确术语是选择器.
话虽如此,近跳和远跳之间的区别在于前者保持相同的代码选择器cs而后者(通常)改变它.
在平面存储器模型中,前一种情况几乎总是如此.
您可以拥有一个操作系统,其中平面内存模型由多个选择器提供服务,但我看不到它的有用用例,并且它不是Linux的工作方式,至少在x86上.
NEAR在同一段中,而FAR在另一段中。
一次近距离跳转将跳转到当前代码段内的某个位置(由指向cs)。通常,远跳转用于跳转到不同代码段中的某个位置,但是如果远地址中的段选择器与中的值一致,它也可以跳转到当前代码段中的某个位置cs。
据我了解,Linux虚拟内存中没有段?
对于使用某种分段内存的Linux CPU端口,我不会感到惊讶。所以,我想说要看情况。但是,您不太可能在x86平台上看到Linux使用细分。但是,您或其他人也可以使小型Linux以实模式运行并使用段。
另外,我们如何知道我的程序代码是否分为多个段?
您检查CPU和OS。自然,如果您编写可移植的C代码,那么您就不必担心了。