-
佛教禅宗 六祖慧能
慧能 (公元 638 年- 713 年),俗姓卢氏,唐代岭南新州(今广东新兴县)人,父亲名卢行瑫,早逝,母李氏,其籍贯为范阳(今北京大兴) , 因其父贬于岭南才南迁。慧能生于贞观,圆寂于开元初年,经历了唐朝太宗、高宗、中宗、睿宗、武周 ( 武则天 ) 、中宗、恭宗、睿宗、玄宗八位国君阶段。自幼以卖柴为生,因一次卖柴回家的路上听到有人读诵《金刚经》,便萌生学习佛法之念;后去湖北的黄梅山拜谒佛教禅宗五祖弘忍大师为师,由此开始了学佛生涯。其时弘忍年事已高,急于传付衣法,遂命弟子作偈以呈,当时大弟子神秀也是大家公认的禅宗衣钵的继承人,为了避嫌半夜起来,在院墙上写了一首偈子曰:
“身是菩提树,心如明镜台,
时时勤拂拭,莫使惹尘埃。”
弘忍认为神秀还没有完全顿悟。
惠能当时做砍柴、碾米,听说这件事之后慧能就叫人带他去看偈子,听后亦诵一偈,因为自己是不会识字不会写字,并请当时在场的江州别驾张日用代劳题于壁上:
“菩提本无树,明镜亦非台,
本来无一物,何处惹尘埃。”
弘忍见后,当众用鞋把慧能的偈搽掉,并说“亦未见性”。次日,弘忍大师来到碾米房,以杖击碓 ( 捣米器具 ) 而去;惠能立刻理解了五祖的意思,于是他在当晚上三更的时候去了弘忍的禅房。弘忍为其宣讲《金刚经》,并传衣钵,定为传人。然后为了防止有人伤害惠能,让惠能连夜逃走。于是惠能连夜远走南方,隐居 10 年之后才出来讲经传法。
676 年,唐高宗仪凤元年,正月初八到广州法性寺,印宗法师在该寺内讲《涅槃经》之际,正好遇到风吹幡动,一僧曰:风动;一僧曰:幡动;争论不休,惠能进曰:
“不是风动,亦非幡动,仁者心动”。
印宗闻之折服,遂拜为师,并为之剃度。
仪凤二年 (677 年 ) ,韶州刺史韦璩仰其道风,率同僚入山请惠能入城曹溪宝林寺(今广东韶关南华寺),于大梵寺讲堂为众说法,兼授无相戒。僧尼道俗集者千余人,门人法海编录其法语。慧能在此弘扬禅宗传法长达 37 年,奠定了禅宗“南宗”的基础。
神龙元年 (705 年 ) ,武则天和唐中宗即遣内侍薛简往曹溪召其入京。惠能以久处山林,年迈风疾,辞却不去。薛简恳请说法,将记录带回报命。中宗因赠摩纳袈裟一领及绢五百匹以为供养。并命改称宝林寺为中兴寺,由韶州刺史重修,又给予法泉寺额,并以惠能新州故宅为国恩寺。
延和元年 (712 年 ) 惠能回至新州,命门人建报恩塔。唐玄宗先天二年( 713 年),圆寂于新州国恩寺,世寿七十六,唐宪宗谥号大鉴禅师。惠能圆寂后,其真身不坏,被运回韶州(今广东韶关)曹溪,其门人裹综涂漆,保持其生前形像。其肉身像至今还保存在南华寺,供奉在灵照塔中。
南北宗之争
惠能,主张“顿悟”,影响华南诸宗派,人称“南宗”,在曹溪宝林寺(今广东韶关南华寺)弘扬禅宗传法长达 37 年之久。六祖惠能的同门师兄神秀,主张“渐悟”,在华北势力颇盛,号称“北宗”。
唐玄宗开元二年( 730 年),在河南滑台(今滑县)的无遮大会上,惠能弟子荷泽神会辩倒了神秀门人崇远、普寂,使得“南宗”成为中国禅宗正统。
惠能为禅宗的发展奠定了理论基础,对于后来各派禅师建立门庭,影响极大。在他死后,他的弟子传承禅法,形成惠能禅法的南北二宗。惠能禅法的北宗即是荷泽神会门下,称荷泽宗。惠能禅法的南宗则以南岳怀让门下的洪州宗,与青原行思、石头希迁一系的石头宗为代表。
惠能禅法在北宗荷泽一派的推动下,取代了原先北宗神秀一系的地位,成为禅门正宗,但荷泽一派因后继无人,在唐末衰亡。对后世影响较大的反而是南宗门下。南宗门下,后来形成河北临济宗、江西曹洞宗、湖南沩仰宗、广东云门宗、江苏法眼宗五宗,即“一花开五叶”。
后来,法眼宗远传于泰国、朝鲜;云门宗、临济宗更远播欧美。在中国、日本,则是临济宗、曹洞宗两宗最盛。
经典
惠能圆寂后,其弟子们 将其经历和言论录整理成《六祖坛经》,简称《坛经》,是禅宗的经典。
著名弟子
弟子众多,最著名的有:荷泽神会、青原行思、南岳怀让、石头希迁、净藏。
禅宗
禅宗,又称宗门,汉传佛教宗派之一,始于菩提达摩,盛于六祖惠能,中晚唐之后成为汉传佛教的主流,也是汉传佛教最主要的象征之一。汉传佛教宗派多来自于印度,但唯独天台宗、华严宗与禅宗,是由中国独立发展出的三个本土佛教宗派。其中又以禅宗最具独特的性格。禅宗祖师会运用各种教学方法,以求达到这种境界,这又称开悟。其核心思想为:
“不立文字,教外别传;
直指人心,见性成佛”。
轶事
《西游记》孙悟空学艺的故事可能取材于六祖慧能的学佛经历。
-
2011-11-04
<集合>红色趣味丛书 - [历史]
《老总小传》作者:马甲同志 http://blog.sina.com.cn/s/blog_5091b1dd0100c3nq.html
以非常不传统的视角书写总司令的光辉历程。
《非常轨迹——记中央红军长征中的四渡赤水抢渡金沙江之战》 作者:双石 http://zhoujun.blshe.com/category/349/9197
以电报文和分析为基础,重现“四渡赤水”;
时间,从1934年12月至1935年5月;
地点,湘(湖南)、桂(广西)、黔(贵州)、川(四川)、滇(云南);
中共参战部队:
军委纵队,叶剑英、陈云;
红一军团,林彪、聂荣臻;
红三军团,彭德怀、杨尚昆;
红五军团,董振堂、李卓然;
红九军团,罗炳辉、何长工;
游击队若干;
KMT参战:
中央军,薛岳;
湘军,何健;
黔军,王家烈;
川军,刘湘;
川军,刘文辉;
桂军,李宗仁,白崇禧;
滇军,龙云;
地方民团若干;
《朱毛之争》 作者:双石 http://zhoujun.blshe.com/category/349/9689
主要是叙述,分析发生在1929年6月的朱毛之争的前前后后,左左右右的一些事儿。
《Ifuleu红色八卦系列:【井冈山】》作者: 双石 http://zhoujun.blshe.com/category/349/34826
主要是叙述开始于1927年秋朱毛红军在井冈山的成长、战斗的事儿。
《十大元帅的情缘》 作者:孔庆东 http://blog.sina.com.cn/s/blog_476da36101000axq.html
《红军林彪》 作者:子金山 http://blog.sina.com.cn/s/articlelist_1256636234_10_1.html
主要是叙述了林彪元帅从1927年南昌起义到1935年红军长征结束这一段时间内的战斗历程。
-
2011-10-31
学习Android-Android初调试 - [Android]
系统库即可 )
-
2011-10-31
安装windows xp和ubuntu双操作系统的方法 - [杂记]
先装ubuntu,再装xp:4.
5.
6.
7. 在ubuntu中,reported."
8. 重启机器,进入grub界面,这时候恢复了ubuntu下面的grub启动界面。这时候你发现xp的启动选项可能不工作,别着急。
9. 按键c进入grub的命令行界面,键入root (hd0,之后按键tab键。这时候注意查看,在xp的分区信息中有一个uuid,记下来uuid,然后quit到ubuntu的grub启动界面。选择 xp的grub项,然后按键e,进入编辑模式,把记下来的uuid替换原来的uuid.这只后F10就可启动xp了。
10. 其实也可以不操作第9步,直接从ubuntu grub登录进入ubuntu系统,然后编辑:/boot/grub/grub.cfg文件,将xp启动项中的uuid替换成新的xp系统的uuid即可。我的修改之后的内容为:
insmod part_msdos
insmod ntfs
set root='(/dev/sda,msdos1)'
search --no-floppy --fs-uuid --set=root 0E48A65048A6367D
drivemap -s (hd0) ${root}
chainloader +111. OK一切搞定。
另可参考:http://www.blags.org/windows-xp-disk-to-install-ubuntu-10-04/
-
2011-10-24
学习Android-了解Android(二) - [Android]
Android 通用架构
Android 有一个通用的展示软件栈的架构,即是如此图:
简单介绍:
Applications 层:主要是 Android 自带的 GMS(Google Mobile Service) 应用和应用开发者开发的应用;
Application Framework :主要是为 Application 开发者提供各种功能、服务和开发 API 。
Android Runtime(Core libraries and Dalvik Virtual Mache) :为应用运行提供运行环境的 Java 虚拟机和运行时库。
Libraries :主要是 Android 系统运行库和工具集;
C/C++ 库:
a) 标准 C/C++ 库 bionic : BSD 许可证,可以修改而无需公开源代码。提供 C/C++ 标准库绝大部分的功能,是一个专为嵌入式系统设计的轻量级标准库实现。相对于传统的 glibc ,其体积和内存占用很小。
b) C 语言工具库 libcutils :是 Android 系统中的基石库,基本上 Android 中所有的本地库和程序都链接了这个库。
c) init 进程:此进程是 Android 设备启动后,系统执行的第一个用户空间的可执行程序,由内核缺省直接启动,以守护进程的形式后台运行。提供以下功能:设备管理、解析并执行初始化脚本 init.rc 。
d) shell 工具: sh 和 toolbox 、 busybox 。
e) C++ 语言工具库 libutils :属于 Android 的底层库。以 C++ 实现,提供的 API 也是 C++ 接口规范。提供基本头文件、 Binder 框架以及使用 Binder 机制的相关库。
通过 Android 应用程序框架为开发者提供服务的 C/C++ 库 :
a) 系统 C 库:一个从 BSD 继承来的标准 C/C++ 系统函数库, 是专门为基于嵌入式 Linux 系统的设备定制的。即 bionic libc 库。
b) 媒体库:基于 PacketVideo OpenCORE 。该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括 MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。
c) Surface Manager :对显示子系统的管理,并且为多个应用程序提 供了 2D 和 3D 图层的无缝融合。
d) LibWebCore :一个最新的 web 浏览器引擎用,支持 Android 浏览器和一个可嵌入的 web 视图
e) SGL - 底层的 2D 图形引擎
f) 3D libraries :基于 OpenGL ES 1.0 APIs 实现;该库可以使用硬件 3D 加速(如果可用)或者使用高度优化的 3D 软加速。
g) SQLite :一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。
系统工具集 :
a) 主要以 busybox 为主,链接 bionic libc 库,为大多数嵌入式 Linux 所采用。主要包含一些系统管理工具,全为文本命令行工具。
b) 另外 Android 官方也提供了专门的调试守护进程,如 adbd 等。
HAL :一个对硬件访问虚拟化的中间抽象层,接着我们详细介绍;
Linux Kernel :基于开源 Linux kernel 经过修改的支撑整个软件栈的基础操作系统内核,当前主要是依赖于 Linux kernel 2.6 。驱动主要分为两类,一类是 Android 专用驱动,其并不是硬件驱动,而主要是一些为上层提供服务的辅助功能层,比如 ashmem 、 logger 、 binder 、 power manager ;另一类则是设备驱动则,其多是硬件驱动,属于 Linux 内核标准的驱动,比如 fb 显示驱动 (LCD) 、输入设备驱动 ( 游戏杆、鼠标、键盘、触摸屏 ) 、视频驱动 (Camera) 、音频驱动、 MTD 存储设备驱动、网络驱动 ( 蓝牙、 WiFi 、 Ethernet) 等。驱动在内存映射的时候也分为 kernel space 和 user space ,放在 kernel space 都是需要遵循 GPL 开源的;放在 user space 中的驱动,是遵循 Apache/MIT 许可证的,可以不开源,其运行在 kernel space 之上。
Hardware Abstraction Layer:
HAL 是 Google 为了解决 Linux 开源许可证 GPL 和 Android 本身的 Apache 许可证冲突的一个硬件抽象层,主要原则是把控制硬件的动作都放到了 Android HAL 中,而 linux driver 仅仅完成一些简单的数据交互作用,甚至把硬件寄存器空间直接映射到 user space 。
HAL 存在的原因:
1. 快速适配硬件设备中非 linux kernel 标准的接口;
2. 解决 Linux 开源许可证 GPL 与硬件设备厂商驱动的专利不兼容;通过 Android 的 Apache 许可证和 HAL 技术实现来解决这一难题;
3. 开放的满足设备厂商开发开与之驱动对应的特定需求的要求;
HAL 层具备如下特点:
1. 在用户空间 (user space) 而不是内核空间 (kernel space) ,可以是 c/c++ 库;
2. 将 Android platform 部分和系统硬件完全的进行了隔离开;
3. 向上层提供 Android platform 操作硬件的接口,向下要求硬件驱动对其功能进行实现; ( 比方说上层应用对于 Graphics, Audio, Camera, Bluetooth, GPS, Radio(RIL), Wifi 等的操作。 )
在编程方式上,上层应用通过 HAL 对硬件的操作有两种方式:
1. 通过 Java->JNI->*.so 库 (c/c++) ;
2. 通过 Java app->ApplicationManager->Service(java)->service(jni)->HAL->HAL stub->System Call 方式进行调用;
注:一般 HAL 动态库放在位置 /system/lib/hw 目录。
一般开发类型
1. Android 手机产品:构建硬件系统,移植 Android 软件平台系统;主要涉及设备驱动程序,以及在硬件抽象层实现标准接口等。
2. Android 应用程序:基于 Application Framework 和其他应用,开发应用程序;
3. Android 系统开发:主要是增强或者完善 Android 平台系统的功能,开发中主要包含如下部分:
a) 开发 c 或者 c++ 库;
b) 定义将要通过 JNI 提供的上层 Java 的系统 API 接口;
c) 封装 JNI ;
d) 通过 JNI 封装 Java 类和接口 API ,提供给 Android 应用使用;
Android 开发社区
Cyanogenmod 社区: http://www.cyanogenmod.com/
涉及开发语言: C/C++/Java 等。









