1. 采用系列机方法
  所谓系列机是指在一个厂家内生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器。如IBM370系列机有370/115、125、135、145、158、168等一系列从低速到高速的各种型号。
注:系列机一般具有相同的系统结构,而采用不同的组成和实现技术,有相同的指令系统,但在低档机上指令的分析和指令的执行是顺序进行,而在高档机上采用重迭、流水和其它并行处理方式。
2. 采用模拟与仿真方法
  模拟方法是指用软件方法在一台现有的计算机上实现另一台计算机的指令系统。 如果主机A本身是采用微程序控制,则对B机器指令系统每条指令的解释执行可直接由A机器的一段微程序解释执行。这种用微程序直接解释另一种机器指令系统的方法称为仿真。
  注:仿真的运行速度要比模拟方法快,模拟方法中模拟程序存放在主存中,而仿真方法中仿真微程序存在控存中,用仿真方法时,由于微程序机器级结构更依赖计算机的系统结构,因此对于系统结构差别较大的机器难于完全用仿真方法来实现软件移植,所以通常将模拟和仿真这两种方法混合使用,对于使用频率较高的指令,尽可能用仿真方法以提高运算速度,而对使用频率低且难于用仿真实现的指令则用模拟方法来实现。
3. 采用统一高级语言方法
  如果能采用一种可以满足各种应用需要的通用高级语言,那么用这种语言编写的应用软件可移植问题就解决了。如果操作系统的全部或一部分是用这种高级语言编写,则系统软件中的这部分也可以移植,所以采用统一高级语言来编写应用软件和系统软件是实现软件移植的一种方法。这种方法可以解决结构相同或完全不同的各种机器上的软件移植。要统一高级语言,语言的标准化很重要,但难以在短期内解决。