X window的思想和终端的重大意义

边缘智能新篇章:RK3588上YOLOv8姿态估计的轻量化部署与性能优化实战 本文详细介绍了在RK3588平台上部署和优化YOLOv8姿态估计模型的完整流程。通过模型转换、ONNX中间表示和性能优化策略,实现在边缘设备上的高效实时推理,为嵌入式AI应用提供可行的轻量化解决方案。 阅读详情

说起 Xwindow ,很多人都知道,但是它的意义并不仅仅在于提供了一个图形操作机制,任何事情如果牵扯到它的意义,那么就不得不谈谈它的出生背景以及简要的历史, Xwindow 出生在终端大行其道的时期,那个时候,人们提出了终端的概念,这样的话一台计算机就可以被很多人共享,每个人一个终端然后连接到同一台计算机上,这样就扩充了计算机的概念,再也不是只有计算机旁边的人可以操作它了,只要有终端连接到计算机上,哪怕在大洋彼岸的人也可以是计算机的拥有者之一,这样的话,终端可以扩充到全世界,某种意义上讲,计算机本身和连接它的终端就是一台整个的大计算机,其实多用户,多任务的概念就是那个时期被发掘的。这里说的和 windows 操作系统无关, windows 系统根本就不是那个时期的东西,即使是后来的系统,它也没有做到后来者居上,想想 msdos 吧想想 windows3.1 吧,再想想 windows 多任务的发展吧,可怜的协作多任务,经典的毕竟是经典, unix 的哲学和文化影响了整个计算机产业,后面会提及。

     终端是有了,人们可以远程地操作计算机了,可是终端毕竟只是一个字符界面,那个时期有个字符界面就很不错了,可是人们总是希望把自己可以触及的东西尽量变得精彩,虽然很多人们摸不到那些巨无霸计算机,但是 unix 的产生和 c 语言的产生让很多人可以为计算机写程序了,人们开始可以在 0 和 1 的世界里面畅游了,用 0 和 1 搭建起来的世界成就了我们今天世界的精彩。既然如此,人们迫不及待地要改进终端的操作方式,于是图形化的操作界面便成了一个需求,毕竟视觉上的东西总是很逼真,它卸掉了很多字符界面的逻辑包袱,具有讽刺意味的是,也正是如此, windows 最后才风靡天下,不过 windows 也就仅仅如此罢了。如果说人们想到了在远程通过图形界面来操作计算机,那么必然要有一种方式来使得计算机“理解”这一种方式,需要注意的是,终端就是终端,即使它有了图形界面它还只是一个终端,真正的计算任务是在计算机端完成的,因此终端本身就是一个操作接口而已,不包括任何逻辑运算元素,因此比如说我按下一个按钮,那么我“按下按钮”这件事就必须告诉计算机,以前字符终端依着计算机,字符终端传过去一个“ ls -l ”,那么计算机知道该怎么做,把事情做完后会把结果传回来,这个过程是如此的容易被理解以至于根本没有什么要说的,字符终端只需要显示字符就可以了,但是图形界面就不一样了,这回计算机该照顾一下图形终端了。

     还是那个例子,我按下一个按钮,我的本意是弹出来一个提示框,注意,按钮是我按下的,计算机那边根本没有按钮这个概念,提示框也是在我的图形终端弹出的,计算机那边也没有提示框的概念,这就是说一定要通过某种机制使得当计算机“收到”按下按钮这件事时(当然要有一个约定表示比如计算机收到“ click 属性”就表示用户按下一个按钮),通过自己的计算,然后发回图形终端一个消息,当图形终端收到消息时,知道要在图形界面的某个地方画上什么图形其实就是一个提示框。图形终端已经不再是仅有显示字符的功能的“终端”了,它已经成了一个小得多的计算机了,拥有了自己的逻辑控制功能,于是就分出了服务器和客户机,服务器就是那个只负责计算和回显的大家通过终端(字符 / 图形)共享的计算机,而客户端就是拥有终端的小得多,功能也弱很多的计算机,这就是在计算本身的意义上分出的服务器和客户机,这种模型一直延续到现在,在显示的意义上,负责接收用户输入和显示的计算机成了服务器,而负责告诉服务器该如何显示的计算机成了客户机,而它们之间复杂的交互固然需要一个约定,这个约定成了一个协议,就是 x 协议,而整个体系就成了 X window 体系。见下图:

话说 linux 来自网络是从开发意义上说的,不仅如此,它的诞生环境决定了它的思想深深扎根于网络,这就是它继承于 unix 的最好的基因, unix 诞生之日就不是让用户在它面前摆置的,用户必须拥有一个终端,通过终端连接,当然终端可以在本机。在 unix 的诞生之日,它就宣称一切都可以来自于网络,这里的网络不仅仅指 TCP/IP 网络,那个时候还没有呢,网络的意义就在于分布式, TCP/IP 仅仅说的是一个网络的实现而已,它就是一套协议族,在没有 TCP/IP 的时候,可以通过终端的线路规程组成网络,也可以用任何可以把操作者和计算机拉开距离的机制组成网络,现在我们看一下当今存储领域很火的 SAN 吧,其实 SAN 就是一个不是 TCP/IP 的网络,它的实现协议就是 scsi 协议和底层的光纤传输规程,其实任何的计算机内部的 io 指令都可以实现一个网络协议,一台计算机本身就是一个网络,其中 cpu 是中心,而各种 io 外设都是这个网络上的节点,于是按照分布式的思想将那些外设拉到外边去不就组成了一台分布式计算机了吗?这个思想根本不是什么新东西,想想 unix 的终端,它不是把键盘和显示器拉到外边了吗? x window 当然也是,现在把硬盘拉到外面就成了 SAN ,这一切是不是很有趣。硬盘拉到外边再通过 scsi 的协议规程就可以让很多计算机共享一个磁盘阵列,这也不是什么新东西,想想商用 unix 的虚拟化的概念,一台计算机中运行 n 多个操作系统,分成了 n 多个 node ,在加上 numa 机制可能更复杂,这些操作系统不就是共享一个本机的磁盘吗?可见现在分布式的概念,集群的概念仅仅是一个策略性的东西罢了,机制在于什么?机制就是 unix 的哲学!

     SAN 的方式有好处吗?当然有,当 TCP/IP 风靡的时代,让人们恨不得把所有东西都架设在它上面,于是一个网络里面的数据就十分杂乱了,而且在数据量很大的网络, TCP/IP 会不堪重负,就好像一些粉丝把明星压得不堪重负一样的道理。这样通过另一个网络, scsi 网络来传输块级的数据,不但可以将大量的文件数据从 TCP/IP 网络卸载下来,而且很灵活的块级传输会使得效率更高,不像 tcp/ip 的文件级的操作,保留了很多高层的东西,这样也会使文件服务器很累, san 将存储策略交给了管理员,自己只管存储,人们像操作自己的磁盘一样操作 san 网络,再也不用被文件等高层概念困扰,也免去了很多的文件配置工作。如果按照 unix 哲学思考问题,那么计算机中的任何一个外设都可以被拉到外面,就连内存都可以,这样的话,分布式就真的变成现实了,人们再也不用为了分布式而写那么多基于 tcp/ip 的程序了,一切就好像在操作自己的计算机一样, tcp/ip 的负载将大大减轻。这就是一个轮回,起初人们使用自己的计算机而且在自己的计算机中保存一切数据,然后有了网络,人们知道了网络的概念后开始让网络帮忙,然后人们发现一切都是网络后,就又开始自主的屏蔽掉了网络的概念,就像 san 一样,本地化的操作着整个网络 ...

 

USB_TYPE-C 母座电路设计 本文详细介绍了USB Type-C接口(C2765186)的电路设计要点,重点解析了电源、识别和数据三部分的关键连接方案。电源部分需并联VBUS和GND引脚并加宽走线以承载3A电流;识别部分必须为CC1/CC2引脚配置5.1kΩ±1%精度的下拉电阻,这是触发PD充电的核心条件;数据部分通过短接正反插引脚实现盲插功能。文档还提供了完整的引脚对照表,并强调PCB布局需注意ESD防护、差分走线阻抗控制等要点,为Type-C接口设计提供了实用指导。 阅读详情

相关推荐

无人机VS地面机器人:用AirSim和Gazebo玩转ROS2仿真的5个实战场景对比

本文深度对比了ROS2生态中两大仿真工具AirSim和Gazebo在无人机与地面机器人应用中的表现。通过电力巡检、仓库调度、SLAM建图等5个实战场景,分析了两者在视觉保真度、物理精度、开发效率等方面的差异,并提供了跨平台协作的实用技巧,帮助开发者根据项目需求选择合适的仿真工具。

flink9streamer的博客 900

玩转Xwindow 终端

玩转Xwindow 终端                    文:郝强 2002-12-17用过windows 2000 终端仿真客户端的朋友们都知道,通过mstsc(终端客户端)连至win2000server的终端服务器上,可以像在window2000 server本机一样工作,用图形界面来操作和控制计算机。linux通过XDMCP来提供这种支持,我们只要用一个终端仿真软件(如xmanager

standout的专栏 1401

高功率半导体叠阵激光准直

摘要:研究针对高功率半导体激光器叠阵的光束整形问题,通过Zemax软件模拟5个巴条(间隔1.81mm)的LD阵列(总功率300W)。采用非序列模式建立模型,设置慢轴/快轴发散角分别为5°和19.5°,并配置包含19个发光点的巴条结构。通过S-TIH53材质的快轴准直镜(焦距0.6mm)和慢轴准直镜(焦距2.88mm)进行光束整形,有效降低了快慢轴发散角。仿真结果表明该方法能显著改善叠阵激光的光束质量,为高亮度光纤耦合提供了解决方案。

Zhaxibamao的博客 915

Ubuntu 20.04安装PyCharm快速配置指南

PyCharm作为主流Python集成开发环境,在Linux系统中需适配底层运行时与桌面环境。其本质是基于JVM的跨平台IDE,依赖Java运行时(如OpenJDK 11)、GTK主题、X11/Wayland会话及字体渲染引擎协同工作。在Ubuntu 20.04这类长期支持发行版中,因官方仓库未收录、Snap沙箱隔离、GNOME Keyring兼容性等问题,标准apt安装失效,必须采用tar.gz手动部署方案以保障权限可控与环境一致性。该方案兼顾启动速度、插件兼容性与中文显示优化,适用于科研教学及中小型开发

weixin_34050005的博客 345

AD9361数字调制入门:从IQ调制原理到动手实现第一个ASK信号(Vivado工程详解)

本文详细介绍了如何使用AD9361射频收发器实现ASK数字调制,从IQ调制原理到Vivado工程实现。通过Verilog代码示例和FPGA架构设计,帮助开发者理解纯逻辑实现数字调制解调的关键技术,特别适合软件无线电(SDR)初学者入门实践。

weixin_29158047的博客 374

从地方政府网站抓取政务公开数据:Python爬虫技术详解

在本文中,我们通过具体实例介绍了如何使用Python编写爬虫,从地方政府门户网站抓取政务公开数据。我们使用了requestsSelenium等最新技术,结合SQLite数据库存储抓取的数据,最后使用matplotlib进行数据可视化分析。通过本项目,您可以掌握如何抓取政府网站的公开数据,并将其进行清洗、存储和分析。这些技术对于进行政府政策分析、公共服务分析等方面具有重要的实际意义。希望通过本文的介绍,您能够更好地理解政务数据抓取的流程和方法,并能在实际工作中运用这些技术进行数据采集和分析。

2201_76125261的博客 1702

cocos2d-x项目(windows) 打包iOS前 运行调试基本的流程

1.在mac系统下:找到项目文件,proj.ios文件夹下找到:项目名称.xcodeproj双击打开. 2.进入xcode开发环境以后,会发现Class文件夹下面只有4个基本文件,项目中的游戏类那? 这时不要着急,选中Class右键选择Show in Finde 自己新建的类找到了,小激动有不有?接下来就要做一件非常有重大意义的事情啦,那就是把自己新建的类选中后,拖动到xcode打开...

weixin_30423977的博客 379

GEE:基于MODIS数据计算NDVI时间序列,并使用Savatsky-Golay(SG)滤波器对其进行平滑处理

优快云@_养乐多_本文将介绍如何在 Google Earth Engine (GEE) 平台中,使用 MODIS 数据计算 NDVI 时间序列,并对该数据集应用 Savitzky-Golay 滤波器,得到了一个新的平滑后的数据集。Savitzky-Golay 滤波器可以有效地去除信号中的噪声,并平滑信号的变化。该方法可以扩展到基于 MODIS 数据计算的任何指数或者波段。

养乐多的博客 1425

parc操作系统_操作系统图形界面发展史(1981——2009)

注意,本文这罗列了从1981年以来有重大意义的操作系统的图形界面。下面,让我们先来看看PC机上的第一个图形界面——Xerox Alto,其于1973年被Xerox Palo Alto Research Center (PARC)所设计,下面是其图片(70年代的东西看起来还不错哦)Source: toastytech.com1981-1985Xerox 8010 Star (released in ...

weixin_39875028的博客 759

82、yolov11检测模型迁移瑞芯微rk3588和使用昇腾设备300i DUO卡推理 batch=1/3,支持昇腾NMS迁移npu推理

本文介绍了使用昇腾设备进行分割推理的测试流程,包括两种测试方式(cann+onnx和om)。首先验证300iDUO卡的可用性,随后创建Docker镜像和容器以搭建独立环境。通过从指定仓库拉取Ubuntu 20.04镜像,创建容器并映射目录。进入容器后安装必要组件(Python3、GCC等)和系统工具(pciutils、net-tools等),为后续模型转换和迁移做准备。整个流程旨在构建可交付给第三方的标准化测试环境。

sxj731533730 1202

分布式系统中的“无状态”和“有状态”详解

有状态服务,即服务端需要记录每次会话的客户端信息,从而识别客户端身份,根据用户身份进行请求的处理,典型的设计如 tomcat 中的 session。例如登录:用户登录后,我们把登录者的信息保存在服务端 session 中,并且给用户一个 cookie 值,记录对应的 session。然后下次请求,用户携带 cookie 值来,我们就能识别到对应 session,从而找到用户的信息。

AI天才研究院 2万+

操作系统图形界面发展史(1981-2009)

注意,本文这罗列了从1981年以来有重大意义的操作系统的图形界面。 下面,让我们先来看看PC机上的第一个图形界面——Xerox Alto(该系统并未商用,主要用于研究和大学),其于1973年被施乐公司Xerox Palo Alto Research Center (PARC)所 设计,从此,开启了计算机图形界面的新纪元,80年代以来,操作系统的界面设计经历了众多变迁,OS/2, Ma

痞子龙3D编程 2156

白话机器学习算法理论+实战番外篇之Xgboost

1. 写在前面 如果想从事数据挖掘或者机器学习的工作,掌握常用的机器学习算法是非常有必要的,在这简单的先捋一捋, 常见的机器学习算法: 监督学习算法:逻辑回归,线性回归,决策树,朴素贝叶斯,K近邻,支持向量机,集成算法Adaboost等 无监督算法:聚类,降维,关联规则, PageRank等 我前面已经尝试用最白话的语言完成了一个白话机器学习算法理论+实战系列,这个系列已经基本包含了上面这些算...

Miracle8070 1万+

windows发展史上的重大节点

*** windows的发展过程 windows1.0 1985 MS-DOS系统 windows2.0 1987 MS-DOS系统 windows3.0 1990 图形化界面依旧使用MS-DOS系统 windows95 1995 图形化界面,第一个不要求安装DOS的版本 windowsNT 1996 图形化界面,实现了抢占式线程 windows98 1998 图形化界面,95的改进版...

Duncelhy的博客 546

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

SAP has certified Oracle Database 11g Release 2,will be Certified Sun Exadata V2 during Q2 CY 2011

今天看到官方一个文件,感觉还是很有重大意义的,SAP will be Certified Sun Exadata V2 during Q2 CY 2011(please see SAP Note 1398634) with th...

clare0807的博客 119

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

从视觉效果看微软

前言 3年前的一个课间,两个同学就Windows 7和Windows 10哪个好引发了争论,两人越吵越凶,拿出各自的观点想辩倒对方。 这吸引了其他同学加入争论,有人也发表了其他的观点:Windows XP才是经典!又有人说:Windows 2000才是巅峰!还有人说:Windows 8极富创新!更有人说:Windows已死,快去用macOS! 针对这个问题,我想了很久…… 最终,在2022年1月,Windows 11推出后,我终于理清这些Windows版本风格的成因、特点以及优劣,在此我从视觉效果这一方面来

开花豆的博客 939

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

ASP.NET Core Windows 环境配置

ASP.NET Core 是对 ASP.NET 有重大意义的一次重新设计。本章节我们将介绍 ASP.NET Core 中的一些新的概念和它们是如何帮助我们开发现代化的 Web 应用程序 尽管 ASP.NET Core 是跨平台的,但主力开发者几乎都使用 Windows ,因此我们接下来将讲解如何在 Windows 上配置 ASP.NET Core 在使用 ASP.NET Core 开发应用程序...

Cool2Feel的博客 359

windows2012运行linux,在 Windows Server 2012 R2 Hyper-V 上提供 Linux 支持

在 Windows Server 2012 R2 Hyper-V 上提供 Linux 支持10/10/201321 分钟可看完本文内容本博文是“Windows Server 和 System Center 2012 R2 新增功能”系列博文(共 9 篇)之一,该系列是 Brad Anderson 云端瞭望博客中的精选内容。今天的博文将介绍 Windows Server 2012 R2 中对 Lin...

weixin_35034831的博客 1682

操作系统图形界面发展史(1981-2009)

注意,本文这罗列了从1981年以来有重大意义的操作系统的图形界面。 首先,先介绍两个网站: http://www.guidebookgallery.org/ 如果你比较关注图形化UI的设计, 可以上这个网站上看看。http://toastytech.com/guis/index.html 这是一个操作系统图形界面收集的网站,上面几科包括了所有的操作系统图形界面。  

小布丁的读书笔记 1万+

OpenCV(二)

1. 前言:Mat类简介   OpenCV 作为强大的计算机视觉开源库,很大程度上参考了MatLab的实现细节和语法风格,比如说,在OpenCV2.x版本以后,越来越多的函数实现了MatLab所具有的功能,甚至干脆连函数名都一模一样(如 imread, imshow,imwriter等)。   在计算机内存中,数字图像以矩阵的形式存储和运算,比如,在MatLab中,图像读取之后对应一个矩阵,在...

weixin_30656145的博客 95

crazyinsomnia 操作系统图形界面发展史(1981-2009)

注意,本文这罗列了从1981年以来有重大意义的操作系统的图形界面。 下面,让我们先来看看PC机上的第一个图形界面——Xerox Alto(该系统并未商用,主要用于研究和大学),其于1973年被施乐公司Xerox Palo Alto Research Center (PARC)所 设计,从此,开启了计算机图形界面的新纪元,80年代以来,操作系统的界面设计经历了众多变迁,OS/2, Macint

Ga Ga Love Front 1441

探索 Windows 2000 的内存管理机制

翻译: Kendiv( %20%20);%20document.write(%20addy78904%20);%20document.write(%20%20);%20//-->%20"> <!-- var prefix = ma + il + to; var path = hr + ef + =; var addy78904 = fcczj

2854

ASP.NET Core 基础教程 - ASP.NET Core 基础教程 - 简单教程,简单编程

原文:ASP.NET Core 基础教程 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 是对 ASP.NET 有重大意义的一次重新设计。本章节我们将介绍 ASP.NET Core 中的一些新的概念和它们是如何帮助我们开发现代化的 Web 应用程序 尽管 ASP.NET Core 是跨平台的,但主力开发者几乎都使用 Windows ,因此我们接下来将讲...

weixin_30336061的博客 671

微软推送Win10致全球网络负担增大,中国网友表示毫无压力

7月29日晚间,微软的Windows10操作系统正式上市发行。微软将面向全球190个国家地区进行windows10的免费升级推送。目前, Windows 10 正以疯狂的速度登陆全球各类设备。     windows10作为微软发布的最后一个windows版本,该发布对微软而言有着重大意义。本次微软Windows10超大规模升级的业务量相当惊人。据国内媒体消息,从微软现场计数器显

feitianhanxue的专栏 1105
上一篇: X Window没有在linux内核实现的原因
linuxcode_turing
博客等级 码龄17年 0粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值