最近又又又重复看了

star trek 星际迷航

back to the future 1/2/3

开始想象未来是什么样子的

1. 未来的开发语言

1.1【rust】 or 【golang】 or 【cpp11 => cpp 17 => cppxx】 ?

http://en.cppreference.com/w/

cpp11之后 STL使用已经足够简单

Strings library

basic_string

basic_string_view (C++17)

Null-terminated byte strings

Null-terminated multibyte strings

Null-terminated wide strings

Localizations library

Regular expressions library (C++11)

Atomic operations library (C++11)

Thread support library (C++11)

再到最近的cpp17的

Filesystem library (C++17)

===================================

如何看待 Rust 的应用前景?

如何评价即将发布的 Rust 1.0?

Rust Once, Run Everywhere

关于 rust 前景大家是什么样的一个态度

rust 如果作为一个系统级别的语言,没有gc 和runtime 那么的确可以做出一个性能好的程序。
(发展的好的话,文档,标准库也会跟上, 可以无缝贴合c语言),将来在硬件领域 或许是个不错的选择 但是golang 在开发效率,标准库的开发进度已经非常成熟了,
已经可以开始大量使用golang了,语言性能也只是比c、c++ 低20%而已, 但是大部门性能损耗应该在 业务+网络 上, 算法+策略上的优化,起码可以达到100倍以上。 额,中小程序(节能嵌入式,桌面软件)将来还是cpp 主导。
中,大型程序 有golang/java 看定位的话,rust除了操作系统 既要求效率和性能,又要求开发效率。
但是历史上有那么多的库,C11也已经足够好用了,
对于OS来说,他们没有必要用rust重写,完全可以用c模拟一个thread safe,lock free, goroutine(早期C Run Time 不是threadSafe 就是因为用全局static变量) c的灵活度高到, c的历史 坑 + 包袱 完全可以重写!!我想rust性能再高,也不如用指针消耗低吧。
但是关于【开发效率】和 【软件安全问题】,让我对rust 再次有好感。 如果你要去50km外的地方,你是用腿走过去(c language),还是开汽车(rust language),还是开飞机去(c++ language) - C 成本太高。
- rust 复杂度中等(普通人学习下就可以用)
- cpp 复杂(上手当然也可以很简单,但要理解深刻。绕过那些坑,没有大量的时间和实践是不行的 ) 时间也是成本的一种,并且是最昂贵的一种!(from 星际穿越 Interstellar) BS 也不止一次比喻C就是用腿走路了,这个比喻其实蛮恰当的
1.2 软件安全性
C语言
- 指针用的不好,容易出问题。
- 异常处理的太垃圾,
- 和cpp一样,各种依赖(编译时、运行时,头文件依赖)依赖的依赖的依赖。。。 (boost 之所以这么流行就是大部分库,只需要载入头文件,不用其他依赖)
1.3 总结

rust 几年之后可以跟进看看,如果想弄嵌入式,并且对功耗有要求的话。

golang 现在也可以跨平台,write once run everywhere(golang 的cgo 因为runtime 和c runtime 不一样,还需要改变默认 堆栈大小 )

cpp就算STL 做的再好,将来 编译环境,编译依赖,头文件依赖等等。 语言方面的优化问题,解决不了,还是会很头疼。(大型程序,开发效率会大大降低!!!!)


扩展阅读:安全问题、开发效率

航空飞船,卫星,车载 无人驾驶领域,测试的成本就太高了。用机器去写代码,总好过人写代码吧。 话说将来真的是有可能哦, 人类就写API, 机器就调用。 google

大家还记得 美国 航空飞船 发生多少次飞船升空失败了么?

SpaceX火箭发射失败后续:事故调查竟能如此精细

SpaceX 完成世界首次海上回收火箭

失败四次后,SpaceX 终于既能上天,还能海上回收了 or 海上回收火箭首获成功,民营航天发展势不可挡

SpaceX 今天首次成功在大西洋上回收火箭,这是人类史上第一次,实现海上回收第一级火箭。
猎鹰九号第一级垂直降落在大西洋中一艘名为“Of Course I Still Love You”的无人船上。
此前,SpaceX 已经尝试了四次,终于在第五次时成功。

为什么感觉美国发射火箭经常失败而中国很少失败?

中国火箭发射记录 China Launch Vehicle Flight History by Variant/Year (1970-Present) page 1/4

喜欢这个话题的小伙伴,可以在这里找到一些从业者 或学生或工作人员

中国 知乎话题:火箭发射

全球 quota,NASA等等

==============================

引用 【star terk 】中的话

未来就是能源 和 技术的 时代

这里 最后 有讲到如何利用能源

阿库别瑞(曲速)引擎的运作原理是怎样的?

is the solar system really a vortex

有空可以看看NASA 官网 或者 邮件


kernel的会在乎安全性?

参考Linux之父:光提升Linux内核的安全性是没用的

Linux 之父 Linus Torvalds 在表达针对 Linux 内核安全性的问题上,总是有自己独到的见解。在最近的访问中,他解释了为什么内核漏洞并不像人们想象得那么糟糕。
一般发现一个 Linux 内核漏洞之后,进行快速的修复,但伴随而来可能还会产生其他问题,只不过一时半会儿没有被人们察觉。如果你是个程序猿,开发一段代码超过 10 年,那么这种模式应该是很容易理解的。
从我们外行人的角度来看,加强 Linux 内核的安全性应该是内核开发者的首要任务之一。然而实际让,在内部人士看来,情况可能会复杂得多。
在接受华盛顿邮报的采访时,他解释了为什么内核的安全性需要向其他因素妥协,如速度、效率等的因素,不像人们对安全性的理解那么简单。采访中,Linus 所表达的观点与那些大力喊着安全性的开发者是不一样的。
他说:“那些关心这种东西的人真是疯了。他们把黑白分得太清楚了。仅是本身的安全是没用的,还在于其他方面(Security in it self is useless. The upside is always somewhere else.)。”
他表达的想法有两个意思。其一,我们不能仅仅将安全寄托在 Linux 内核上,还有其他层实际上是应该要防止漏洞被利用的。第二,不管我们如何修复或者提升 Linux 内核,我们可能都不会看到它带来的真正好处,总会有其他的方法来达成这方面的提升。
Linux 内核社区内部,安全性始终是争论的焦点问题。我们只能希望 Linus 所表达的这些能够对开发者在安全性工作上起到指导作用。

Linux内核被指缺乏安全性

《华盛顿邮报》发表了一篇报道采访了Linux作者Linus Torvalds谈论了内核的安全

Linux统治了互联网,微软和苹果相比都要相形见绌,在此情况下Linux的安全愈来愈引起关注,而Linus本人对安全的看法则招致了非议。安全研究员Daniel Micay说,Linus没有将安全摆在更重要的位置,他和他周围的人都持有相似的安全观。Linus被认为更关注性能和可靠性。他在接受采访时承认与安全专家有不同的观点,他认为任何系统的安全都不可能完美,所以必须与其它优先事项权衡利弊。他认为那些将安全置于一切之上的人都疯了,安全本身是没有意义的,问题总是会出现在某个地方,安全从来不是需要你真正关注的东西。他举例说,想象一下恐怖分子利用Linux内核漏洞导致核电站熔毁,杀死了数百万人。但真正的安全问题不是在内核,而是如果你运行了一座能杀死数百万人的核电站,你不应该连上互联网。

世界上没有任何软件,是安全的! 开发者有编译+运行环境,解析到汇编,都可以直接改内存中 变量的值。


嵌入式Linux会议:一秒启动Linux

or 原文

视频 How to Boot Linux in One Second - Jan Altenberg

pdf演讲报告

在欧洲举行的嵌入式 Linux 会议上,德国公司 Linutronix 的 Jan Altenberg 介绍了如何一秒启动 Linux。一秒启动对于汽车等应用环境十分有用。
使用 Atmel AT91 ARM9 SoC 和 NAND flash 存储器,运行 Angstrom Linux 的标准启动时间是 11 秒,简单优化后可以降低到 8 秒,
深入广泛的修改包括内核配置修改和命令行调整,可以将启动时间减少到 656 毫秒。具体细节可浏览他的演讲报告。

about future的更多相关文章

  1. 面向未来的友好设计:Future Friendly

    一年前翻译了本文的一部分,最近终于翻译完成.虽然此设计思想的提出已经好几年了,但是还是觉得应该在国内推广一下,让大家知道“内容策略”,“移动优先”,“响应式设计”,“原子设计”等设计思想和技术的根源. ...

  2. 线程笔记:Future模式

    线程技术可以让我们的程序同时做多件事情,线程的工作模式有很多,常见的一种模式就是处理网站的并发,今天我来说说线程另一种很常见的模式,这个模式和前端里的ajax类似:浏览器一个主线程执行javascri ...

  3. 第二篇 Entity Framework Plus 之 Query Future

    从性能的角度出发,能够减少 增,删,改,查,跟数据库打交道次数,肯定是对性能会有所提升的(这里单纯是数据库部分). 今天主要怎样减少Entity Framework查询跟数据库打交道的次数,来提高查询 ...

  4. Eclipse调试Android App若选择“Use same device for future launches”就再也无法选择其他设备的问题

    在狂批了某供应商的多媒体控制App有多烂后,夸下海口自己要做一个也是分分钟的事.当然要做好不容易,要超过他们的烂软件还是有信心的.过程中遇到各种坑,其中之一如下 刚开始只使用一个平板进行调试,老是弹出 ...

  5. java Future 接口介绍

    (转自:http://blog.csdn.net/yangyan19870319/article/details/6093481) 在Java中,如果需要设定代码执行的最长时间,即超时,可以用Java ...

  6. java多线程系类:JUC线程池:06之Callable和Future(转)

    概要 本章介绍线程池中的Callable和Future.Callable 和 Future 简介示例和源码分析(基于JDK1.7.0_40) 转载请注明出处:http://www.cnblogs.co ...

  7. 架构师养成记--9.future模式讲解

    什么是future模式呢?解释这个概念之前我们先来了解一个场景吧,财务系统的结账功能,这个功能可能是每个月用一次,在这一个月中相关的数据量已经积累得非常大,这一个功能需要调用好几个存储过程来完成.假如 ...

  8. Future和Promise

    Future用于获取异步操作的结果,而Promise则比较抽象,无法直接猜测出其功能. Future Future最早来源于JDK的java.util.concurrent.Future,它用于代表异 ...

  9. Java--Callable与返回值future

    package com; import java.util.concurrent.*; /** * Created by yangyu on 16/11/28. */ /** * Callable a ...

  10. Java多线程系列--“JUC线程池”06之 Callable和Future

    概要 本章介绍线程池中的Callable和Future.Callable 和 Future 简介示例和源码分析(基于JDK1.7.0_40) 转载请注明出处:http://www.cnblogs.co ...

随机推荐

  1. erlang的随机数 及 random:uniform()函数

    每次调用会更新进程字典里的random_seed变量,这样在同一个进程内每次调用random:uniform()时,随机数种子都不同,所以生成的随机数都不一样(调用完random:uniform()后 ...

  2. CocoaPods Podfile详解与使用

    1.为什么需要CocoaPods 在进行iOS开发的时候,总免不了使用第三方的开源库,比如SBJson.AFNetworking.Reachability等等.使用这些库的时候通常需要: 下载开源库的 ...

  3. linux 设置静态IP方法

    本系统使用 linux redhat 7.2 1.   修改ip vi   /etc/sysconfig/network-scripts/ifcfg-eno16777736 2. 修改数据项如下 3. ...

  4. Mac 常用属性

    如果需要让隐藏的文件可见. 具体做法就是打开一个Terminal终端窗口,输入以下命令: 对于OS X Mavericks 10.9: defaults write com.apple.finder ...

  5. 在嵌入式、海思、ARM中进行统一的音频AAC编码的必要性

    前言 最近来到深圳,跟许多做硬件的小伙伴聊安防.聊互联网.聊技术,受益颇多,其中聊到一点,大家一直都在想,互联网发展如此迅猛,为啥大部分的摄像机还是采用的传统G.726/G.711的音频编码格式呢,如 ...

  6. SQL语句备份和还原数据库(转)

    1,使用SQL最简单备份,还原数据库 1 /* 备份 */ 2 backup database Test to disk='D:/Test.bak' 3 /* 还原 */ 4 restore data ...

  7. 九度OJ 1148:Financial Management(财务管理) (平均数)

    与1141题相同. 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:843 解决:502 题目描述: Larry graduated this year and finally has a ...

  8. python使用记录

    #2017-7-17 1.用len()函数可以获得list元素的个数; len()可以获取字符串长度 2. list正向0开始索引,,逆向-1开始索引; 也可以把元素插入到指定的位置,比如索引号为1的 ...

  9. CF(439E - Devu and Birthday Celebration)莫比乌斯容斥

    题意:将n个糖果插入f-1个挡板分成f分(a1,a2,a3...af). 问有多少种分法能够使得gcd(a1,a2,a3...af)=1; 解法.莫比乌斯容斥,首先按1为单位分,这时候有C(n-1,f ...

  10. .net 调用SAP RFC的几种方法

    转自:http://www.cherpservice.com/pub/newsdetail.asp?Newsid=3613 第一种方式采用SAP.net Connector: 最新版本是3.,不开源, ...