我在阅读很酷的文章“ DOS如何将程序加载到内存中?”
How does DOS load a program into memory?
阐明对在DOS中加载和执行程序的过程的疑问。水很清澈,但我仍然有疑问:
一旦COMMAND.COM发出(称为)INT 21h中断,“参数”(例如程序的文件名)将如何处理?是保留它们直到调用的程序退出(返回),还是在调用INT 21h之后立即将其丢弃?
例如,我的意思是,DS:DX所指向的程序文件名,即“ C:\ HOMEWORK \ TEXT01.COM”,是否保留在内存中,直到执行的程序退出或立即释放,并且该内存为重用(覆盖)?
注意:我知道寄存器和指针会改变,但是一旦执行的程序运行,字符串会发生什么?
谢谢!