在传统的Unix系统或者Linux系统中,你是很难在根目录下找到大写开头的文件夹的, 但是看一下OS X:

ls /
Applications Users etc private var
Developer Volumes home sbin ~
Library bin OS Xh_kernel tmp
Network cores net uer
System dev opt usr

它的目录结构中有几个小写的目录/bin /sbin /usr(开发时最常用到的目录)/dev(设备文件目录)
/etc(配置文件目录)/opt(第三方软件安装目录)/var /tmp(临时目录)是按照Unix的要求来分配的,
但是几个大写字母开头的目录则是来源于它之前的内核,/Applications 存放应用程序,
/Users存放用户的家目录(每个用户的家目录都在这下面),/Developer是给开发者要用到的目录,
/Volumes是挂载目录(一些磁盘或者文件系统都挂到这里)

OS X下有一种的概念,简而言之就是把相关的资源组合在一起。
比如:Linux下开发,你用到的头文件可能在/usr/include下,用到的可能在/usr/lib下,
而OS X直接用Framework直接将头文件、库文件以及一些文档等资源组合成一个包,
在编译时不再需要分别指定头文件、库文件,而是仅仅指定一个Framework即可。

在发布应用程序时,也是利用包的特性,将应用程序连同它用到的动态库图片等资源组合成一个包(*.app),
双击这个包就可以运行此应用。

/Applications/Cashway.app/
└── Contents
├── Info.plist
├── MacOS
│   └── Cashway
└── Resources
└── main.icns

包的好处在于将相关的资源进行统一集中的管理。

OS X 与传统Unix的一点区别的更多相关文章

  1. POP动画引擎中Layer与CALayer的一点区别

    POP动画引擎是facebook提供的一个开源框架, 可以实现很多的动画效果, 这里就不一一介绍啦, 有兴趣的童鞋请移步: https://github.com/facebook/pop 下面简单的讲 ...

  2. 【转】mac os、linux及unix之间的关系

    mac os.linux及unix之间的关系   unix 是由贝尔实验室开发的多用户.多任务操作系统 linux是一类Unix操作系统的统称,严格来说,linux系统只有内核叫“linux”,而li ...

  3. os.path.abs()与os.path.realpath()的一点区别

    相同点 1. 两者都是返回绝对路径,如果参数path为空,则返回当前文件所在目录的绝对路径 当前py文件所在的目录是revise print(os.path.abspath("") ...

  4. Ajax与传统Web开发的区别

    基本概念 1.1,Ajax AJAX:即“Asynchronous Javascript And XML”(异步的JavaScript和XML),是指一种创建交互式网页应用的网页开发技术,尤其是在一种 ...

  5. 【Ajax 1】Ajax与传统Web开发的区别

    导读:从用户体验度的角度来说,利用Ajax进行开发的网站,其体验度高于利用传统Web开发技术,那么,是什么因素导致了这一现象呢?难道说Ajax开发,就一定优于传统Web技术吗?本篇文章,将主要介绍Aj ...

  6. getch 和 getchar 在 windows 和 unix下的区别

    注意getch()是从console读取,(非标准函数) getch()需要的头文件是<conio.h>. 而getchar()是从stdin,一般是指键盘 windows平台下ENTER ...

  7. MongoDB与传统数据库的使用区别——批量插入与批量查询

    我在百X知道上回答问题时经常遇到类似与这样的问题:MongoDB有没有像MySQL一样的ODBC驱动?MongoDB能不能像MySQL一样获取字段名称或类型. 我的回答是:不行,因为MongoDB不是 ...

  8. 前端框架framework和库library的一点区别和记录

    本篇纯文字,无关代码,只是一点概念的记录 关于所谓前端 首先学的是HTML5.CSS3.JavaScript这三个 之后接触了一下UI框架,如layui和bootstrap 目前是打算去学VUE和an ...

  9. 传统路由和OVS区别

    本文主要描述了一种将三层路由变成二层交换转发(以及二层转发变成三层路由)的实现方式,以应对OVS(OpenFlow)跨网段路由复杂的问题:当然技术本身是客观的,具体应用还要看场景. 随着SDN技术不断 ...

随机推荐

  1. iOS开发探索-图片压缩处理

    介绍: 压: 指文件体积变小,但是像素数不变,长宽尺寸不变,那么质量可能下降.缩: 指文件的尺寸变小,也就是像素数减少,而长宽尺寸变小,文件体积同样会减小. 应用: 在实际开发中,我们经常会对图片进行 ...

  2. linux rz xshell

    这个命令写好好几次 就是没有记住 放到这里 每次用的时候查一遍 慢慢就记住了~~~ sudo yum install lrzsz -y

  3. js 简单的样式封装

    <script> function test(value){ var str=value; document.write("<div style=\"width: ...

  4. 基础的 Web Services 平台是 XML + HTTP。

    HTTP 协议是最常用的因特网协议. XML 提供了一种可用于不同的平台和编程语言之间的语言. Web services 平台的元素: SOAP (简易对象访问协议) UDDI (通用描述.发现及整合 ...

  5. VC++通过API连接MySQL

    1.  首先安装MySQL数据库server,本文安装的是mysql-installer-community-5.6.10.1.msi这个版本号.至于各个版本号有什么不同,不在这里说明. 例如以下的默 ...

  6. SharePoint让所有用户访问站点

    SharePoint让所有用户访问站点,可用在用户组里面添加:NT AUTHORITY\authenticated users

  7. 《从零开始学Swift》学习笔记(Day 9)——离开表达式你试试!

    原创文章,欢迎转载.转载请注明:关东升的博客 表达式啊是很重要地. 在Swift中,表达式有3种形式. 不指定数据类型 var a1 = 10 指定数据类型 var a1:Int  = 10 使用分号 ...

  8. 大型软件公司.net面试题

    1:a=10,b=15,在不用第三方变量的前提下,把a,b的值互换   2:已知数组int[] max={6,5,2,9,7,4,0};用快速排序算法按降序对其进行排列,并返回数组   3:请简述面向 ...

  9. 【转】C#操作Word的超详细总结

    本文中用C#来操作Word,包括: 创建Word: 插入文字,选择文字,编辑文字的字号.粗细.颜色.下划线等: 设置段落的首行缩进.行距: 设置页面页边距和纸张大小: 设置页眉.页码: 插入图片,设置 ...

  10. Anker—工作学习笔记

    1.前言 最近在项目中用nginx做反向代理,需要动态生成nginx的配置.大概流程是用户在页面上新增域名.http或https协议以及端口信息,后台会根据域名自动生成一个nginx的server配置 ...