不要在Unix下遍桌面程序(2)《精通Unix下C语言与项目实践》读书笔记(10)

简介:
不拘一个遍程序系列程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国。
宝宝图片:超可爱的小宝宝 博客
 
第1回 回评论读者展迷茫,出《笔记》浪子释疑惑(十)
作者:朱云翔,胡平(朱朱胡工作室)

1.6.2 大部分维护不需要图形界面

服务器一般放置在专业的机房,这个机房可能离你的办公地点只有几步之遥,可能托管在城市某处,也可能在天涯海角,总之,不在你触手可及的地方。
不过服务器的维护却是经常的事情,这个维护包括操作系统的维护、数据库的应用与维护、应用软件的维护等,有其是一些管理员,时不时登录服务器操作就是他的工作,如果大家不嫌麻烦的话,大可每次都亲自到服务器旁边去登录,比如机器托管在北京,公司开在长沙,那么每次用机器你就做T2/Z18赶到北京,update一下然后有T1/Z17回来,这边前脚刚下火车,突然想起还有个地方忘记改了,于是又要刚过去,一个月下来,不敢说维护工作怎么样,但是至少了响应国家号召,极大的扩大了内需,嗯消费就是爱国的表现,相信评个N大杰出青年之类的是没有问题。
很可惜,目前我们所处的网络时代却限制了那么多杰出青年的产生,我们可以通过远程管理的方式登录服务器,比如Windows下的远程桌面,Linux下的VNC,就是在图形方式下操作遥远的计算机,相当的方便。不过不当家不知道柴米贵,让我们算一笔帐:
假设桌面分辨率为1024×768,颜色为24位真彩色,那么存储一个桌面大概需要位数有:
1024×768×2418M
假设你的桌面每秒钟变化一次(这个速度已经相当的慢了,估计很多人都受不了),那么要求你的网速至少是18M/S,乖乖,如果你这个管理员登录服务器,那也就意味着服务器的死期到了。
不知名的游客(小声嗡嗡):可以降低分辨率啊。
下面降低分辨率和颜色,假设桌面分辨率降低为640×480,颜色为256色(8位),那么存储一个桌面大概需要位数有:
640×480×82.3M
每秒钟2.3M/S,哎,你还要不要服务器活了,干脆杀了服务器得了。
编程浪子:以上算法是未调优的图形远程桌面分析,事实上“好”的图形远程软件会才用很多补救措施,比如简单颜色度、压缩传输、局部传输(不会每次都传送全部桌面,他只会传送有变得的地方)等等方式避免网络消耗过大,不过这样势必加重服务器的负担,并且图像也不连续,而且这种做好治标不治本,徒于奔命而已。
因此可见,就目前的网速和服务器其它资源而言,采用图形远程终端还是比较贵族的做法,而且那样极度的浪费宝贵的网络资源也与创造集约型社会的号召不符,所以在Unix中不值得推广!大家还是老老实实使用字符界面这个有前途的职业吧。
编程浪子:Windows用户习惯了图形界面,而且很多程序也只能在图形环境下运行,所以不谈Windows
其实Unix下字符远程终端已经相当的成熟了,比如TelnetSSH,当然FTPSFTP)也是一个。

1.6.3 难度过大,舍本逐末

这里的难度过大不是指图形程序本身的难度,就KDEGNOME和基本X-Windows程序设计本身而言没有太多的知识和技巧,关键是能够提起同学们兴趣软件难度太多了,比如编一个三维游戏,这个已经不能划入图形编程的领域,而是三维程序的地盘了。再比如说看碟软件,他的设计重点不是如何显示图像,而是如何解码,这个解码算法的数学知识就不是三言两语可以说清楚了,恐怕即使真的说清楚了,同学们好不容易聚集起来的一点学习兴趣,也会荡然无存,那朱朱胡工作室就没有粉丝了,自毁长城的事情咱可不做!
编程浪子:我很理解大家想编游戏程序或者漂亮程序的心理,不过本次Unix学习是不会教的,下次开C或者C++班时讲述专门以益智类游戏作为实例讲解,希望到时各位继续捧场。
 
 
 本文转自 zhuyunxiang 51CTO博客,原文链接:http://blog.51cto.com/zhuyunxiang/163111,如需转载请自行联系原作者

相关文章
|
2月前
|
存储 算法 C语言
"揭秘C语言中的王者之树——红黑树:一场数据结构与算法的华丽舞蹈,让你的程序效率飙升,直击性能巅峰!"
【8月更文挑战第20天】红黑树是自平衡二叉查找树,通过旋转和重着色保持平衡,确保高效执行插入、删除和查找操作,时间复杂度为O(log n)。本文介绍红黑树的基本属性、存储结构及其C语言实现。红黑树遵循五项基本规则以保持平衡状态。在C语言中,节点包含数据、颜色、父节点和子节点指针。文章提供了一个示例代码框架,用于创建节点、插入节点并执行必要的修复操作以维护红黑树的特性。
65 1
|
2月前
|
NoSQL 编译器 程序员
【C语言】揭秘GCC:从平凡到卓越的编译艺术,一场代码与效率的激情碰撞,探索那些不为人知的秘密武器,让你的程序瞬间提速百倍!
【8月更文挑战第20天】GCC,GNU Compiler Collection,是GNU项目中的开源编译器集合,支持C、C++等多种语言。作为C语言程序员的重要工具,GCC具备跨平台性、高度可配置性及丰富的优化选项等特点。通过简单示例,如编译“Hello, GCC!”程序 (`gcc -o hello hello.c`),展示了GCC的基础用法及不同优化级别(`-O0`, `-O1`, `-O3`)对性能的影响。GCC还支持生成调试信息(`-g`),便于使用GDB等工具进行调试。尽管有如Microsoft Visual C++、Clang等竞品,GCC仍因其灵活性和强大的功能被广泛采用。
94 1
|
2月前
|
编译器 C语言 计算机视觉
C语言实现的图像处理程序
C语言实现的图像处理程序
77 0
|
25天前
|
存储 编译器 程序员
C语言程序的基本结构
C语言程序的基本结构包括:1)预处理指令,如 `#include` 和 `#define`;2)主函数 `main()`,程序从这里开始执行;3)函数声明与定义,执行特定任务的代码块;4)变量声明与初始化,用于存储数据;5)语句和表达式,构成程序基本执行单位;6)注释,解释代码功能。示例代码展示了这些组成部分的应用。
39 10
|
2月前
|
自然语言处理 编译器 C语言
C语言程序的编译
C语言程序的编译
45 2
|
3月前
|
前端开发 C语言 C++
C语言03----第一个程序HelloWorld(vs版)
C语言03----第一个程序HelloWorld(vs版)
|
4月前
|
Unix C语言
用C语言打造自己的Unix风格ls命令
用C语言打造自己的Unix风格ls命令
|
4月前
|
自然语言处理 C语言 C++
程序与技术分享:C++写一个简单的解析器(分析C语言)
程序与技术分享:C++写一个简单的解析器(分析C语言)
|
4月前
|
程序员 编译器 C语言
详解C语言入门程序:HelloWorld.c
详解C语言入门程序:HelloWorld.c
|
4月前
|
机器学习/深度学习 C语言 Windows
程序与技术分享:C语言学生宿舍管理系统代码(可运行)
程序与技术分享:C语言学生宿舍管理系统代码(可运行)
38 0