1.计算机历史上有过哪些操作系统?分别是码软谁?
2.OS分类方法
3.VScode配置MASM32运行环境(断点/运行/debug/配合emu8086(非DOSBox))
计算机历史上有过哪些操作系统?分别是谁?
计算机历史中出现了许许多多的操作系统,然后大浪淘沙,码软无情地淘汰了许多,码软只留下一些经历过市场考验的码软:
桌面操作系统
1)MSDOS:Intel x系列的PC机上的最早的操作系统,微软公司产品,码软曾经统治了这个领域,码软emrpad3.0源码现在已逐渐被自家兄弟WINDOWS 9x系列所代替,码软现在除了一些低档机外已不多见。码软
2)Windows 9x:微软公司产品,码软从Windows 3.x发展而来,码软现在是码软基于Intel x系列的PC机上的主要操作系统,也是码软现然个人电脑中装机量最大的操作系统。面向桌面、码软面向个人用户。码软也就是码软现在的XP、Vista、WIN7。
3)Mac OS:苹果公司所有,界面友好,性能优异,但由于只能运行在苹果公司自己的电脑上而发展有限。但由于苹果电脑独特的短线最好的源码市场定位,现在仍存活良好。
4)linux:Linux是一种计算机操作系统和它的内核的名字。它也是自由软件和开放源代码发展中最著名的例子。 严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套件等等。
服务器操作系统
1)UNIX系列:UNIX可以说是源远流长,是一个真正稳健、实用、强大的操作系统,但是如皋诚源码头由于众多厂商在其基础上开发了有自己特色的UNIX版本,所以影响了整体。在国外,UNIX系统可谓独树一帜,广泛应用于科研、学校、金融等关键领域。但由于中国的计算机发展较为落后,UNIX系统的应用水平与国外相比有一定的滞后。
2)Windows NT系列:微软公司产品,其利用Windows的友好的用户界面的优势打进服务器操作系统市场。但其在整体性能、效率、稳定性上都与UNIX有一定差距,所以现在主要应用于中小企业市场。
3)Novell Netware系列:Novell公司产品,其以极适合于中小网络而著称,在中国的证券行业市场占有率极高,而且其产品特点鲜明,仍然是服务器系统软件中的长青树。
4)LINUX系列: Linux是一种自由和开放源码的类Unix操作系统。目前存在着许多不同的挖矿源码xmrLinux,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。
OS分类方法
操作系统种类繁多,依据不同的标准可以进行分类。 按照应用领域,操作系统可以分为桌面操作系统、服务器操作系统、嵌入式操作系统。桌面操作系统主要面向个人电脑用户,如Windows、1元夺宝 源码Mac OS X;服务器操作系统用于服务器端,如Linux、Unix;嵌入式操作系统则用于嵌入式设备,如RTOS。 根据支持的用户数目,操作系统分为单用户和多用户操作系统。单用户操作系统如MSDOS、Windows,允许多个程序同时执行,但同一时间只有一个用户在使用系统。多用户操作系统如Linux、Unix,允许多个用户同时在线使用系统。 按照源码开放程度,操作系统可分为开源和闭源。开源操作系统如Linux、FreeBSD,其源代码对公众开放,允许自由修改和使用。闭源操作系统如Windows、Mac OS X,其源代码由开发者或公司持有。 根据硬件结构,操作系统可分为网络操作系统、多媒体操作系统和分布式操作系统。网络操作系统如Netware、Windows NT,支持网络环境中的资源共享和通信。多媒体操作系统如Amiga,专为多媒体应用设计。分布式操作系统则允许多个计算机系统协作完成任务。 按照使用环境和作业处理方式,操作系统可分为批处理、分时和实时操作系统。批处理操作系统如MVX、DOS/VSE,允许多个作业排队等待执行。分时操作系统如Linux、UNIX,允许多个用户通过终端同时使用系统。实时操作系统如iEMX、VRTX、RTOS,对响应时间有严格要求,用于关键任务。 根据存储器寻址的宽度,操作系统可分为8位、位、位、位、位操作系统。早期系统多支持8位和位,现代操作系统如Linux、Windows 7支持位和位。 简单操作系统,如早期的DOS/、CP/M,主要功能为执行命令、文件服务、支持高级编程语言编译和外部设备控制。智能操作系统则具有更高级的功能,如决策、学习、自我维护等。扩展资料
操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。操作系统的种类很多,各种设备安装的操作系统可从简单到复杂,可从手机的嵌入式操作系统到超级计算机的大型操作系统。目前流行的现代操作系统主要有Android、BSD、iOS、Linux、Mac OS X、Windows、Windows Phone和z/OS等,除了Windows和z/OS等少数操作系统,大部分操作系统都为类Unix操作系统。VScode配置MASM运行环境(断点/运行/debug/配合emu(非DOSBox))
一、之所以不用DOSBox
不利于集成到VScode,执行代码需要新开窗口,配置繁琐。ps:而且加断点和调试复杂。
感谢 masm-code插件的作者,终于可以补全啦qaq
添加关于调试的一些建议
二、步骤
0.网络状况不好可以用度盘资源:
// update
dos-player
masm
1.安装VScode
2.安装masm-code, code runner插件
3.从 masm sdk ver下载所需的masm,如果下载不了可以自行换 镜像,或者百度下载。
3.1.解压,然后换路径,一路yes就可以了。
3.2.记下安装位置,比如我的在g盘根目录。
4.百度或谷歌搜索 ms-dos player,下载这个软件,或者从链接的GitHub上面下载源码,编译安装。
4.1.解压里面的msdos到X:\Program Files (x),X为想安装到的盘符。
4.2.记下安装位置。
5.添加环境变量:对于win,win+R输入SystemPropertiesAdvanced>环境变量>系统变量>找到Path变量>打开>添加如下两个变量(根据安装masm和msdos的位置不同前面的路径要调整):
*note:如果不是位系统就在binary文件夹下选择相应的文件夹
*note:可以测试,如果加入Path成功,在PowerShell里面输入msdos , ml /? 以及link /?会有出现相应的信息。如果没有可以尝试重启。
6.打开VScode, ctrl+shift+P打开搜索json,选择:
7.在末尾添加设置:
*经评论中@影生 提出,将选项/AT去除然后将输出文件的扩展名改为.EXE,这样可以用伪指令格式书写程序。
三、helloworld测试
这里的.code 写法相当于 :
详细如下:
输出:
一键运行。
// update
利用emu完成复杂的调试:
**先安装open插件
**在emu设置中设置(工具栏)默认打开(右下角)
emu for win
在vsc里面编辑好文件后利用ctrl+alt+O用emu打开,然后进行各种调试
note:如果要链接额外的文件可以参考官方文档:
ML and ML Command-Line Referencenote:
MSVC Linker options:
*note:链接器的选项要写在/link选项
三、关于调试
最近又找到了一个调试汇编的方案,如果成功的话可以用vscode的native debug来调试:
路线1:编译安装djgpp版本的gdb -- 安装到dos里面 --利用里面的gdbserver连接虚拟机的COM端口 -- vsocde里面用native debug 连接,调试
路线2(最接近完成):利用上面dosbox-x 的patch --编译dosbox-x --连接gdbserver -- vscode 用native debug连接
路线3:利用wsl或者msys2安装或者编译qemu -- 利用gdbserver连接COM口 -- 连接vscode
但是现在的难点是找不到相应dosbox-x的版本,如果有找到的大佬麻烦留言呀!
后续应该会怎加一些汇编的例子和专门讲比较c和汇编的文章。()