微信怎么查微信聊天多少条看聊天条数

IT技术学习指导Linux系统入门的4个阶段
 作者: 黄梅宇 编辑:
  全世界60%的人都在使用Linux。几乎没有人没有受到Linux系统的“恩惠”,我们享受的大量服务(包括网页服务、聊天服务等)背后几乎都是由Linux系统支撑的,超过20亿人每天都随身携带基于Linux内核开发的 Android出门,Linux也广泛应用在嵌入式系统上。因此学习Linux系统变得尤为重要,对于普通用户而言,平面式的学习Linux系统的基本使用已经足够,但对于开发者或者运维人员而言,深入学习Linux的多个层次尤为重要。  我接触Linux陆陆续续有接近6年,成功的从对其一无所知到应用自如,目前也还在持续地学习更深层次的核心知识。接下来将以一个学习者的身份将我的“学习计划”分享给大家。这篇文章不会从技术细节的角度大展篇幅,主要介绍学习路径和方法论。  阶段1:仅仅为了掌握Linux的使用  作为一名对Linux毫无认知的新手,首要的第一步就是选择一款适合上手的Linux发行版系统(个人建议可以选择使用习惯偏windows的Linux桌面,如Ubuntu、openSUSE、Fedora等)。Linux的安装是入门必备的技能(包括MBR、EFI两种引导方式的安装,故障排查和解决的能力等)。当Linux投入日常的使用后,我们会渐渐去学习一些便捷的操作习惯(基本的命令操作、快捷键配置、软件安装和卸载、系统管理等),当我们发现在Linux操作系统下无法驾驭某一个点时,我们会通过查阅工具书到查看博文和问答系统去解决,直到有一天,我们发现日常的使用已经无法满足我们的求学欲望了。  系统性的学习系列教程(书籍):挑选学习教程和书籍时,目录大纲非常重要。《Linux就该这么学》就是一本学习路径清晰,循序渐进的Linux学习书籍,覆盖面从Linux安装到日常使用、再到系统运维和高级应用,非常适合作为第一本系统学习的书籍。    阶段2:系统学习Linux系统  由于日常的Linux使用技巧已经能够非常熟练地使用了,由此对一部分系统盎然的同学会触发深入学习的欲望。这个学习阶段将不再是一个零散的知识点和技能学习了,Linux的开源精神带动了一代又一代的前辈,他们将学习经验总结和整理成各种知识档案,通过整合这些资源,我们能够进行合理系统的Linux学习。  说在前面:系统地进行一个操作系统的学习之前,扎实的计算机基础知识掌握(操作系统、计算机基础、计算机网络等)是极其必要的,否则在后续的学习过程中,将会遇到非常棘手的基础技术壁垒,如专业术语、基础概念不清晰。  简言之,这是学习过程是整合资源进行系统学习,解决问题和学会思考的阶段。敬上系统吸收Linux系统的技巧。  1.提出解决问题的方案的技能:学会通过搜索引擎和社区(google、stackoverflow等)寻求问题的解决方案,通过符合(提问的智慧规范)的方式向前辈们提问。  2.学会思考和总结:徘徊在学习和解决问题的过程中,定然会让你刨根问底的浸入思考,将这些思考的东西沉淀下来,做以总结,将学习的路径传承和延续下去,继续发扬Linux的开源精神。  3.实验和应用:动手去玩弄你的Linux系统吧,尽可能给自己搭建一个可以肆意妄为的操作环境吧!  阶段3:应用和知识体系的形成  前言里面已经介绍了在实际生活环境下,Linux系统的一些应用场景,实际上Linux的应用也是非常的广泛,在熟练掌握得前提下,则足以开始大展身手应用于工作和生活中了。从网站的日常部署和维护、到网络环境管理、到各种应用服务的使用,几乎一切我们享受着的IT服务,都能通过Linux系统来完成,参考刘遄老师的培训内容/training  当你开始思考Linux的运行机制、系统架构、IO复用,甚至开始动手改造协议栈的时候,别忘记理清楚自己所掌握的技能图谱,别忘记分类和记录你踩过的每一个坑,关注的细节点。这些东西层层相关,这条学习路径将会组成属于你的Linux知识体系。    阶段4:深度学习和Linux职业化发展  说实话对于Linux的学习笔者也仅是暂时止步于阶段3,阶段4算是对前辈们的一些总结以及对未来学习路线的规划。  运维和(内核/应用)开发是Linux深度学习者的两条截然不同的发展路线,运维工程师更注重于Linux的应用和维护技巧,以及维护工具的使用和开发,而开发工程师们需要深入去学习内核源码解读、驱动开发、嵌入式系统开发、应用程序开发等。  学习阶段的划分对于学习固然有偌大的帮助,但其实更重要的找到适合自己的成长方式和节奏。合理的制定你的Linux成长计划吧,相信这会让你学得更轻快!
IT168企业级>>>>哪里学习Linux比较好-兄弟连Linu
兄弟连IT学校
地区:北京昌平区文华西路育荣教育园区LAMP兄弟连楼
哪里学习Linux比较好-兄弟连Linu
来源:发布时间: 11:02:23
&就近几年来看IT行业是发展的主流,其中Linux是发展最好的一种,越来越多的人来选择入行IT行业从事Linux的开发,而对于Linux开发这个行业来说,新手刚刚从大学毕业的人,许多公司是不要的,因为现在的公司要的是效益,招收人手要的都是老手,而许多想要跨行或者毕业想要找工作的,找一个Linux培训机构进行培训就成了唯一一个途径,那么Linux培训机构哪里的比较好呢? (学员自诉)当初自己没能考上名牌大学,最终去了一个职业学校,勉强算是专科“正经”毕业生吧,好在早些时候运气不错,被拉入技能大赛参赛队对着网络及Linux“研究”了一番,虽无大的成就,但好歹算是掌握了一技之长,勉强混口饭吃应该还是没问题的,凭着这股莫名的自信也就展开了自己的职业生涯。 & 当真正自己去找工作之时才发现我所处的这个城市,要不是高端资深的工程师,再不然是驻场协外的技术员,终究碰的一鼻子灰。偶然的机会让我遇到了兄弟连 & 作为兄弟连的一名老学员,不敢夸口成功,但至少现在的收入是之前好几倍(15k+),与来北京时相比,生活也发生了翻天覆地的变化。刚来北京的时候凭着大学时自学的PS技术应聘到一家公司做平面设计,因为是半路出家,技术不纯熟,收入自然也是很苦逼。一次偶尔的机会陪朋友到兄弟连试听UI设计课程,被讲师们的精彩讲解所折服,当下就决定辞职来兄弟连学习。 &学费不算贵也就不到2万 & 所以相信我有梦想就去兄弟连我很感谢他们成就了今天的自己! 短短四个月,每天都是魔鬼训练,讲师们不厌其烦的讲解,小到每个字母。零基础学习,成就你设计师的梦想。临近毕业还安排企业来校招生,推荐知名企业。淘宝、搜狐、酷狗等大平台不再是梦想。
copyright (C)2007-.All Rights Reserved. 京ICP备号-1 &京公网安备40号您现在的位置: -->
--> linux内核研究笔记(一)内存管理 – page介绍
linux内核研究笔记(一)内存管理 – page介绍
============ “不负责任”声明 begin ============咳,首先我是一个平时工作在linux应用层的服务器程序员,对于内核的了解也是皮毛,仅是业余时间中的业余研究的一些笔记,文中的一些观点也许只是我对内核的粗浅认识,大家可千万不要轻易信以为真啊PS:文中的内核代码默认都是2.6.27.62版本,且环境都按x86 32============ “不负责任”声明 end ============内核中最初勾引我好奇心的还是内存管理方面,我们平时编写应用程序时,一个进程所能拥有的内存大小几乎可以趋近于物理内存最大值或是超越这个值,虽然知道内核做内存方面的映射或是swap然后向我们的用户空间呈现出所谓的虚拟内存,但还是对其中实现疑惑甚多,一些关于内存的名词也是有许多,什么虚拟地址,内核线性地址,内核逻辑地址,balablabla…屁话不讲了,我们直接来看内核底层是如何来管理物理内存的。struct page {
atomic_t _
/* Usage count, see below. */
atomic_t _ /* Count of ptes mapped in mms,
* to show when page is mapped
* & limit reverse map searches.
/* Mapping-private opaque data:
* usually used for buffer_heads
* if PageP used for
* swp_entry_t if PageSwapC
* indicates order in the buddy
* system if PG_buddy is set.
struct address_space *
/* If low bit clear, points to
* inode address_space, or NULL.
* If page mapped as anonymous
* memory, low bit is set, and
* it points to anon_vma object:
* see PAGE_MAPPING_ANON below.
struct kmem_cache *
/* SLUB: Pointer to slab */
struct page *first_
/* Compound tail pages */
struct list_
/* Pageout list, eg. active_list
* protected by zone-&lru_lock !
};内核将物理内存划分为一个个 4K or 8K 大小的小块(物理页),而这一个个小块就对应着这个page结构,它是内核管理内存的最小单元上面的结构体只贴出了部分数据域,其注释内核也写得很清楚了需要说得是,这个page结构描述的是某片物理页,而不是它包含的数据不管是内核还是我们用户空间,分配内存时,底层都逃不掉这一个个的page,所以这个page可以作为: & & 1. 页缓存使用(mapping域指向address_space对象) & & & & & & & 这个东西主要是用来对磁盘数据进行缓存,我们平时监控服务器时,经常会用top/free看到cached参数,这个参数其实就是页缓存(page cache),一般如果这个值很大,就说明内核缓冲了许多文件,读IO就会较小 & & 2. 作为私有数据(由private域指向) & & & & & & & &可以是作为块冲区中所用,也可以用作swap,当是空闲的page时,那么会被伙伴系统使用。 & & 3. 作为进程页表中的映射 & & & & & & & 映射到进程页表后,我们用户空间的malloc才能获得这块内存先来看一下内核中和page相关的一些常量:include/asm-x86/page.h—————————————————#define PAGE_SHIFT
#define PAGE_SIZE
(_AC(1,UL) && PAGE_SHIFT)
#define PAGE_MASK
(~(PAGE_SIZE-1))—————————————————可以看出一个page所对应的物理块的大小(PAGE_SIZE)是4096(我们现在用户空间用得许多不同的malloc实现,在分配大块内存时都会与4096对齐,其原因应该也是PAGE_SIZE,毕竟这是内核管理内存的最小单元)arch/x86/kernel/e820.c—————————————————#ifdef CONFIG_X86_32
# ifdef CONFIG_X86_PAE
define MAX_ARCH_PFN
(1ULL&&(36-PAGE_SHIFT))
define MAX_ARCH_PFN
(1ULL&&(32-PAGE_SHIFT))
#else /* CONFIG_X86_32 */
# define MAX_ARCH_PFN MAXMEM&&PAGE_SHIFT
#endif—————————————————内核会将所有struct page* 放到一个全局数组(mem_map)中,而内核中我们常会看到pfn,说得就是页帧号,也就是数组的index,这里的MAX_ARCH_PFN就是系统的最大页帧号,但这个只是理论上的最大值,在start_kernel()时,setup_arch()函数会通过e820_end_of_ram_pfn()函数来获得实际物理内存并返回最终的max_pfn,可以看下e820_end_of_ram_pfn的实现(其内部直接调用e820_end_pfn函数)/*
* Find the highest page frame number we have available
static unsigned long __init e820_end_pfn(unsigned long limit_pfn, unsigned type)
unsigned long last_pfn = 0;
unsigned long max_arch_pfn = MAX_ARCH_PFN;
for (i = 0; i & e820.nr_ i++) {
struct e820entry *ei = &e820.map[i];
unsigned long start_
unsigned long end_
if (ei-&type != type)
start_pfn = ei-&addr && PAGE_SHIFT;
end_pfn = (ei-&addr + ei-&size) && PAGE_SHIFT;
if (start_pfn &= limit_pfn)
if (end_pfn & limit_pfn) {
last_pfn = limit_
if (end_pfn & last_pfn)
last_pfn = end_
if (last_pfn & max_arch_pfn)
last_pfn = max_arch_
printk(KERN_INFO "last_pfn = %#lx max_arch_pfn = %#lx
last_pfn, max_arch_pfn);
return last_
}从上面的宏定义还可以看到在x86_32时,内核会看是否启用PAE,PAE会比没有PAE所拥有的page更多(也即是说能访问更多的物理内存),PAE是一种物理地址扩展技术,让你在32位的系统中能访问超越4G的空间,这里不展开说接着来看下page结构的相关宏/函数:pfn_to_page/page_to_pfn - 这两个底层使用 __pfn_to_page/__page_to_pfn宏,它们的作用是struct page* 和 前面提到的pfn页帧号之间的转换,看下实现__pfn_to_page:(mem_map + ((pfn) - ARCH_PFN_OFFSET))
__page_to_pfn:((unsigned long)((page) - mem_map) + ARCH_PFN_OFFSET)就是简单地和mem_map进行加减操作(最后那个OFFSET可以无视,默认0),由于mem_map也是struct page*类型,所以相加减就能得到对应的pfn(数组index)和对应的struct page*,如图#define phys_to_page(phys) (pfn_to_page(phys && PAGE_SHIFT))#define page_to_phys(page) (page_to_pfn(page) && PAGE_SHIFT)这两个宏的功能分别是将struct page*和物理地址之间进行转换例如page_to_phys, 通过page_to_pfn宏取得相应的pfn后,还记得PAGE_SHIFT吗,假设pfn是1,左移12位,就是4096,也就是第二个对应的物理页的位置,这样就取得了物理地址(虽然内核在虚拟地址中是在高地址的,但是在物理地址中是从0开始的,所以这里也是从0开始)#define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) && PAGE_SHIFT)
#define page_to_virt(page)
__va(page_to_pfn(page) && PAGE_SHIFT)这两个宏的作用是在struct page*和内核逻辑/线性地址 之间做转换这里要补几个概念性的问题 -内核逻辑/线性地址:其实对于linux内核来说,这个地址等同于物理地址,只是它们之间有一个固定的偏移量,linux内核中常提到的逻辑地址和线性地址其实是同一个东西内核虚拟地址:与上面的内核逻辑地址的区别在于,内核虚拟地址不一定是在硬件物理上是连续的,有可能是通过分页映射的不连续的物理地址这里的virt指得就是逻辑/线性地址,而不是真正的virtual地址继续看__pa和__va宏#define __pa(x)
((unsigned long) (x) - PAGE_OFFSET)
#define __va(x)
((void *)((unsigned long) (x) + PAGE_OFFSET))可以看到它们只是做了一个偏移量(PAGE_OFFSET),在x86_32中,这个PAGE_OFFSET是0xC0000000,为什么是这个值呢,因为32位系统中,内核的虚拟地址只有1G,这个之后具体讲内存布局的时候再讨论还有一个常用的宏/函数是page_address,它特殊的地方在于,以上的那些宏针对的或是返回的都是内核逻辑地址,也就是说是做简单的偏移加减,但是在32位系统中有个high_mem的概念 - 高端内存,它的作用让内核如何访问超出32位范围的内存,方法就是利用某一小块固定的内存做映射(这里的HighMem我个人认为就是前面提到的PAE技术的一种实现,以后讨论)所以一个page对应的虚拟地址,有可能是直接做物理偏移的地址(也就是以上几个宏可以直接应用的),还有就是被高端内存映射的针对后者,以上的几个宏是无法得到page的虚拟地址的,只有应用到page_address函数我们看下page_address的实现:void *page_address(struct page *page)
struct page_address_slot *
if (!PageHighMem(page))
return lowmem_page_address(page);
pas = page_slot(page);
ret = NULL;
spin_lock_irqsave(&pas-&lock, flags);
if (!list_empty(&pas-&lh)) {
struct page_address_map *
list_for_each_entry(pam, &pas-&lh, list) {
if (pam-&page == page) {
ret = pam-&
spin_unlock_irqrestore(&pas-&lock, flags);
}其中会通过PageHighMem函数来判断page是否是HighMem,如果不是,直接调用lowmem_page_address,这个函数内部实现就是page_to_virt,所以就是简单地做偏移了,关于HighMem的映射之后再讨论了以上就是内核常用的几个page转换的宏/函数,最后咱们简单看下page的分配接口(释放的我懒得一一匹配写了)返回page结构的:struct page * alloc_pages(gfp_mask, order) & & & & &// 分配 1&&order 个连续的物理页struct page * alloc_page(gfp_mask) & & & & & & & & & & // 分配一个物理页返回page对应的逻辑地址的:__get_free_pages(gfp_mask, order) & & & & & & & & & &// 和alloc_pages一样,只不过返回的是第一个页的内核逻辑地址__get_free_page(gfp_mask) & & & & & & & & & & & & & & &// 返回一个页的逻辑地址分配和释放都牵涉到底层的伙伴算法,那么也放到之后再讲吧~
觉得文章有用?立即:
和朋友一起 共学习 共进步!
建议继续学习:
QQ技术交流群:,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
作者:&&&&来源:
发布时间: 13:25:23
建议继续学习
近3天十大热文
rightLowest
& 2009 - 2017现在有机会去实训,这三样哪一样更有发展前景,问过不少人,做什么的都说自己的行业好,迷茫了…大家怎么看
楼主发言:1次 发图:0张 | 更多
  如果本来不懂底层,就去学嵌入式。这样可以完善知识结构。
  JAVA.  水平不是看懂底层.再说, 多底算底?
  最好是先了解它们的区别,选一个自己感兴趣的
  目前的趋势来看,嵌入式是将是非常火的。尤其是  linux+arm组合,相当有震撼力。    相对于java等,嵌入式入门门槛更高一些。
  学单片机吧,小兄弟,别整这么复杂的东西来搞。  
  语言不重要,重要的是通过语言到达你想要的目的地,就我经验而言,java入门是最容易的,可以推荐,但是入门容易并不代表说深入容易关键是看你投入多少时间和精力去研究。任何一门语言都可以让你变NB
  自然是嵌入式了,对你的功底要求高,能让你深入理解计算机原理。C#,java这种东西门槛太低,技术含量不够,前期浪费太多时间在这上面会造成基础薄弱,对以后发展不利。
  同意楼上。  语言这种螺丝改锥,和嵌入式这种设备级的东东比起来,根本不是可比的类型。
  作者:dideo 回复日期: 7:40:31 
    JAVA.    水平不是看懂底层.再说, 多底算底?     ----------------------------------------------------    作为程序员,水平很大程度上就是看是否懂底层。至于多底,那是从你所应用的层次递减。作为一个优秀的网页程序员,比如说日常用Rails的,至少应该晓得编译原理,知识结构才连续。Alan Kay有一句话,anyone who really serious about software should build their own hardware。水平最高的程序员,全部晓得一个NAND门在半导体层面上是怎样实现的。    如果您非要说网页程序员只知道hibernate, struts就可以了,那至少也要熟悉这些框架本身的设计才算合格,而不是晓得怎么用API就够。
  我也看好嵌入式,学c#的太多了,我身边的同学都要去学.net。
  对我来说这一切都难    很容易掉头发的    想赚钱嘛    还不如自己搞的小生意    先小打小闹    呵呵    我    懒人一个    可千成不要学我哦
  要想钱多,就搞嵌入式
  自己顶回来。
    搞.net和java的开发没有技术含量,工资不会高的。
  嵌入式 确实要求基础很高!  学JAVA吧!前景很大!  推荐你一个JAVA学习群,可以来了解了解!  QQ群:
  跟着微软大哥走没错哈,不会亏待你的
  微软大哥指c#么?不过微软在移动系统上也有WinCE啊
  搞嵌入的用不着看不起搞应用的,开发和部署企业级的应用程序其复杂程度不小于嵌入系统。什么linux + arm!现在流行的东西就是好么,现在中国流行那其实代表着没有什么技术含量,linux arm的源代码有几行是中国人写的?开发工具gcc有几行是国内搞arm linux的人写的?国内搞arm linux没几个有技术含量的,可能就搞skyeye项目的人还可以,无非是把开源社区的代码拿过来改改,这个也叫嵌入式高手?高中毕业生也会做。
  去书店转一圈,哪种书最多就先排除什么。  java, .net等技术本身都不错,但问题是学这些技术的人太多,竞争太激烈    等你学会了,人家熟练了,等你熟练了,人家精通了,等你精通了,人家成专家了,等到你也成专家了,人家玩别的去了,除非确认自己是天才,否则永远跟在别人后面。因此,学技术,应该学目前应用还不是在第一线,但是非常有潜力的IT技术,计算机语言的话,java .net都非常好,但学得人太多,可以考虑一些成长性好的,将来潜力巨大的语言,比如ruby, python等。目前linux+ARM嵌入式应用相比JAVA .net,学的人还不多,但确实政方面的人才需求却很大,更多的可以考虑嵌入式。    这就好比买股票,别人都在买的股票,属于白马,虽然不会太吃亏,但也发不了大财,只有能发掘黑马的人才能发财。
  学技术的人很容易陷入唯技术论的思维误区,认为技术含量高的才有前途,其实决定你的前途的,不是你学的技术的技术含量高低,而是你学的技术的市场需求,当你学的技术市场供不应求的时候,待遇就会提高,技术只有转化成市场需求才有意义。
  关键在应用,低沉算个屁!   楼上嵌入试的朋友们肯定都不信, 没关系. 记住大哥的话.  10年以后, 再回首.再后悔莫及吧.  另外, LINUX也就是穷困户用用.肯定又不信,呵呵.      
  我在学校做的就是嵌入式,但是不知道怎么,找工作很难找到嵌入式的,最后给offer的公司,我比较满意的都不是嵌入式.感觉来的嵌入式的公司都没几家,仅有的几家工资也很一般...怎么会这样呢
  现在嵌入式的确是个找钱的好东东,不过就是有点难啊,软硬兼施,要求的比较高
  本来以为看了贴子能明白点,但现在更乱了
  拜我为师,学写操作系统。  你说的那三样除了那个嵌入式,也就是白痴玩的东西。
  说错了,不是普通意义上的白痴,应该是计算机白痴玩的东西。
  先学java吧,一样一样的学,三心二意学不好
  04年 毕业于2流重点 计算机系  家庭无背景 来深圳  毕业后进入深圳某IT企业 一个程序都没编过 C的语法都忘光了 目前工资+公司股票收益 近20W   我们班学习最好 编程能力最强的牛人 现在还在西安一家企业做程序开发人员 待遇不到5W  所以说学什么是没什么用的 关键是找到最适合你的 如果你对程序开发没兴趣 最好择业时就换行 我的经验是一般的IT企业   销售最好 工程技术次之 研发最烂(收入低,工作强度大),往上爬的速度也是一样,除非你真能搞个特大发明专利出来(编程上不大可能,有也是通信专业的事)。  对于那些计算机专业的学生,我由衷建议是学好C能笔试面试找份好工作,有机会就换行换岗,不要做研发。(因为大部分搞研发的最终都要转行,特别是计算机专业的)
  建议是自己学,而不是靠哪个老师  学会自己查资料找教程和相关资源,  特地发一个不要钱而且有技术最前沿软件和教程的地方。  /down/index.htm?eid=518418
  作者:六神强力花露水 回复日期: 15:13:22 
    04年 毕业于2流重点 计算机系    家庭无背景 来深圳    毕业后进入深圳某IT企业 一个程序都没编过 C的语法都忘光了 目前工资+公司股票收益 近20W     我们班学习最好 编程能力最强的牛人 现在还在西安一家企业做程序开发人员 待遇不到5W    所以说学什么是没什么用的 关键是找到最适合你的 如果你对程序开发没兴趣 最好择业时就换行 我的经验是一般的IT企业     销售最好 工程技术次之 研发最烂(收入低,工作强度大),往上爬的速度也是一样,除非你真能搞个特大发明专利出来(编程上不大可能,有也是通信专业的事)。    对于那些计算机专业的学生,我由衷建议是学好C能笔试面试找份好工作,有机会就换行换岗,不要做研发。(因为大部分搞研发的最终都要转行,特别是计算机专业的)    ============================================================    
何止是一般企业,就是Microsoft,IBM,SAP也都是这样的,搞技术的是傻B,能把客户的钱弄出来的才是正解!
  &你说的那三样除了那个嵌入式,也就是白痴玩的东西。&  只能说无知者无畏呀.   
  &何止是一般企业,就是Microsoft,IBM,SAP也都是这样的,搞技术的是傻B,能把客户的钱弄出来的才是正解!&  没有技术, 只能是把钱骗出来, 不可能长久的. 急功近利,所以中国缺少合格的程序员, 更没有象样的软件.
  arm又是什么?嵌入式到底是硬件还是软件啊?异或是两着都有?
  艺不压身!  统统学习
  我看都可以,只要学深学透!盖茨还是大家不屑的的basic呢
      作者:dideo 回复日期: 8:12:02 
    &你说的那三样除了那个嵌入式,也就是白痴玩的东西。&    只能说无知者无畏呀.       ============================================================  
嘿嘿,你个小贼连我程咬金都不认识了!  
见了前辈宗师也不问声好?
  To dideo:  
来,小子。给老夫说说你的技术,教育背景!
  嵌入式主要就是c,这个语言比较长寿, 现在大趋势是 java和c#, java的优势是 大项目,sun主推, c#适合中小项目, 微软主推。    所以说, 学好其中任何一种语言
都很有钱途。 但是, 嵌入式 需要的经验要求比较高。需要的人数 相对比较少。
  是啊!现在JAVA是主流开发语言~  要学趁早啦~现在市场需求还是很大的!
  果然每个人的观点都不同呢,但c#好像看好的人比较少呢。
  嵌入式是将是非常火
  将是非常火?现在呢?
  这3个不好比哦。一个是比较LOW LEVEL的偏硬件类,而其他两种是高级一些的。OPEN SOURCE和。NET也没有什么比较性吧。现在MS的技术受的争议也很大。    做软件开发不是长久之道。一开始都是积累经验,后来转入顾问或者是PM。其实你有兴趣JAVA和C#可以一起学啊。我觉得没什么冲突。两者很相似。    另外回那位曾经白痴过的dideo(你应该会JAVA和C#,不然你也不会总结的这么精辟),关于“中国缺少合格的程序员, 更没有象样的软件.”,又是你从哪里统计出来的?OS开发跟SE也根本是两码事。    有的词用的不知道对不对。请不要介意。  
  大陆为何没有高技术的IT者?! 就是存在干技术最后要往管理转的思想, 经验多了, 转了管理, 荒废了. 这能有高技术IT者么?!  无奈的是, 大陆的管理者的工资还远高于技术者,恶性循环.
  作者:国人之悲哀 回复日期: 11:36:18 
    嵌入式主要就是c,这个语言比较长寿, 现在大趋势是 java和c#, java的优势是 大项目,sun主推, c#适合中小项目, 微软主推。        所以说, 学好其中任何一种语言 都很有钱途。 但是, 嵌入式 需要的经验要求比较高。需要的人数 相对比较少。  --------------------------------------------------------  同感
  我所在地方的感觉是java有点江河日下,呵呵,主要是因为缺少管理和组织,可能是因为开源的关系吧,衍生的自主产品太多,而且很多会有兼容性的问题,谁让开源了呢。。    C#是一个趋势,挺好,微软的力量还是强大的,随着微软对服务器市场得渗透,基于微软构架的服务应用一定会慢慢多起来。虽然现在你可以说C#貌似还不强大,但是相信会慢慢成熟起来的。建议你可以出来先学个C#,比较容易上手,通了一样语言以后再看其他的就会觉得一通百通了。从某种程度上来说,可能C#会比java难学一点,因为他有很多和C/C++得缓冲地带,呵呵,这也提供了它一些更强大能力。不过,越难学的语言,当你掌握以后,你看简单的语言就会觉得是浮云了。    至于嵌入式系统,也是一个趋势,不过的确对底层系统知识的要求比较高。arm+linux 的确不错,不过我对这个组合的应用还不是很了解,是用在工业自动化里面吗?有没有达人能指点一下?如果是,那前途会挺好,觉得中国的工业自动化技术还是太落后了。不过,如果楼主没有很强的毅力,也没有很好的系统结构理论基础,还是不要碰这一块。    最后谈谈哪个好?有人说底层的就是要比应用层开发的好,要强,我是强力鄙视这种说法的。因为各有所需,java,C#和嵌入式系统基本没有可比性,不同层面的东西,前两个应用层的,后面那个系统层面的。并且我觉得应用层开发的需求应该会远远的大于对系统层面开发的需求。有人说写操作系统牛,嗯,是很牛,问题是你给谁写?写出来谁用?linux 挣扎了那么多年才有了那么一点点的市场,要真写一个新的,你怎么来开发市场?大不了写系统的也就是帮着linux写写代码,或者去微软开发开发?不过真的能接触到核心开发的又能有几个?哦。。当然还有众多的unix厂商,也可以混口饭吃,可这需求和应用软件的需求比起来,就像是一大堆建筑工地黄沙里面的一粒。
  C# 和 java 基本没有什么,有基础的人随便看看都会,很简单,国内所谓的嵌入式其实也就是 arm+Linux,也没有,不会让你去搞VLSI,SOC的。而且其实不建议你学embedded,很难找工作。其实你可以去搞搞Mainframe,这个不错。
  ARM+Linux可以作为入门时候学习的手段,毕竟成本低。但从个人长远发展来看,还是需要在PPC/MIPS方面多花精力的。    工业控制用AMR 9T的比较多,消费电子(尤其是手持终端)用AMR 9E的比较多。但对于精度、确定性有要求的工业设备,Linux就不是很适合了。    自己玩操作系统就算了吧,即使个人钻研的再深,没有商业化也没用。  国内号称自己做OS的公司/研究所到底有哪个是真正自己开发的?
  获益匪浅啊
  成都有哪些好的招嵌入式的公司呢?各位知道的能不能讲一下。。  我有朋友搞嵌入式已经有8年经验了,从单片机到linux+arm,现在因为公司解散,正在找工作。。。但这几天发现招这方面的比较少。。
  有兴趣可与专业老师留联系方式咨询咨询
  嘛意思?
  看了半天
不管到底三个技术哪个更好
似乎大家唯一共识都是哪个都不如做市场去。。
      作者:dideo 回复日期: 8:12:02 
    &你说的那三样除了那个嵌入式,也就是白痴玩的东西。&    只能说无知者无畏呀.       =============================================    顶这个,说了太对了,感觉那种应用及的东西没必要学,太无聊了
  还是嵌入式的应用前景大一些
  哪个学好都牛。没什么哪个好、只是java之父跳到微软了。c#估计会有很大进步
  说JAVA白痴的就是土鳖,没见过世面。  国外哪个大企业,机构没有自己的财务管理系统,难道用C做的?  最近某个机构改革开发新系统,首期投资预算就是40亿人民币,告诉你online机能的后台程序都用的是JAVA。  你他妈的一辈子都没见过那么多钱吧?    无论是做人,还是做程序员,都在于智商,而不在于什么语言。  做JAVA怎么了?什么C,C++,.net,汇编,单片机老子也不是没做过。不要搞得神乎其神的,你又不是唐纳德克努特,你牛比个鸡吧毛?    指不定连高等数学都他妈没及格,少出来丢人现眼了。
  只知道这些都很难
  语言之争又来了,汗一个。  个人认为技术偏执狂的话都是用于YY的,作为任何一种计算机编程语言,都有自己的领域。如果一定要说哪个比哪个高贵,这只是一厢情愿的想法。  只要有真正的程序设计能力,就是Flash的AS脚本编程都可以赚大钱。  JAVA和C#相似度比较高,学好其中一个,另一个就简单了,建议楼主学习这2个。  至于嵌入式,爱玩就试试吧,谁也没规定只准你学一样。
  .net 和 java也许很多人都会,门槛低,不过却很实用。未来几年之内市场很大,至少我所在的公司就很缺好的java程序员,.net我们也有长期的固定兼职在接企划,我们的需求从没断过。
  至于嵌入式,偶老了,没研究,可能是个趋势。年轻人,路还是要自己走。祝好运
  根据IT业的现状来看,以后最火的应该就是移动通讯行业。就是在目前的手机的基础上面加入很多新的应用。  在3G时代到来以后,在这上面的的需求将会呈现爆炸性的增长,所以这个才是现在最有前途的。  目前整个手机行业的产值应该已经超过PC业了吧?    以后基本上就是智能手机的天下了,根据现在的状况,两条路比较适合  1.从底层做起,进行嵌入式的开发,从硬件驱动到操作系统等等,这个无论上层怎么变它都基本不变的。主要进行ARM的汇编(可以无视 MIPS),操作系统选择Windows Mobile或者是Linux (symbin我个人认为前途不大,要么跟微软走,要么跟整个业界走)。  2. 从应用着手,未来手机行业的杀手级应用应该是视频以及手机上的网络游戏等等。在这上面我看好.net一些,前几天的新闻好像.net已经可以在linux上运行了,java的优势又少了一点。跟着微软走是没有错的。    当然,这些只是技术上的一些建议,路还是要自己走。
  只要功夫深,铁杵磨成针。  捡一顺手的铁杵就行了。
  我是做java的,建议搞搞嵌入式,比较抢手啊。工资也高。
      -------------------------------------------------      我公司已在香港和英国上市,公司有300余人,总部设在北京,在上海、香港有分公司,主要从事银行、电力系统网站建设,现由于业务急剧膨胀,急需招聘JAVA高级程序员20名、项目经理3名、技术总监1名;以上职位谢绝应届毕业生。      请大家将简历发送到zhaopin_.cn,请勿使用附件发送。标题请注明应聘职位及薪金要求,不注明薪金要求的将直接过滤。      薪金范围:      高程:5-10万      项目经理:10-30万      技术总监:30-60万      -------------------------------------------------
  加密狗破解,软件逆向与破解,如有需要加我QQ:,收费合理。本人不做技术探讨,谢谢。。  不管你学那个都行,语言只是工具,将来真得要你去工作,拼的就是数据结构与算法等等等等的开发经验,什么底层,应该层都没有太大的意义,看你喜好,做一个程序员,最好有点经济头脑别一天到晚的写程序,到头来死的一定是你。如果你想将来有发展,按我说的做吧。别做破解,不然我会杀死你。。嘿嘿
  爱学啥就学啥
  学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!    学插入式,一共有88招。  学好了直接到日本做外包去!  
  学插入式,一共有88招。    学好了直接到日本做外包去!  ————————————————————  AV男优
  获益匪浅啊
  搞底层你搞不出芯片级(cpu,bios...),  搞应用层只是跟着人家走
  挑你自己最喜欢的学精就可以了。  我是做单片机的
  做嵌入式好,简单,不用一直学。知识老化慢  越是应用层,新的框架结构越多。跟着学都来不及。知识老化快。    难度其实都差不多。
  JAVA,我现在就在搞JAVA,以前我也搞过C#之类的,总感觉JAVA要好些,面象对象功能更强大
  3Q  
    C#入门很简单,本人就是自学的  
  爱生活,爱楼主
  不错,顶了,给你置顶。继续发此类帖子。
  好帖   很  好帖   很好帖   确实好帖   少见的好帖   真 ***
好帖   难得一见的好帖   千年等一回的好帖   好得不能再好的好帖   惊天地且泣鬼神的好帖   让人阅毕击掌三叹的好帖   让人佩服得五体投地的好帖   让人奔走相告曰须阅读的好帖   让斑竹看后决定加精固顶的好帖   让人看后在各论坛纷纷转贴的好帖   让人看后连成人网站都没兴趣的好帖   让人看完后就要往上顶往死里顶的好帖   让人不间断地在各种场合重复引用的好帖   让人一见面就问你看过某某好帖没有的好帖   让人半夜上厕所都要打开电脑再看一遍的好帖   让个读过后都下载在硬盘里详细研究欣赏的好帖   让人走路吃饭睡觉干什么事连做梦都梦到它的好帖   让人翻译成36种不同外语流传国内外世界各地的好帖   让人纷纷唱道过年过节不送礼要送就送某某帖子的好帖   让国家领导人命令将该帖刻在纯金版上当国礼送人的好帖   让网络上纷纷冒出该帖的真人版卡通版搞笑版成人版的好帖   让人在公共厕所里不再乱涂乱化而是纷纷对它引经据典的好帖   让某位想成名的少女向媒体说她与该帖作者发生过性关系的好帖   让人根据它写成小说又被不同导演拍成48个不同版本的电影的好帖   让某名导演跟据此帖改拍的电影在奥斯卡上一连拿了11个奖项的好帖   让人大代表们看完后联名要求根据该帖的内容对宪法做适当修改的好帖   让人为了谁是它的原始作者纷纷地闹上法院打官司要争得它的版权的好帖   让各大学府纷纷邀请该帖作者去就如何发表优秀网络文学为题目演讲的好帖   让人为了该帖而成立了各种学会来研究并为不同的理解争得眼红脖子粗的好帖   让美国警察于今后逮捕人说你有权保持沉默还有权阅读某某帖子要不要啊的好帖   让本拉登躲在山洞里还命令他手下冒着被美军发现的危险去上网下载来阅读的好帖   让萨达姆被捕时被发现他随身携带的除了一把手枪之外还有的就是它的复印件的好帖   让比尔盖茨在懂事会上发给与会者人手一份该帖命令仔细阅读后才讨论其他事宜的好帖   让诺贝儿奖理事会破天荒地因该帖的出现而开会讨论一直决定今后设立最佳帖子奖的好帖   让联合国安理会决定将它译成宇宙语由中国神州六号升空后不断播放看有没有外星人的好帖
  哈哈,我喜欢~~~~~顶
  好贴,,,  楼主说得太好了
  好贴!学习啦。。。
  感谢版主!!!!!!
  此位也招租!
  来拜拜各位,名人
  感激涕零,谢谢楼主的好贴
  啊,太感动了
  向高人学习    学习资料不能少啊    学知网是个有5000G学习资料的下载网站,注册后可免费下载以下资料:  [路径]电脑网络-计算机教程-计算机教程1  [目录]CISCO课件|gsm|Java课程|MCSE|编译原理|操作系统|程序设计|电子商务|多媒体|多媒体教程|汇编语言程序设计|计算机导论|计算机仿真|计算机密码学|计算机体系结构|计算机图形学|计算机网络|计算机网络体系结构|计算机组成原理|计算理论|其它计算机专业课|人工智能|软件工程|数据结构|数据库理论|数据压缩|数字逻辑电路|现代控制理论|信号处理|形式语言与自动机  [地址]/dirlist/10002/6cff454a4a045a4c3eccda.htm?popid=letian940  
  顶`是最好地回答
使用“←”“→”快捷翻页
请遵守言论规则,不得违反国家法律法规回复(Ctrl+Enter)

我要回帖

更多关于 查看微信聊天记录条数 的文章

 

随机推荐