Tag: 操作系统

多任务,multithreading和多处理之间的区别?

多任务,多程序和多处理有什么区别? 这是定期为我的大学操作系统考试,我找不到一个好的答案。 我对多任务和多程序有相当的了解,但需要确认。

什么是优先倒置?

我已经听说过关于操作系统开发的“优先倒置”这个短语。 什么是优先倒置? 它意味着要解决什么问题?它是如何解决的?

“虚拟内存”和“交换空间”有什么区别?

任何人都可以让我清楚虚拟内存和交换空间有什么区别? 为什么我们说32位机最大虚拟内存访问只有4 GB?

docker不是虚拟机,为什么容器需要基础映像操作系统?

据说docker不是虚拟机,容器直接在主机上运行。 但为什么容器需要一个基本的映像操作系统? 如果容器中的进程在基本映像操作系统上运行,则虚拟机和docker之间的区别是什么(只有基本映像操作系统可以重新使用并保持为只读?) 为什么它比VM启动更快? 什么构成了基本的图像操作系统? 内核,rootfs还是两者?

虚拟内存和物理内存有什么区别?

我经常和操作系统中的虚拟化概念混淆。 考虑到RAM作为物理内存,为什么我们需要虚拟内存来执行进程? 当外部硬盘的进程(程序)被带到主内存(物理内存)执行时,这个虚拟内存在哪里? 谁负责虚拟内存和虚拟内存的大小? 假设如果RAM的大小是4GB(即2 ^ 32-1地址空间),那么虚拟内存的大小是多less?

检查文件是否是在Python中的符号链接

在Python中,是否有一个函数来检查给定的文件/目录是否符号链接? 例如,对于下面的文件,我的包装函数应该返回True 。 # ls -l total 0 lrwxrwxrwx 1 root root 8 2012-06-16 18:58 dir -> ../temp/ lrwxrwxrwx 1 root root 6 2012-06-16 18:55 link -> ../log

如何开始学习linux内核编程,编码或阅读?

为此我有两本书:Robert Love和O'Reilly的“ 了解Linux内核”的Linux内核开发 。 我已经开始阅读这些书,我已经下载了Linux的最新源代码。 现在,从这里开始,我应该继续阅读这些书籍,还是应该开始阅读代码……如果我要开始编码,那么从哪里开始呢? 有这么多的目录和文件,我很困惑,哪个是最好的地方开始理解代码。 我还可以补充一点,我已经学习了操作系统课程,我对这些概念感到非常满意。请给出任何build议,以帮助我进一步完善。 也告诉我你是如何学会开始编程内核的? 先谢谢你…

从用户代理或Javascript中检测64位或32位Windows?

我想提供正确的下载版本。 我拥有的版本是: 32位Windows 64位Windows Linux的 使用用户代理字段检测Linux很容易; 但是如果Windows是32位还是64位,可以确定吗? 用户可能使用奇怪的浏览器 – IE和Firefox是常见的,我们可能有一个Opera用户的地方; 也许也是Chrome用户。 我知道,64位的Windows 7带有32位和64位版本的IE,我想把它们都发送到我的下载的64位版本。 (编辑补充:我知道我应该提供所有的选项,我会的,但是人们不会阅读这些选项 ,所以我想默认提供正确的下载,以提高可用性。当然,这是有帮助的如果我做对了,如果我弄错了,这是非常无益的。从目前的答案来看,看起来好像没有可靠的方法)。

何时使用os.name,sys.platform或platform.system?

据我所知,Python有三种方法可以找出在哪个操作系统上运行: os.name sys.platform platform.system() 了解这些信息通常在条件导入中很有用,或者在不同平台之间使用不同的function(例如Windows上的time.clock()与UNIX上的time.time() )。 我的问题是,为什么3种不同的方式做到这一点? 什么时候应该使用一种方式而不是另一种方式 哪一种方法是“最好的”(最有前途的证据或最不可能排除你的程序实际运行的特定系统)? 看起来像sys.platform比os.name更具体,允许你从cygwin (而不仅仅是nt )和linux2从darwin (而不仅仅是posix )区分win32 。 但是,如果是这样的话,那么sys.platform和platform.system()之间的区别呢? 例如,哪个更好,这个: import sys if sys.platform == 'linux2': # Do Linux-specific stuff 或这个? : import platform if platform.system() == 'Linux': # Do Linux-specific stuff 现在我将坚持sys.platform ,所以这个问题不是特别紧迫,但是我会非常感谢对此的一些澄清。

你怎么能组织一个游戏的代码,以适应MVC模式?

我是一个大学新生,为我的计算机科学学位…我已经编程了很多年,但最近我已经越来越多的关于组织代码,devise模式,语言差异等理论的想法。 我有一个Java类,所以我放弃了我的C ++研究和开发,并转移到Java和JOGL(Java OpenGL)。 太棒了! 但是那不是重点。 我想做一个小angular色扮演游戏,但是这个问题真的适用于任何types的游戏。 如何以结构化的方式组织游戏对象,如模型 – 视图 – 控制器模式? 它看起来是一个了不起的模式,使用非常广泛,并且有很大的意义,但是我很难弄清楚如何实现它。 例如,我需要跟踪一个GL对象来绘制到屏幕上。 我必须有实现MouseListener,MouseMotionListener,MouseWheelListener和KeyListener(或一个类,一个全function于一身的inputpipe理器)的类。 而且我必须把我的游戏数据放在一个所有这些不同的类可以访问和修改的地方。 如果有人按下键盘上的button,inputpipe理类需要以某种方式执行键映射到的动作; 当一个框架需要绘制时,graphics类需要find一种方法来循环所有不同的“事物”,并把它们全部绘制出来。 而我最大的问题,GUI; 它在哪里结合在一起? 这就像input,但不是完全一样,它需要从实际的游戏模拟中设置和获取数据片段,而且更复杂的是如果我决定尝试添加networking,那么(类似于GUI )也需要访问大量的数据进行修改和阅读… 哦,我只是困惑。 我不知道如何以面向对象的方式将所有这些工作结合在一起。写出明显符合模式的东西是很容易的,但是当你有大量的事情发生在一个游戏循环上时,相互修改和游戏数据等……我什至不知道了。 也许我只是把这个做得比实际更大。 有没有其他人有这种感觉? 请提供一些清晰的我的情况,所以我可以花更less的时间担心,不知道从哪里开始! -Ricket 编辑:find一个很好的图,可能会帮助我把这一切都…出处:(当心,PS文件!) http://www.tucs.fi/publications/attachment.php?fname=TR553.ps.gz http://img10.imageshack.us/img10/6278/mvcdiagramgamesbl5.png 编辑2:我也喜欢这个人如何计划他的MVC游戏的解释: http : //interactivesection.wordpress.com/2007/11/19/dum-de-dum-drum-my-first-mvc-game-development/ 编辑3:另一个伟大的文章! http://dewitters.koonsolo.com/gamemvc.html