智能设备/NEWS CENTER

你必须理解的计算机核心概念

发布时间:2017-12-29

  你必须了解计算机的核心概念

  计算机科学中有很多概念,如编码(原始码,补码,反码),虚拟存储器,文件,IO,编译,链接,包交换,关系,事务,范式,哈希,加密等。 。 。等等,这篇文章试图谈论最重要的核心集合,从中可以改变计算机编程的各种魔力。 1冯·诺依曼结构计算机理论所有的计算机语言,无论是Java,Python,Go,C,C ++,PHP ...,无论你是在TIOBE之上还是排名第100,如何看中,如何强大,最终不得不成为一个基本的二元指令,诚实地按照规则冯·诺依曼计算机的结构。这里是根,我们看到,用于树花和树叶。雄心勃勃,对年轻人有强烈的好奇心,难道你不想看到根?作为最基本的要求,我们必须了解CPU和内存这两个好友都是贴心的工作:CPU从内存中去除指令,解码并执行,在执行时将内存中的数据从内存中移出,放入寄存器中进行计算,并将结果写回内存。如果是跳转指令,则CPU取出跳转目标的指令继续执行。这样一个简单的过程,即使是由一个五彩缤纷的电脑世界组成:你可以听音乐,玩游戏,在线聊天,用Word写文档.....当然,一个微不足道的操作,进入CPU和内存它可能采取数以万计的指示来完成它。这些基本指令形成了序列,循环,分支等的基本程序结构,形成了更强大的编程语言的基础。 CPU与内存,硬盘等之间的速度不匹配是冯·诺依曼结构计算机的核心问题。为了解决这个问题,科学家们尽力解决这个问题,并导致了一堆概念:高速缓存,DMA,同步,异步,被阻止....扩展阅读:书籍:“编码”“通过计算机的雾“2进程和线程两个人的重要性是不言而喻的,因为你编写的所有程序要么是一个独立的进程来执行,要么是在编辑过程中的一个线程,而是没有例外。几乎所有的编程语言都支持多线程或多线程编程,特别是多线程并发编程,所以你必须弄清楚它是什么。过程是一个正在运行的程序的抽象,没有这个概念,我们不能在听音乐的同时,在网上过上幸福的生活。对于CPU来说,它只是无法解释地从某个地方获取指令并执行它,但是它并没有意识到在某些时候世界已经改变了,它所执行的程序已经被切换了。另一个程序(准确的说话过程)已经成功地抓住了权力类。每个进程都有一个由操作系统老板维护的进程控制块,它在运行时节省了进程的重要信息,这个进程是来回切换的重要保证。另一方面,线程驻留在进程内,而共享进程提供的好处(代码和数据)以及占自己英亩的三分之一。线程的出现增强了系统的性能,吞吐量和响应能力。然而,多进程/多线程编程也带来了一系列的问题:同步,通信,锁死,死锁。 。 。进一步阅读:书籍:“操作系统概念”3虚拟内存有了物理内存,为什么会有虚拟内存?其中一个重要的原因是,它给过程主人一个独立的虚拟地址王国,给他们一个幻觉:我是最重要的,我是独家记忆!每个人都在自己的王国调皮,他们不会相互争斗,治安就会有保证。但是在虚拟地址王国里什么都不能做,指令必须在物理内存中执行,操作系统老大用尽每一个解决方案,把每个进程的虚拟地址映射到实际的地址上去,表面静静的,在灵魂的后面-stirring,Segmentation,paging,page table,还可以使用CPU TLB来加速。程序并不像你想像的那样,一下子全部加载到内存中,而是慢慢地,只用于加载时。在这个过程中执行一个普通的指令实际上是非常高兴的,因为有很多人在马鞍上忙着自己,这个过程几乎没有被注意到。深入阅读:“对计算机系统的深刻理解”,“操作系统概念”4网络的核心概念以上仅限于计算机,但大型网络早已与这些岛屿联系在一起。这个大网就在你我身边,我们都成了它的一个节点。大型的网络设计非常有趣,没有中心节点,少数甚至是某个被杀死的节点都没有涉及到网络生存,提供服务。我们需要理解的代码农的核心概念是:分组交换,TCP / IP参考模型,套接字,http(s)。你可能没有想到你在网上玩游戏,听音乐,看了这篇文章,数据并不是一下子都传送给你的,而是分成了适合网络传输的小块,每一段代码号码的小块是相同的或不同的网络路径去独立,到达你,重新排序,组合,然后显示给你,这是分组交换。分组交换的使用可以充分利用网络带宽:在你不使用的差距,其他人也可以使用。但一个明显的问题是如何处理分组数据丢失,如何检测,如何重发,如何缓存已经收到的分组数据以及一系列烦人的问题。这是TCP要做的事情。如果你可以认识到TCP是在系统侧面实现的,那么中间节点对此一无所知,我认为你已经掌握了分组交换和分层的本质,TCP / IP参考模型定义了五层:应用层,传输层,网络层,链路层,物理层,你必须明白所谓的分层只是将你的数据逐层包裹起来,传输过程层中的每个节点都会解压一层数据,查看数据,然后再把它包起来,直到最后,也许你不想知道烦人的细节的底部,但是我们必须了解socket和http(s),这两个兄弟最接近我们的日常生活,我们经常进一步阅读:书籍:“说明HTTP”“计算机网络:自我导向的方法”5 Hash和RSA如果Https是网络的基石,那么可以使用它们来发送和接收数据,安全通信,哈希和RSA ar e基石的基石。为了保证信息在传输过程中的隐私性,完整性,不可伪造性,这哥哥可以说是贡献良多。事实上,不仅仅是Https,在各种硬件和软件平台上都可以看到他们的勤奋人物,比如SSO,SSH,JWT .....等非常值得您学习的精力。 RSA最好的地方是一对钥匙,一个是私密的,另一个是公开的,另一个是公开的,任何人都可以知道这是对前一个对称钥匙的极大颠覆,谁能想到原来需要的保密更有趣的是,钥匙只能通过相应的公钥解锁,反之亦然,这确实是一个非常漂亮的概念。 RSA的概念很简单,但为了实现真正安全的消息传递,您必须首先拥有数据签名,并且需要了解如何使用散列对消息进行散列,然后使用私钥对其进行签名,以及如何验证一下了解了这个,很多东西都解决了。

狗万赢钱提款好快

2017-12-29

更多内容,敬请关注:

狗万赢钱提款好快官网:/

狗万赢钱提款好快新浪官方微博:@狗万赢钱提款好快

狗万赢钱提款好快发布微信号: