linux桌面管理器原理?
Linux的远程桌面应该分两个部分,首先是Linux客户机连Linux服务器,接着是windows客户机连Linux服务器,还有现在用平板电脑连远程桌面。Linux客户机连Windows服务器其实没啥可说的,rdesktop和termianl server比起windows自带的“远程桌面连接”。 命令:
1. nfs,telnet等均可登录,即将远程的那个配置成主机服务器,这边作为客户机登录. 比如:telnet telnet 192.168.1.123 说明:192.168.1.123就是远程的Ip地址 2. 现在设想登录到远程主机rhostname上,运行gimp 程序,并把它的显示输出到本机的屏幕上,那么需要依次执行以下操作:
1.启动X 服务器 # xhost +rhostname (允许远程rhostname 机使用本机的X Server) 2.telnet (或ssh)登录远程主机 # telnet rhostname 3.设置DISPLAY 环境变量 指定了一个显示设备,所有的图形程序都将显示到这个设备。
DISPLAY 的格式为:hostname:displaynumber.screennumber。
hostname是本机主机名,或者是它的I P 地址。一般d i s p l a y n u m b e r 、screennumber 都是0。
# echo $SHELL 如果返回的是 /bin/ksh,那么可以用:
# export DISPLAY= 本机的IP 地址:0.
0 如果返回的是 /bin/csh,那么可以用:# setenv DISPLAY 本机的IP地址:0.
0 如果返回的是 /bin/bash,那么可以用:# DISPLAY= 本机的IP 地址:0.
0 # export DISPLAY 4.启动gimp 程序 # gimp
C++程序运行原理?
Linux将虚拟存储器高端的1/4留给内核,剩下3/4全留给用户进程。虚拟存储器上中的程序主要由以下几个重要组成部分:
1.进程控制块(process control block,简称PCB)
PCB中保存了进程hello的运行时的存储器图像和寄存器信息,它帮助操作系统在内存中找到我们的hello程序,如果没有它,hello只是和其它程序杂乱无章地分布在内存中就乱套了。
2.栈(stack)和堆(heap)
程序中的自动变量都位于栈上,而堆则用来让程序员自己手动分配(malloc)和释放(free)的内存空间,如果程序员忘了释放,则有垃圾收集器gc代劳。除此以外,栈还是程序转移中一个很重要的概念,程序的返回地址通常也保存在栈上。
3.文本段(text segment)和数据段(data segment)
所谓的文本段和数据段对应的就是程序的代码部分和全局变量,把程序的代码和数据分开处理是有好处的,比如我们在windows打开好几个word,这些进程只是数据段不同罢了(它们都拥有相同的代码),因此内存中永远只要有一份word的代码就行了。
4.共享库的映射区域
操作系统通过将共享的对象映射到虚拟存储器的“共享区域”来使得代码能够共享,一方面提高存储器的利用率,一方面可以使得进程能够共享一些数据。
安卓系统原理?
这个问题比较宽泛,安卓是一款基于JAVA的操作系统,所有的安卓手机安装了linux内核的操作系统,手机启动后,会先启动Linux,Linux会启动JAVA虚拟机,也就是jvm的移植版本,接着,Java就会启动安卓系统的各个组件,象桌面啊,电话啊,这么一来,手机就运行起来了。
linux虚拟机原理?
虚拟机:指通过相关的软件,模拟计算机的硬件和操作系统,进行计算机的管理,软件安装,文件的使用,并且不会对用户的真实的计算机环境造成任何影响。
虚拟机的原理就是用软件虚拟一个可以独立使用的电脑主机的硬件环境出来给你玩,是在你现在系统中用一个窗口来显示的另外一台电脑,磁盘空间足够大的话可以做多台虚拟主机,可以定义给每一台虚拟机使用几个cpu。…