qq_43412960 2020-05-03 19:51 采纳率: 78.6%
浏览 163
已采纳

这是一个关于操作系统的问题

操作系统负责对程序分配资源,我有几个疑问,分配资源是不是只是内存呢?
分配的内存多大,是由什么决定呢?
另外,我猜想了一下电脑会变卡的原因,因为操作系统让各个内存中的程序以时间片的形式运行,切换进程的过程,导致电脑卡顿,求解,我的思想对吗?

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-05-03 22:00
    关注

    操作系统分配的资源不光是内存,还有cpu,各种外设。同时运行几个程序,谁优先级高,谁优先级低。同时几个程序都要打印,那么需要打印队列,还有网络等等。其中非常重要的是管理磁盘和文件。
    在windows问世以前,最流行的是dos操作系统。d(isk) os的意思是磁盘操作系统。可见磁盘管理的重要性。windows操作系统之所以叫windows,因为它一开始最重要的职责是管理了一个窗口化的可以重叠的图形界面。

    操作系统分配内存说的是物理内存,一个程序要使用多少内存,是这个程序本身决定的,这个内存是逻辑内存。比如你用c语言写
    int arr[100];
    int * p = (int *)malloc(sizeof(int) * 100);
    这些都会使用400个字节的内存。
    但是,这个内存对应究竟哪个物理内存地址,就是操作系统的事情。操作系统使得多个程序可以不相互干扰地使用同一个计算机的物理内存。
    你不用担心你arr这个内存会破坏另一个程序的内存。

    电脑的“卡”和“慢”是两个不同的概念。"卡"主要说的是计算机没有办法及时处理用户的响应。表现为用户试图通过键盘鼠标操作,电脑不响应。或者是电脑给出的输出反馈不及时,不连续。“卡”不一定是电脑的性能不行,也有设计的问题,也有网络或者外部的性能的干扰。

    应该来说,计算机的“卡”是一种超出设计者和使用者预期的“慢”。比如说,安装一个软件,或者转换一个视频,拷贝一个文件,让计算机做科学计算,很多很多场景,本身就是需要一个用户可以感知的时间的,但是只要计算机给出良好的反馈,没有用户会觉得有什么违和感。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。