精华内容
参与话题
问答
  • 经过多年的猜测和谣言,中国科技巨头华为在2019年正式发布了其Harmony OS操作系统。可以说,提出的问题多于回答的问题。它是如何工作的?它解决什么问题?这是华为与美国政府之间当前仇恨的产物吗? 是否基于...

    经过多年的猜测和谣言,中国科技巨头华为在2019年正式发布了其Harmony OS操作系统。可以说,提出的问题多于回答的问题。它是如何工作的?它解决什么问题?这是华为与美国政府之间当前仇恨的产物吗?

     
     

    是否基于Linux的Harmony OS?

    不会。尽管两者都是免费软件产品(或更准确地说,华为已承诺发布具有开源许可证的Harmony OS),但Harmony OS是其自己的独特产品。而且,它使用了与Linux不同的设计架构,因此首选微内核设计,而不是单片内核。

    可是等等。微内核?整体内核?我迷路了

    让我们再试一次。每个操作系统的核心都是称为内核的东西。顾名思义,内核是每个操作系统的核心,有效地充当了基础。它们处理与基础硬件的交互,分配资源,并定义程序的执行和操作方式。

    所有内核都有这些基本职责。但是,它们的工作方式不同。

    让我们谈谈内存。现代操作系统尝试将用户应用程序(例如Steam或Google Chrome)与操作系统中较敏感的部分区分开。想象一下一条难以理解的界线,它划分了应用程序中系统级服务使用的内存。这样做的主要原因有两个:安全性和稳定性。

    与Harmony OS所使用的微内核一样,微内核对以内核模式运行的内核非常有区分,从而有效地将其限制在基础之上。

    直言不讳,整体内核并不明显。例如,Linux允许许多操作系统级别的实用程序和进程在内存中的特权空间内运行。

    当Linus Torvalds开始在Linux内核上工作时,微内核仍然是一个未知数,几乎没有实际的商业用途。事实证明,微内核更难以开发,并且往往更慢。

    近30年后,情况发生了变化。电脑更快,更便宜。微内核已从学术界飞跃到生产领域。

    XNU内核位于macOS和iOS的中心,它从早期的微内核设计(即卡内基梅隆大学开发的Mach内核)中获得了很多启发。同时,构成Blackberry 10操作系统以及许多车载信息娱乐系统基础的QNX使用微内核设计。

    一切都是关于可扩展性的,伙计!

    由于微内核设计是有意限制的,因此易于扩展。添加新的系统服务(例如设备驱动程序)不需要开发人员从根本上改变或干扰内核。

    这暗示了为什么华为选择在Harmony OS中采用这种方法。尽管华为可能以其手机而闻名,但它是一家涉足消费技术市场大部分领域的公司。它的阵容包括健身可穿戴设备,路由器甚至电视。

    而且华为是一家雄心勃勃的公司。该公司从竞争对手小米的书中吸取教训,开始通过其以青年为重点的子公司Honor 出售IoT产品,包括智能牙刷和智能台灯。

    虽然目前尚不清楚Harmony OS是否会在最终销售的所有消费类技术上运行,但华为仍渴望拥有一种能够在尽可能多的设备上运行的操作系统。

    部分原因是兼容性。如果您不考虑硬件要求,那么为Harmony OS编写的任何应用程序都可以在运行它的任何设备上运行。对于开发人员来说,这是一个有吸引力的主张。但是它也应该对消费者有好处。随着越来越多的设备实现计算机化,使它们能够轻松地作为更广泛的生态系统的一部分变得有意义。

    但是手机呢?

     

     

    特朗普政府财政部将华为列入“实体清单”已经近一年了,从而阻止了美国公司与该公司进行交易。尽管这给华为业务的各个层面施加了压力,但最大的痛苦却出现在该公司的移动部门,阻止其发布包含Google移动服务(GMS)的新设备。

    Google移动服务实际上是适用于Android的整个Google生态系统,包括像Google Maps和Gmail这样的普通应用程序,以及Google Play商店。由于华为最新的手机无法访问大多数应用程序,因此许多人都怀疑这家中国巨头是否会放弃Android,而转向使用自己的操作系统。

    这似乎不太可能。至少在短期内。

    首先,华为领导层重申了其对Android平台的承诺。相反,它专注于开发自己的GMS替代产品,称为华为移动服务(HMS)。

    其核心是公司的应用生态系统,即华为AppGallery。华为表示,它将花费10亿美元来弥补与Google Play商店的“应用鸿沟”,并拥有3,000名软件工程师。

    新的移动操作系统将被迫从头开始。华为必须吸引开发人员为Harmony OS移植或重新开发其应用程序。而且,正如我们从Windows Mobile,BlackBerry 10和三星的Tizen(以及以前的Bada)中学到的,这并非易事。

    话虽如此,华为是世界上资源最丰富的科技公司之一。因此,完全放弃使用Harmony OS驱动的手机的前景是不明智的。

    中国制造2025

    这里有一个有趣的政治角度要讨论。几十年来,中国一直充当着世界工厂的角色,在海外设计产品。但近年来,中国政府及其私有部门在研发方面投入了大量资金。中国设计的产品越来越多地进入国际舞台,为硅谷的技术精英提供了新的竞争。

    在此之中,北京政府的野心被称为“中国制造2025”。实际上,它希望结束对进口高科技产品(如半导体和飞机)的依赖,用自己的替代产品替代它们。其动机来自经济和政治安全以及国家威望。

    Harmony OS完全适合此目标。如果它能起飞的话,它将是中国第一个在全球范围内成功的操作系统,但蜂窝基站等细分市场所使用的操作系统除外。如果中美之间的冷战继续肆虐,这些本土出产的证书将格外方便。

    因此,对于Harmony OS在中央政府以及更广泛的中国私营部门中拥有一些非常热情的支持者,我不会感到惊讶。这些支持者将最终决定其成功。

    展开全文
  • Linux操作系统介绍

    万次阅读 多人点赞 2018-01-09 18:12:34
    2.什么是操作系统操作系统是硬件基础上的第一层软件, 应用软件都需要安装到操作系统上使用。 3.Linux的特点: 安全 免费开源 稳定 快速 多用户:多用户指一个用户的操作完全不会影响到其他用户的操作 由于...

    ##一. 什么是Linux? ##
    1.什么是Linux: Linux是一款广泛应用在服务器上的操作系统。

    2.什么是操作系统: 操作系统是硬件基础上的第一层软件, 应用软件都需要安装到操作系统上使用。

    3.Linux的特点

    • 安全
    • 免费开源
    • 稳定
    • 快速
    • 多用户:多用户指一个用户的操作完全不会影响到其他用户的操作

    由于Linux多用户的特点,Linux操作系统广泛应用于服务器上。

    ##二. Linux的版本
    1.内核版:内核版并不能直接使用,需要进行包装后用户才能更直接的使用。

    2.发行版:各个厂商针对Linux的内核所发布的各自的发行版,用户可以直接使用操作。

    3.几种常见的发行版

    1. redHat : 十分稳定且好用,但是需要付费
    2. centos6.5:虽然不如redHat,但功能全面,且免费
    3. Ubuntu:拥有图形化界面,方便操作,PC针对Ubuntu软件较多。

    三. Linux使用简介

    1.在Linux操作系统中,万物皆文件,因此操作Linux系统实际就是操作系统中的文件。与Java中万物皆对象的思维类似。

    2.Linux的用户: Linux中有两种用户:root用户其他用户

    1. root用户: root用户具有最高权限,可以操作全部文件
    2. 其他用户: 其他用户会有权限限制,但是其他用户是安全的

    3.使用客户端来连接Linux

    ①为什么使用客户端?

    1. Linux一般在服务器上,不能直接在上面操作。
    2. Linux中直接操作并不方便。

    为了方便用户操作使用,所以使用各种各样的客户端来连接Linux进行操作,例如:MobaXterm。

    ②客户端连接Linux方法

    1. 查询Linux的ip地址:通过ifconfig命令获取该用户的ip地址。
    2. 知道该用户的用户名和密码。
    3. 想要连接的Linux和本地机需要能够ping通。

    这里写图片描述

    四.Linux的基本命令

    1.目录操作:

    • 切换目录:分为绝对路径和相对路径两种方式。
      1.命令:cd

    2.绝对路径: cd / 后加需要切换的目录,eg:cd /a/b 为根目录下a文件夹下的b文件夹。

    绝对路径是指先切换到根目录,在由根目录切换到索需要的目录

    3.其他命令
    cd …:返回当前目录的上一层
    cd ~:跳转到home directory目录

    • 查看目录
      命令:
      ls -a:显示全部文件,包含隐藏文件。
      ls -r: 级联显示
      ll : 详细查询 -h kb显示文件大小。

    • 文件夹操作

    mkdir :创建文件夹
    mkdir -p:连续创建多层文件夹

    rm :删除命令/文件
    rm -r :删除文件夹

    cp :复制,可以复制到当前目录或其他目录,同时可以修改文件名
    格式:cp 要复制的文件名 目标目录/文件名
    cp -r :复制目录

    mv :移动,改名

    • 文件操作

    vim:编辑器,按esc退出编辑模式。输入wq保存并退出q为退出

    cat:查看文本内容
    cat a > b : 将a的内容给b
    cat a >> b:将a的内容追加给b

    • 文件压缩以及解压缩
      tar:归档和压缩
      tar -c:压缩
      tar -x:解压缩
      tar -f: 文件
      tar -f:显示

    压缩命令格式
    tar -czvf 压缩后文件名 目标目录
    tar -c 目标目录

    解压缩命令格式
    tar -czvf 目标名

    补:压缩文件 tar czvf 文件名.tar 要压缩的文件
    解压缩 tar xzvf 要解压的文件.tar

    用户组和权限

    1. linux的用户和组权限:
    Linux用户可以做到几乎完全的隔离,各个用户之间的操作互不影响
    组中有用户 修改组,组中的用户也跟随改变。
    最初一个用户有一个组
    一个组里面可以有多个用户
    通过命令 操作用户和操作组

    2.创建用户
    创建用户过程:必须在root用户(最高权限的)下操作
    创建用户 useradd +用户名
    设置密码 passwd +用户
    切换用户 su
    删除用户 userdel +用户名

    3.和用户组相关的文件
    etc/passwd
    etc/shadow
    etc/group

    4.组的操作
    创建组:groupadd +组名
    删除组:groupdel +组名
    修改组:groupmod -n 新名字 原名字
    向组中添加用户:usermod -G +组名 +用户名

    5.权限
    1.万物皆文件 查看文件的权限
    2.通过ll或ls -l 可以查看文件的类型和权限
    3.一共10位,第一位为类型位,剩下的每三位一组,代表 本用户,所属组,其他 的权限
    4.权限的表示:r可读(4) w可写(2) x可执行(1),更方便的可以使用括号内数字来表示,这样他们和的结果组合形式只有一种

    6.权限的调整
    调整文件所属的用户/组:chgrp +新组名 +文件名
    chown +新用户名 +文件名
    chown 用户:组 +文件名
    修改用户的权限 chmod ①通过数字来修改;②通过具体的文件所属(u,g,o,a)和权限(x,w,r)修改 +代表添加 -代表减少
    eg:chmod 666 +文件名;chmod u+x +文件名
    文件夹权限:包括文件内部权限

    Shell

    • 什么是shell
      1.Shell用来和系统内部进行交互,可以理解为是一种语言
      2.特点:灵活,快捷,方便
      3.输出语句 echo " " 类比system.out.println" ";
      键盘输入语句:read -p “键盘输入内容的描述” 变量名

    • Shell文件
      1.#! /bin/bash 声明Shell的版本 # 注释
      2.执行Shell文件中的脚本:./文件名
      3.注意:一定给.sh文件执行权限
      4.不更改权限,可以通过 bash 文件名 来强制执行脚本

    • Shell中的变量
      1.全局变量:在哪都能用的变量
      2.局部变量:只能在特定文件中使用的变量
      3.声明变量:变量名=值(不能有空格)
      引用变量:$变量名 或者 ${变量名}
      注意:变量直接使用字母命名。
      4.声明数组:array=(1,2,3,4)
      ${array[1]} 取出2号位置值
      ${array[]} 取出全部值
      ${#array[
      ]} 获得数组长度

    • 循环语句

    test:
    -eq 等于 -ne(-neq)不等于
    -gt 大于 -ge 大于等于
    -lt 小于 -le 小于等于

    if:
    语法:

    1.if test $a -eq $b

    2.if [ $a -gt 5 ] ;
    then 要执行的语句
    else 要执行的语句
    fi
    3.if [ ] ;
    then 要执行的语句
    elif [];then 要执行的语句
    else 要执行的语句
    fi
    4.注意:[]两端内部必须有空格,否则不能运行
    5.case 变量 in
    选项1) 要执行的语句;; #注意两个分号
    *) defult
    ecas #表示结束。

    循环
    1 while 循环 :

        while [ $i -lt 10 ]
        do
        done
    
    注意 在变量自增的时候 
         如果直接 $num+1 字符串拼接
     a num=$(($num+1)) #当数字计算
       num=$[$num+1]
    

    while:break
    完成了一个 直到某个条件才结束循环的功能
    exit!

    2 for 语法

       a [    for n in a b c d 
    	     do 
    		$n
    	     done
         ]
    
       b [  for((i=0;i<100;i++))
             do 
    	    $i
    	 done 
         ]  
    

    函数
    1 定义函数 语法
    function 函数名 () { 函数体 }

    2 调用函数 函数名 参数1 参数2

    3 取第一个参 echo 输出结果 $(函数名取结果)

    • 定时任务

    系统按指定的时间 或指定的时间段 来完成相应任务
    crontab -l(查看当前定时任务)
    -e(编辑)
    -r(删除定时任务-全删)
    格式:* * * * * +命令
    第一个*:分钟(0-59)
    第二个*:小时(0-23)
    第三个*:日期(1-31)
    第四个*:月份(1-12)
    第五个*:星期(0-7)
    在 * 前加 / 可以实现每隔 * 运行一次任务。

    展开全文
  • 开放网络操作系统介绍(2)、SONiC

    万次阅读 2018-04-23 10:17:19
    在2015年3月举行的OCP(Open Compute Project,开放计算项目)峰会上, 微软向OCP贡献SAI (Switch Abstraction Interface,交换机抽象接口)。当年7月,OCP正式接纳了SAI 。 2016年3月9日,微软在这届OCP峰会上,...

    在2015年3月举行的OCP(Open Compute Project,开放计算项目)峰会上, 微软向OCP贡献SAI (Switch Abstraction Interface,交换机抽象接口)。当年7月,OCP正式接纳了SAI 。

    2016年3月9日,微软在这届OCP峰会上,正式发布了SONiC ( Software for Open Networking in the Cloud)。SONiC的所有软件功能模块都是开源的,推动了OCP社区以及其他厂商在开放网络方面的创新。
    这里写图片描述
    SONiC是构建网络设备(如交换机)所需功能的软件集合。它可以通过交换机换抽象接口(SAI)运行在不同的ASIC平台。正是由于SAI的存在,SONiC的的app(网络功能)才能够支持多个厂家的ASIC。

    需要注意的是,SAI没有公开源代码,ASIC厂家只提供二进制格式的SAI文件。虽然SAI没有开源,但是SAI向上给SONiC提供了一套统一的API 接口,向下则对接不同的ASIC。
    这里写图片描述
    SONiC和SAI支持的ASIC芯片厂商及其对应产品为:
    这里写图片描述
    SONiC是一个将传统交换机操作系统软件分解成多个容器化组件的创新方案,这使得增加新的组件和功能变得非常方便。(SONiC路线图 :https://github.com/Azure/SONiC/wiki/Sonic-Roadmap-Planning )

    SONiC大量使用了现有的开源项目和开源技术,如Docker,Redis,Quagga和LLDPD 以及自动化配置工具Ansible、Puppet和Chef等。
    这里写图片描述
    OCP接纳SONiC和SAI,很重要的一点就是看重SONiC能够完善白盒交换机的生态链 。试想一下,如果没有SAI,那么就需要白盒交换机厂商自行适配不同的ASIC。有了SAI之后,适配ASIC的工作就由芯片厂商完成,使得白盒交换机厂商推出一款新产品所花费的时间大大缩短。
    这里写图片描述
    前面已经提到过SONiC只是构建交换机网络功能的软件集合,它需要运行在Base OS上。SONiC所使用的Base OS 是ONL (Open Network Linux ) 。ONL是一款为白盒交换机而设计的开源Linux操作系统,ONL中包括了许多硬件(温度传感器、风扇、电源、CPLD控制器等)的驱动程序。

    将SONiC和Base OS、SAI、ASIC平台对应的驱动打包制作成为一个文件,这个文件才是可直接安装到白盒交换机的NOS镜像 。SONiC目前已经可以运行在Accton/EdgeCore 、Dell和Mellanox等厂商的白盒交换机上。SONiC社区提供一些制作好的NOS镜像 : https://github.com/Azure/SONiC/wiki/Supported-Devices-and-Platforms

    由于SONiC的网络应用都是基于容器构建的,可以非常方便的在生产环境实现不停机部署或升级应用,这一点也吸引了不少的互联网公司的目光。百度、阿里、腾讯等公司于2017年8月成立的“凤凰项目”主要就是细化这个打包工作,并兼容更多白盒交换机,未来还会做LTS模式的版本管理工作。(凤凰项目相关介绍:http://www.opendatacenter.cn/work-group/p-958516783572459522.html)

    注:
    本文已投稿并发表在sdnlab :https://www.sdnlab.com/20618.html

    展开全文
  • iPhone的操作系统介绍MacOS X

    千次阅读 2009-07-30 18:24:00
    iPhone的操作系统介绍MacOS X (转贴)摘要:Mac OS X 使用基于 BSD Unix 的内核,并带来Unix风格的内存管理和抢占式多任务处理 (pre-emptive multitasking)。大大改进内存管 理,允许同时运行更多软件,而且实质上...
          iPhone的操作系统介绍MacOS X (转贴)
    摘要:Mac OS X 使用基于 BSD Unix 的内核,并带来Unix风格的内存管理和抢占式多任务处理 (pre-emptive multitasking)。大大改进内存管 理,允许同时运行更多软件,而且实质上消除了一个程序崩溃导致其它程序崩溃的可能性。 标签:iPhone  MacOS X  Aqua Finder Darwin BSD QuickTime Velocity


    ◆Mac OS X简介
    Mac OS X 使用基于 BSD Unix 的内核,并带来Unix风格的内存管理和抢占式多任务处理 (pre-emptive multitasking)。大大改进内存管 理,允许同时运行更多软件,而且实质上消除了一个程序崩溃导致其它程序崩溃的可能性。这也是首个包括“命令行”模式的 Mac OS,除非执 行单独的终端工具程序,否则你可能永远也见不到。但是,这些新特征需要更多的系统资源,按官方的说法Mac OS X只能支持G3以上的新处理 器 (它在早期的G3处理器上执行起来比较慢)。Mac OS X有一个兼容层负责执行老旧的Mac应用程序,名为 Classic 环境 (也就是程序员所熟知 的“蓝盒子”[the blue box])。它把老的 Mac OS 9.x 系统的完整拷贝作为 Mac OS X 里一个程序执行,但执行应用程序的兼容性只能保证程 序在写得很好的情况里在当前的硬件下不会产生意外。
    但是,经过升级卡达到最低系统要求的机器,以及最初的PowerBook G3,都不能运行Mac OS X。此外,早期的Power Macintosh G3和iMac G3必 须将Mac OS X安装在第一个8 GB硬盘空间。
    ◆MAC OS X的特性
    系统技术基础概述
    Mac OS X 既是以往 Macintosh 操作系统的重大升级,也是对其的一种自然演化。它继承了 Macintosh 易于操作的传统,但其设计不只是让人易于使用,同时也更让人乐于使用。
    作为下一代操作系统, Mac OS X 是一种综合技术的产物。在其所覆盖的技术中,一部分是来自于计算机业界的新技术,而大部分则是标准技术。它完全是建立在现代核心操作系统的基础上的,这使 Macintosh 获得了内存保护和抢占式多任务等计算处理能力。 Mac OS X 有着绚丽多彩的用户界面,具备了如半透明、阴影等视觉效果。这些效果,连同在个人电脑上看到的最清晰图形,都可以利用苹果公司专门为 Mac OS X 开发的图形技术来获得。 不过 Mac OS X 有的不仅仅是精密的内核与精巧的外形。凭借着多元化的应用程序环境,各种类型的 Macintosh 应用程序都可以在此操作系统中得以运行。而凭借着对多种网络协议和服务的支持, Mac OS X 成为了网上冲浪的终极平台。又由于其对多种磁盘卷格式的支持,并符合各种现有和发展中的标准, Mac OS X 还具备了与其它操作系统的高度协作性。
    从功能上看,下面是 Mac OS X 最重要的各个组件:
    ·Aqua ,用以获得用户体验的人性化界面设计
    · 应用程序环境( Carbon 、 Cocoa 、 Java 和 Classic )
    · 视窗和图形系统,由 Quartz 实现(包括对 QuickTime 和 OpenGL 的支持)
    ·Darwin ,高级的、基于 UNIX 技术的操作系统核心
    用户体验:
    Mac OS X 的用户环境与 Mac OS 的早期版本相似,不过在一些重要方式上仍存在区别。这些区别表现在用户界面设计、软件界面本地化构建以及增加应用程序功能的方式等方面。而在导出和访问其 它应用程序服务的机制上, Mac OS X 也有所增强。本章节描述了 Mac OS X 给用户所带来的操作体验,以及那些使之能增加效率和令人愉快的功能和应用。
    Aqua
    Aqua 以它的色彩、深度、清澈、透明和动感给电脑带来了生命的活力。按钮看起来象是刨光了的蓝宝石,激活的按钮会呈现出脉动般的闪烁,窗口有着带有层次感的阴影,最小化窗口还会象魔鬼落入瓶子一样落入它们的 Dock 图标中。
    这种新的方法的最好的实例就是 Mac OS X 是如何处理一些像打开或打印文档这类普通程序的。即便您可能同时打开了多个文档,当操作系统显示打印或保存文档的对话框时,您也应该知道哪个对话框是对应 哪个文档的。 Mac OS X 引进了一种新的对话框,叫做漂浮对话框( sheet ),它被附着在文档窗口上,这使它们的关系更为明确。漂浮对话框从窗口标题栏下方滑出,由于其半透明特性使得它们看起来似乎像是漂浮在文档窗口上的。漂浮 对话框并不是模式化的,因此在漂浮对话框出现时用户仍然可以继续进行其它的操作。
    一直以来, Mac OS 以其易用性受到了人们的青睐。 Aqua 中结合了很多 Macintosh 用户在他们的计算机中所期望获得的用户界面质量和特性。系统中几乎每个功能和特性都被赋予了易用性的特点。
    Aqua 的许多效果都可由 Quartz (苹果公司开发的 2D 图形和视窗技术)来实现。
    Finder:
    大部分 Aqua 用户体验是来自于对桌面和 Finder 的设计, Finder 是一种作为与文件系统实现交互的主要界面的系统应用程序。用户有可能会注意到这个领域中的两大创新: Dock 和 Finder 显示文件系统各元素的方式。
    Dock 减少了桌面的零乱。该屏幕区域掌管着所有您想要快速访问到的东西,如:文件夹、应用程序、文档、存储设备、最小化窗口、 QuickTime 影片、网站链接。图标用于标识 Dock 中存放的每一项内容;而这些图标对它们所代表的项目往往是一种很好的描述。Dock 掌管了您所希望在那里保存的各种东西。当您添加项目时, Dock 会随之加长,直到达到屏幕的边缘。一旦到达这个点时, Dock 中的图标就会自动成比例收缩,以容纳下所添加的项目。不过,为了使小图标更加灵活, Mac OS X 包含了一种名叫放大的功能( magnification ):只需将指针移过图标,它们就会在您预置的水平上放大。
    Mac OS X Finder 具有一个可包括在单个窗口中的简单导航界面。除了 Macintosh 用户非常熟悉的图标视图和列表视图外,每个 Finder 窗口还都可以被设置为叫作分栏视图的查看模式。这种模式对浏览深层次的文件系统是很理想的;在点击一个文件夹后,将在其右侧的下一个分栏内显示该文件夹的 内容。分栏视图还可保留您的浏览历史记录,这样就可以使您总能找到以前的浏览路径了。
    当您双击图标或列表视图中的 Finder 项目时, Finder 不会默认产生一个新窗口。取而代之的是, Finder 将在单一 Finder 窗口中替换原有的文件夹视图。(不过您可以更改默认动作。)作为一个关键性的设计目标,通过将文件系统集中到一个窗口中显示, Finder 减少了大量打开窗口的需要。尽管有这个默认动作,系统也不会阻止您根据需要打开多个 Finder 窗口。
    ◆开发应用程序
    应用程序支持:
    Mac OS X 用户体验部分是操作系统的不同组件间的无缝交互。从 BSD 到 QuickTime , Mac OS X 包含了各种在历史上存有很大差异的技术,且基于不同的标准和约定。单一 Mac OS X 系统可以控制不同格式的卷,支持不同的网络文件共享协议,并可运行基于完全不同 API 的应用程序。
    Mac OS X 为用户和开发人员提供了简易的过渡方式。 Mac OS X 支持四种应用程序环境,每一种环境都适合一种特定的程序类型:
    ·Classic 环境可运行大部分的 Mac OS9 程序。·Carbon 环境可运行所有经过 Mac OS X 代码优化的 Mac OS9 程序。· Cocoa 环境提供了一个先进的面向对象框架,用来创建最佳的下一代应用程序。 ·Java 环境可运行 100% 纯 JAVA 和混合 API Java 应用程序及 Java applet 。
    多用户
    用户可在 Mac OS X 系统的个人自定义环境中工作。他们可以选择特定的桌面样式、优先语言、自动启动的应用程序和许多其它功能。无论何时用户登录到自己的帐户上,他们所有的选择都可以被恢复。
    一个用户的个性化环境有可能成为这样一种环境。其他用户可以登录到同一台计算机,并在计算机环境中设定完全不同的一套预置属性。 Mac OS X 确保了一个用户的数据和程序与其它用户的数据和程序的安全隔离。每个帐户都是受密码保护的,没有所有者的允许,用户不能在其他用户的文件夹中执行程序、编 辑或者读取文档。系统为每个用户的文
    国际化:
    Mac OS X 使软件国际化更为容易。它的做法是:一个单一的二进制程序可以支持多种语言和地方方言的本地化。它还可以让软件开发人员为新语言或方言动态添加本地化资源。
    Mac OS X 包括了能处理在世界范围内使用的文字系统的综合技术。该文字系统提供了 Unicode 编码标准、输入法和常的规文字处理服务。

    AppleScript:
    在 Mac OS X 中编写脚本,就像在 Mac OS 9 中一样,是采用 AppleScript 作为最主要的脚本语言,而以 Apple 事件作为通信模式的。您可以将特定的动作编进您的应用程序里去,这样它们就可以在接收到 AppleScript 命令时执行相应的动作了。 AppleScript 可支持所有的应用程序环境,也包括 Classic 兼容性环境。用户可以在不同的环境中编写将多种应用程序服务链接在一起的脚本。
    导入的应用程序服务:
    同时在 Mac OS X 系统中运行的各程序不必在隔离的状态下运行。任何一个程序所提供的服务均可以和其它程序共享,任何程序如果对该项服务感兴趣,就可以利用它。服务菜单为程序提供了另一种共享资源和功能的方法。
    ◆用户体验和其它部分:
    和 Mac OS 以前的版本一样, Mac OS X 的用户体验在其 CD - ROM 盒子被打开时就开始了。安装是一项简单的任务,设置助理可以让用户进行快速地启动、运行,和连接互联网。如用户有任何疑问,可以用 Help Viewer 来查找答案。
    Darwin:
    在迷人、易用的界面下, Mac OS X 有着一个基于 UNIX 的稳固基础,并具有稳定性、可靠性和性能优越的特点。其基础是一个核心操作系统,通常人们称之为 Darwin ,这是一种开放源码技术,该技术可在 www.apple.com/darwin 找到。 Darwin 集成了大量的技术,最重要的是 Mach 3.0 、基于 4.4BSD ( 伯克利软件发行 ) 的操作系统服务、高性能网络工具、和对多种集成文件系统的支持。因为 Darwin 的设计是高度模块式的,您可以动态添加如设备驱动程序、网络扩展和新文件系统之类的东西。
    Mach:
    Mach 位于 Darwin 的中心,因为它执行了一个操作系统中大量的最关键的功能。 Mach 所提供的大部分功能对于应用程序而言都是透明的。它管理着程序处理资源(如 CPU 的使用和存储)、处理日程安排、增强内存保护,并对非类型化的进程间通信(本地和远程)实现了一个以消息为中心的基础架构。 Mach 给 Macintosh 计算处理增加了很多重要的优势。Darwin 还可以实现协同式多任务,以及抢占式和协同式多线程。
    BSD:
    与 Mach 集成的是 BSD 操作系统(目前是 4.4BSD )的自定义版本。 Darwin 的 BSD 实现包括了 POSIX API 的许多功能,并将其导入到系统的应用层。 BSD 充当了 Mac OS X 的文件系统和网络工具的基础。另外,它还提供了几种编程界面和服务,包括:
    · 进程模式(进程 ID 、信号,等等)· 基本安全策略,如,用户 ID 和权限 · 线程支持( POSIX 线程) ·BSD 套接字
    设备驱动程序支持:
    对于设备驱动程序的开发, Darwin 提供了一种面向对象的框架结构,叫作 I/O Kit (输入 / 输出工具箱)。 I/O Kit 不仅简化了 Mac OS X 驱动程序的编写过程,而且为这些驱动程序提供了所需要的很多基础结构。 I/O Kit 是用 C++ 的受限子集中编写的。这一框架可支持大范围的设备种类,它是模块化的,也是可扩展的。
    用 I/O Kit 创建的设备驱动程序很容易得到下面几种重要功能:
    · 真正的“ 即插即用”
    · 动态设备管理(“ 热插拔” )
    · 电源管理(台式和便携式)
    网络扩展:
    Darwin 为内核开发人员提供了一种在操作系统添加网络功能的新技术 — 网络内核扩展 (Network Kernel Extensions , NKE) 。 NKE 工具允许您创建网络模块,甚至是可在内核中动态装载(或卸载)的完整协议栈。 NKE 还使得自动配置协议栈成为可能。
    文件系统:
    Darwin 的文件系统组件是在 BSD 和增强型虚拟文件系统( VFS )的基础上设计扩展而来的。文件系统组件引进了几种新的综合功能:
    · 可移动存储介质的访问权限。此功能是基于每个已连接的可移动设备(包括 USB 和FireWire 设备)注册在系统中的一个全局唯一的 ID 号。
    · 基于 URL 的卷装载,它可以让用户(通过一个 Finder 命令)装载诸如 AppleShare 和Web 服务器之类的东西。
    · 统一的高速缓存,与虚拟内存的高速缓存所一致。
    · 长文件名( 255 个字符或 755 个字节,基于 UTF - 8 )。
    · 支持逐个隐藏文件的后缀扩展名。
    支持网络文件协议:
    AFP 客户端 Apple 文件协议,是 Mac OS 9 系统中主要的文件共享协议(只能在 TCP/IP 上传输)。
    NFS 客户端 网络文件系统,是 UNIX 世界的主导文件共享协议。
    WebDAV 基于 Web 的分布式创作和版本控制( Web-based Distributed Authoring and Versioning ),一种 HTTP 扩展,允许在网络上的协作文件管理。
    Samba SMB/CIFS ,一种用于 Windows 和 UNIX 系统的文件共享协议。
    Darwin 和开放源码开发:
    苹果公司是将开放源码开发作为操作系统发展策略的关键部分的首家主要计算机公司。作为开放源码技术, Darwin 成为了该项策略的关键部分。苹果公司已向开发人员社团发布了几乎所有 Darwin 组件的源代码。
    Mac OS X 内核环境是 Darwin 的子集。内核环境包括了 Darwin 中除了构成 BSD 命令环境的基本 BSD 库和命令之外的所有内容。
    图形和图像:
    Mac OS X 结合了 Quartz 、 QuickTime 和 OpenGL -三种最强大的图形技术-提升了 Macintosh 的绘图能力,这超越了以往在桌面操作系统上所见到的一切。 Mac OS X 的二维图形和图像功能都是基于 Quartz -一种 Apple 技术,它提供了一个视窗服务器、基本的低级服务以及一个使用 PDF (可移植文档格式)作为内部模式的图形渲染库。集成到这种基础上的是一种打印架构和其它图形库,如 QuickDraw 和 QuickTime 。
    OpenGL:
    Mac OS X 中包括了 Apple 对 OpenGL 高度优化的实现,它将 OpenGL 作为了 3D 图形的系统 API 和库。 OpenGL 是一种用于开发可移植 3D 图形应用程序的行业规范标准。 OpenGL 是当今最为广泛采用的图形 API 标准,通过编写可移植的 OpenGL 代码,可生成非常一致的视觉效果。它是专门为游戏、动画、 CAD/CAM 、医学成像和其它需要丰富和强壮的 2D 、 3D 可视化框架的程序而设计的。 OpenGL 的 Mac OS X 版可非常一致地产生高质量和高性能的图形图像。
    QuickTime:
    QuickTime 的最新版本被打包在 Mac OS X 中。 QuickTime 是一个强大的用于处理、增强和存储视频、音频、动画、图形、文本、音乐,甚至是 360 度虚拟现实的多媒体技术。它还允许您制作数字视频流,数据流可以被实况广播或录制存储。 QuickTime 是跨平台的技术;除了 Mac OS X ,它还可以在 Mac OS 9 、 Windows95 、 Windows98 、 Windows NT 和 Windows2000 中运行。
    Apple 字体解决方案 :
    Apple 字体解决方案( Apple Type Solution , ATS )是系统范围对字体进行管理、布局和渲染的引擎。有了 ATS ,用户就可以拥有单一的一组字体,它们被分布在文件系统的不同部分,甚至是在网络上。


    应用程序技术:
    Mac OS X 包括了几种可用于扩展应用程序机能的技术。
    应用程序扩展性:
    插件是开发人员和用户可以用来动态添加到一个应用程序上,以增加其功能的代码和资源模块。
    网络和互联网:
    Mac OS X 是在互联世界进行计算的领先平台之一。它支持业界主要的介质类型、协议和服务,以及来自苹果公司的不凡和创新服务。
    Mac OS X 网络协议栈是基于 BSD 基础上的。这个由网络核心扩展( Network Kernel Extensions )所提供的可扩展架构可以使创建新模块变得非常容易,新建模块可以实现在该协议栈中添加新协议或现有协议。
    标准协议:
    Mac OS X 支持很多计算机业界的标准协议:
    TCP/IP 和 UDP/IP 、PPP、PAP、HTTP、FTP、DNS、SLP、DHCP 和 BOOTP、LDAP、NTP、SOAP、XML-RPC、
    Apple 还实现了很多文件共享协议
    传统的网络服务和协议:
    Apple 在 Mac OS X 系统中包括下列传统网络产品,以缓和来自 Mac OS 以前版本的过度。
    ·AppleTalk 是一套基于 Macintosh 标准的网络协议,可以与其它网络系统(如互联网)相结合。 Mac OS X 包括了对传统 AppleTalk 环境和解决方案的最低兼容性支持。
    ·Open Transport 作为输入 / 输出系统的一部分,实现了工业标准的通信和网络协议。它有助于开发人员在他们的应用程序中整合网络服务,而不必担心针对任何具体网络的通信细节。
    现有的应用程序可继续使用这些技术。不过,如果您正在开发新的程序,您应该使用由 Cocoa 和 Carbon 提供的最新网络技术。
    路由和多重连接:
    Mac OS X 是一种强大、易用的桌面操作系统,同时也可以作为强大的服务器解决方案的基础。一些企业或组织拥有小型网络,它们受益于路由器的服务。 Mac OS X 为这种情况提供了 IP 路由支持。有了 IP 路由,一台 Mac OS X 机器就可能充当一个路由器,甚至可作为互联网的网关。路由信息协议( RIP )就是用来实现这项功能的。
    Mac OS X 还允许多重连接( multihoming )和 IP 别名。有了多重连接,一台主机就可以在同一或不同网络中物理连接到多个数据链路。 IP 别名可以让网络管理员给单个网络接口指定多个 IP 地址。这样一台运行 Mac OS X 的计算机就可以给多个网站提供服务,就好像是有多台服务器一样。
    USB:
    USB (通用串行总线)是在计算机和附加设备(如音频播放器、操纵杆、键盘、电话、扫描仪和打印机)之间进行连接的高速即插即用接口。它支持每秒 12 兆位的数据速率。 USB 允许用户在自己的计算机添加新设备,而不必安装适配卡,也不必在安装时关机。 Mac OS X 包括了用来驱动下列类型设备的 USB 驱动程序。
    火线(FireWire/1394) :
    FireWire 是 Apple 采用 IEEE1394 标准(高性能串行总线)来连接外围设备的一种技术实现。它允许在单条连续接插的串行链接上,同时接入多达 63 个设备。因为可支持高达每秒 400 兆位的传输速率,所以 FireWire 对数字相机、 DVD 、数字录影带、数字摄像机和音乐合成器之类的设备来说是很理想的。有了 FireWire ,用户可以不需要终端设备或进行复杂的设置就能以不同的方式把设备链接在一起。而且不需要重新启动系统就可以插入和使用设备。因为 IEEE1394 标准是一个点对点接口,您可以将一台带 FireWire 接口的设备与另一台设备相连,并同时使用这两台设备,而不需要将其中任何一台设备连接到计算机上;例如,一台数字摄像机可以在另一台上进行配音。
    搜索引擎 (Velocity Engine) :
    支持 Velocity Engine 是 Mac OS X 的另一个重要特性。 Velocity Engine 提升了应用程序并行处理数据的性能,如执行 3D 图形成像、图像处理、视频处理、音频压缩和基于软件的移动电话等。 Quartz 、 QuickTime 和 QuickDraw 目前都已整合了 Velocity Engine 的功能;这样,任何使用这些 API 的程序都可不经任何修改,就享受到 Velocity Engine 所带来的性能提升。另外,由于 Mac OS X SDK 中包含了一个带有 Velocity Engine 支持的 C/C++ 编译器,所以您还可以充分利用 Velocity Engine 来创建新应用程序。
    AirPort:
    AirPort 是 Apple 的无线网络技术,可实现在本地局域网的多台计算机间,以及在该局域网与互联网间进行快速可靠的通信。有了 AirPort ,几个用户可以同时在线,同时在网上冲浪、接收电子邮件、玩游戏和交换文件,而全部用户访问只需要通过一个互联网服务帐户。 AirPort 还可以通过无线方式,将文件从您的计算机传输到 150 英尺 外的另一台装配 AirPort 的 iBook 、 iMac 、 PowerBook 或 Power Mac G4 上。
    AirPort 的无线数据传输速率为每秒 11 兆位,每个基站可同时服务于多达 10 个用户。由于 AirPort 是基于 IEEE802.11 直接序列扩频( DSSS )全球工业标准上的,所以它可以与其它 802.11 设备实现互相连通。此外, AirPort 使用无线电信号,所以它可以穿透固体进行通信。
    视频功能:
    Mac OS X 中的 Quartz Compositor 包括了一种叫 Quartz Extreme 的硬件加速层。这个透明层使用基于 OpenGL 的视频硬件,来支持视频、 2D 和 3D 图形的渲染。这种加速支持是自动运行的,不需要任何特殊代码。
    Mac OS X 还支持 “ 热插拔 ” 显示器的能力,也就是说,在需要更换显示器时,可以不必先关掉主机。这种特性为用户在设置和使用计算机时提供了更大的灵活性。但是,那些依赖于当前视频设 置的应用程序需要知道:这些设置现在可以在运行时被更改。核心图形框架( CoreGraphics.framework )定义了允许程序在视频设置发生改变时注册通知的 API 。

    展开全文
  • 手机操作系统介绍

    千次阅读 2005-04-10 17:16:00
    手机操作系统介绍作者:陈跃峰出自:http://blog.csdn.net/mailbomb 现在的手机种类繁多,市面上可以看到的手机有上千种之多,现在简单介绍一些在手机上面运行的操作系统。1、 厂商专有系统:现在常见的低端手机...
  • Solaris操作系统介绍

    千次阅读 2009-03-18 20:07:00
    1.2 Solaris操作系统介绍Solaris 是SUN公司研发的多用户多任务的UNIX操作系统,1993年由SunOS改编而来。Solaris系统内核基于AT&T发布的SVR4即System V Release 4,但Solaris同时也具备了一些BSD版本UNIX的特色。...
  • L4操作系统介绍

    千次阅读 2013-08-12 20:09:45
    我们学习操作系统课程的时候,一直在讲微内核,说什么“微内核是现代操作系统的主流”(时间太久,记不清了,如果说错了,不要拍我)。可是事实上,真正进入工业级别应用的微内核操作系统并不多,Microsoft的系统...
  • 常用嵌入式操作系统介绍

    千次阅读 2017-03-11 12:42:45
    VxWorks操作系统是WinRiver(美国风河系统)公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),它具有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域牢牢地占据着...
  • 树莓派的操作系统介绍

    万次阅读 2015-08-30 18:46:50
    是当前实用最广泛的操作系统 2、Pidora(单纯的Arm版的Linux系统,基于Fedora) 是拥有另一种风格的树莓派操作系统 3、Arch Linux ARM(单纯的Arm版的Linux系统,基于Arch Linux) 对linux操作系统很熟悉的...
  • 各种嵌入式操作系统介绍

    千次阅读 2017-03-16 09:39:56
    一,各种嵌入式操作系统介绍 1.uC/OS-II u C / OS 是一种免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统。  μC/OS-II 的前身是μC/OS,最早出自于1992 年美国嵌入式系统专家Jean J.Labrosse ...
  • 常用移动操作系统介绍

    千次阅读 2018-05-28 11:01:55
    操作系统的名称使用的编程语言是否开源Android应用开发的是Java,更底层的是C,C++开源IOSObject-C不开源SymbianC++曾经开源过一段时间,现在不开源Window MobileC#不开源Black BerryJava不开源...
  • TinyOS操作系统介绍

    千次阅读 2015-05-05 16:15:36
    TinyOS操作系统介绍  TinyOS操作系统是UC Berkeley(加州大学伯克利分校)开发的开源操作系统,专门为嵌入式无线传感器网络设计,该操作系统基于组件(Component-based)的架构使得程序能快速更新,同时又减小了受...
  • 嵌入式操作系统介绍分析

    千次阅读 2015-11-24 23:30:58
    一,各种嵌入式操作系统介绍1.uC/OS-IIu C / OS 是一种免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统。 μC/OS-II 的前身是μC/OS,最早出自于1992 年美国嵌入式系统专家Jean J.Labrosse 在《嵌入式...
  • amp;tid=16553&amp;highlight=RTX%B2%D9%D7%F7%CF%B5%CD%B3%BD%CC%B3%CC ...第4章 RTX操作系统介绍  本章节介绍一下RTX操作系统,让大家对RTX有一个整体的了解,Keil RTX 是免版税的确定性实时操作...
  • 都江堰操作系统(DJYOS)是开源操作系统,采取了类BSD许可证。目前由深圳市秦简计算机系统有限公司在运营。 1.1. DJYOS介绍 都江堰操作系统(简称DJYOS)开始于2004年,2009年发布第一个版本。DJYOS得名于世界唯一...
  • unix 与 linux 操作系统 介绍

    千次阅读 2013-05-26 12:49:52
    本章将对银行计算机中常用的操作系统UNIX和Linux作简要的介绍,着重说明两者的特点和应用场合,而对另一个常用的操作系统Windows不作介绍。   4.1 操作系统的基本概念   计算机系统是由硬件和软件两部分构成...
  • ONL(OpenNetwork Linux)是Big Swtich 的商业交换机NOS——Switch Light OS的开源版本。BigSwitch在2014年将ONL贡献给OCP。 上图浅蓝色部分就是Open Network Linux (ONL)。 ...微软开源的交换机软件SONiC最近两...
  • CMSIS-RTOS RTX实时操作系统介绍

    万次阅读 多人点赞 2018-04-20 14:31:03
    一.序言   本资料是Trevor Martin编写的《The Designers Guide to the Cortex-M Processor Family》的摘要,并得到Elsevier的再版许可。查询更多细节,请到本资料尾部...本资料着力于介绍RTX,RTX可运行在基于Cort
  • 1--FreeRTOS操作系统介绍

    万次阅读 2015-06-24 14:46:55
    摘自:http://xilinx.eetrend.com/article/7828...  FreeRTOS(读作"free-arr-toss")是一个嵌入式系统使用的开源实时操作系统。FreeRTOS被设计为“小巧,简单,和易用”,能支持许多不同硬件架构以及交叉编译器。
  • 0. Unix / Linux操作系统介绍

    千次阅读 2018-01-25 15:03:40
    1. Unix/Linux操作系统介绍 1.1 操作系统的作用 1.1.1 操作系统的目标 ● 方便:使计算机系统易于使用 ● 有效:以更有效的方式使用计算机系统资源 ● 扩展:方便用户有效开发、测试和引进新功能 ...
  • [001] 智能手机操作系统介绍

    千次阅读 2011-04-22 20:48:00
    智能手机是指像个人电脑一样,具有独立开放的操作系统,可以由用户自行安装软件、游戏等第三方服务商提供的程序,通过此类程序来不断对手机的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入的这样一类手机...
  • 1、UCOSIII前后台操作系统介绍

    千次阅读 2018-06-06 09:27:08
    一、前后台系统介绍 通常把程序分为两部分:前台系统和后台系统。 简单的小系统通常是前后台系统,这样的程序包括一个死循环和若干个中断服务程序:应用程序是一个无限循环,循环中调用API函数完成所需的操作,这...
  • 一、Windows Mobile系列手机操作系统Windows mobile 系列操作系统是在微软计算机的Windows操作系统上变化而来的,因此,它们的操作界面非常相似,熟悉计算机Windows系列操作系统的朋友一看到 Windows Mobile系列的...
  • 【TV】智能电视机四大操作系统介绍

    千次阅读 2017-01-17 13:50:01
    智能电视机四大操作系统介绍 近年来智能电视机四大操作系统介绍随着电视机技术的发展,电视机智能化的趋势愈加明显,步伐也越来越快,智能电视机不仅在外形、画质等方面拥有独特的优势,而且能为用户提供丰富的...
  • 文章目录操作系统运行原理操作系统作用常见的操作系统windows虚拟机介绍 操作系统运行原理 计算机分为软件与硬件,硬件即是键盘,鼠标,硬盘。。。。等等 而操作系统则是基于硬件上的,相当于一个大型软件,而应用...
  • 【摘要】 本文主要对于目前物联网操作系统的定义以及主要特点进行了分析,最后介绍了几个常见的物联网操作系统。 1简介 提到操作系统,可能首先想到的就是苹果操作系统,windows,Linux,Unix,Android,IOS等,...
  • 1.嵌入式操作系统行业竞争对手 ...1.1.国内操作系统介绍 1.1.1.秦简-DJYOS介绍 都江堰操作系统是由深圳市秦简计算机系统有限公司主持的、国内原创的开源嵌入式操作系统,从2004年开始,已经发展15年。主要用于物联...

空空如也

1 2 3 4 5 ... 20
收藏数 73,717
精华内容 29,486
关键字:

操作系统介绍