Month: April 2016

Linux创始人畅谈开源操作系统

http://www.infoq.com/cn/news/2015/08/LinuxCon2015

Linux创始人林纳斯·托瓦兹(Linus Torvalds)在今年LinuxCon2015会议上的自由提问环节中,向与会者分享了他对开源软件和Linux现状的思考。对开源系统安全性、Linux在物联网中的应用、未来Linux发展蓝图等问题,Torvalds一一做了精彩的回答,eweekzdnet等媒体都进行了报道。
此次自由提问环节的主持人是Linux基金会的执行董事吉姆·泽姆林(Jim Zemlin)。

像福特一样改造生产力的伟人
主持人Zemlin引用了近期一篇介绍Torvalds的文章作为问答交流环节的开场。Linux操作系统广泛用于现代社会的方方面面,上至卫星火箭,下至成百上千的谷歌服务器。Torvalds作为Linux操作系统的创始人,被认为是继一百年前发明流水线的汽车大王福特以后,再一次通过改进生产工具创造了极大经济效益的影响力人物。Torvalds回应说,自己并没有那样伟大,不过确实很高兴因为开源系统而获得了这些赞誉。可以说,Torvalds在技术上的影响力超过了比尔·盖茨、史蒂夫·乔布斯以及拉里·埃里森,然而Torvalds始终保持谦逊,也可能正是因为这样,他作为Linux领导者的地位始终无法动摇。

缺陷始终存在但并非不安全
接下来Zemlin提了一个关于Linux系统安全性的问题,这个问题自去年开源系统遭遇Heartbleed和Shellshock等漏洞以来备受公众关注。Torvalds解释说,安全共同体常常把问题绝对化,非黑即白。然而在他看来,安全问题只是程序缺陷,基本上都是十分低级的错误。只有当少数极端聪明的人想到利用这些漏洞时,才会造成危害。而在大多数情况下,通常没有人会打这些错误的主意。他强调道,任何软件都不可能彻底没有缺陷。由于有程序缺陷的存在,Linux系统的安全性不可能十全十美。Torvalds同时强调,开源社区对于Linux内核十分谨慎,在加入代码时有着一套严格的标准。只有承认程序缺陷不可避免,才能真正解决安全性问题。唯一的解决方法是多层化,当在某一层发现漏洞后,则在下一层进行修补。无懈可击的系统是不切实际的,问题总是存在,所要做的就是不断完善。
当被问到2015年LinuxCon的热门话题Docker容器时,Torvalds并没有表示出太大的兴趣。他解释说,Linux内核与这些热门的概念没什么关系,作为基础架构者,他只关心人们如何使用内核。

更小、更精致?可能真没办法
目前物联网(IoT)正在蓬勃兴起,作为硬件基础的嵌入式系统大多使用的是Linux操作系统。Torvalds认为,Linux在物联网设备上的瓶颈是其大小不断增长的内核。虽然尝试过开发小而精的物联网设备内核,但是始终难以摆脱不必要的冗余。实际上,Linux内核无法达到像20年前一样的简约规模,但也可以一定程度上地简化缩小。不过Torvalds依然遗憾地告诉大家,如果想要设计出真正精致小巧的设备,只能寻找其他解决方案。

比起未来,更关注现在
最后主持人问到未来十年Linux的前景和计划,Torvalds回答说,他并不会去设想那样遥远的未来。Torvalds自认为是一个“蹒跚的行者”,只会考虑未来六个月的事情。关注于当前的版本发布以及下一版的发布才是理智之举,安排十年后的计划显得十分荒谬。即使让他返回到十年之前,他也没有办法预想今日Linux的成绩。不过,虽然他本人不关注未来十年的发展,但并不是说Linux没有关于未来的愿景。使用开源系统的公司会为未来十年进行规划,它们有着明确的需求,因此在推动自己公司计划的同时也会推动Linux发展。所以Torvalds总结道,就算他本人不是前瞻性的领导者,这整个过程也会促使Linux完成前瞻性的行动。

read count : 6

Having a exe in a java project is trouble when you have AVG anti-virus

I have 3 exe files in my java project, those exe are develop by me but AVG think one of them is virus and block my file. So my eclipse is not able to compile it by maven and my project that depend on it got fail compile too. You can’t white list that files, because when you compile it by maven, you actually move those exe into /target/ folder, even you white list the original exe in /src/ and content of those exe doesn’t change, AVG will still think it is virus. So you should white list the whole project folder.

exe virus 1exe virus 3exe virus 2

 

 

read count : 16

spring-boot with restful api get 406

spring-boot with restful api get 406, follow these steps to fix it:

  1. Add this to pom.xml
    		<dependency>
    			<groupId>com.fasterxml.jackson.core</groupId>
    			<artifactId>jackson-databind</artifactId>
    			<version>2.7.3</version>
    		</dependency>
    
  2. Create WebConfig.java in your project
    import org.springframework.context.annotation.Configuration;
    import org.springframework.http.MediaType;
    import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer;
    import org.springframework.web.servlet.config.annotation.EnableWebMvc;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
    
    @EnableWebMvc
    @Configuration
    public class WebConfig extends WebMvcConfigurerAdapter {
    
    	@Override
    	public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
    		configurer.favorPathExtension(false).favorParameter(true).parameterName("mediaType").ignoreAcceptHeader(true).useJaf(false).defaultContentType(MediaType.APPLICATION_JSON)
    				.mediaType("xml", MediaType.APPLICATION_XML).mediaType("json", MediaType.APPLICATION_JSON);
    	}
    
    
    }

read count : 32