内核_Tag标签_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
当前位置:程序员俱乐部 >>Tag标签 >> 内核 >>列表
微软是这个星球上对桌面操作系统最有话语权的公司,它成就了很多企业,但同时,也摧毁着许多企业。近日,微软和卡巴斯基闹僵,前者在俄罗斯提起诉讼后,又因垄断把微软告到欧盟。原因是,有Windows10用户发现,Windows10对卡巴禁用甚至删除本地文件。虽然微软辩解说是卡巴不兼容才导致WindowsDefender出此下策,但显然,外界依旧支持相对弱势的“卡巴”。现在看来,微软对第三方杀软的不信任继续升级。据外微软内部专家AlexLonescu爆料... 查看全文
对于已经选购或者正打算HTCU11的用户来说,这条新闻并不会产生太大的波澜,但足以让诸多开发者产生兴趣。近日,HTC宣布为欧洲开发者提供HTCU11的官方内核源代码,只是仅限于欧洲地区直接从HTC官网购买以及通过奥地利、法国、德国和英国地区的Vodafone处购买的手机。整个内核源代码容量为405MB,感兴趣的开发者可以通过HTC官方网站来下载这些文件。在ROM定制过程中,内核源代码是至关重要的,这就意味着未来玩家会有大量定制ROM可供刷机。编译于androidauthority... 查看全文
· Linux内核4.11发布发布时间:2017-05-02
LinusTorvalds在内核邮件列表上宣布释出Linux4.11。主要新特性包括:多队列块层支持可插拔IO调度器框架和死线调度器;固态硬盘支持可扩展swapping;新的perfftrace命令;MD/RAID5日志;新的statx()系统调用;支持OpalStorageSpecification驱动;支持SMC-R协议(RFC7609);SipHash哈希函数;新的LZ4压缩实现;以及大量的安全、架构和驱动更新等等。... 查看全文
· 内核维护者拒绝了AMDGPU补丁发布时间:2016-12-24
Linux内核DRM(DirectRenderingManager)维护者DavidAirlie拒绝了AMD开发者递交的AMDGPU补丁。AMD正致力于统一开源驱动和闭源催化剂驱动,AMDGPU作为一个核心组件被开源闭源驱动共同使用,此举被认为有助于简化驱动开发和维护。AMD开发者向DRM子系统递交了AMDGPU的DisplayCore(DC)驱动代码,但遭到了DavidAirlie的拒绝,原因是AMD引入了一个共享驱动代码的抽象层,Airlie认为抽象层没有给内核带来好处... 查看全文
曹子德(TheodoreY.Ts'o)在Google+上透露,问答网站Quora因为不相信TheodoreY.Ts'o是他的真名而封杀了他。他由此得出了两个结论:实名制非常蠢;Quora在封杀用户前根本没有核实。曹子德出生于美国,父母是香港移民,他是著名的内核和自由软件开发者,他曾担任过Linux基金会的CTO,如今在Google工作,在Google上搜索他的名字会返回数以万计的结果。中国如今也在强制推行实名制。... 查看全文
Ubuntu16.10(YakketyYak)已经基于LinuxKernel4.8内核了,此前Ubuntu16.10延续Ubuntu16.04LTS(XenialXerus)的传统,基于长期支持的Linux4.4系列内核,不过Ubuntu16.10的开发者版本此前曾尝试基于Linux4.7内核。Canonical的开发者SteveLangasek说道:“16.10继续秉承Ubuntu自豪传统–在最高质量易用性的Linux发行版本中整合最新和最优秀的开源技术... 查看全文
在日新月异的今天,Linux内核开发项目仍然依赖于古老的电子邮件和邮件列表。稳定内核维护者GregKroah-Hartman指出,电子邮件仍然是管理如内核这样庞大项目的最佳方法。去年,Greg一个人就接受了9,781个补丁,而整个项目平均每小时接受8个补丁。他尝试过替代方法,但在对比之后认为电子邮件仍然是最好的方法。Greg试用过GitHub后认为它比较适合小的项目,对于大的项目并不好:它的pullrequest讨论只向特定人开放,它需要网络访问,而开发者由于种种原因在工作时候未必能访问网络... 查看全文
1.排队机制接收输入TCP报文时,有三个队列:●待处理队列●预排队队列●接收队列接收队列包含了处理过的TCP数据段,也就是说,去除了全部的协议头,正准备将数据复制到用户应用程序。接收队列包含了所有按顺序接收的数据段,在其他两个队列中的TCP数据段则需要进一步处理。TCP报文首先由tcp_v4_rcv()进行处理。该函数要决定是否需要处理报文或者在待处理队列和预排队队列中排队。/*传输层报文处理入口*/inttcp_v4_rcv(structsk_buff*skb){..... 查看全文
在介绍tcp发送函数之前得先介绍很关键的一个结构sk_buff,在linux中,sk_buff结构代表了一个报文:然后见发送函数源码,这里不关注硬件支持的分散-聚集:/*sendmsg系统调用在TCP层的实现*/inttcp_sendmsg(structkiocb*iocb,structsock*sk,structmsghdr*msg,size_tsize){structiovec*iov;structtcp_sock*tp=tcp_sk(sk);structsk_buff*skb... 查看全文
?更多技术干货请戳:听云博客0x01iOS体系架构1.1iOS系统的整体体系架构用户体验(TheUserExperiencelayer):SpringBoard同时支持Spotlight。应用软件开发框架(TheApplicationFrameworkslayer):Cocoa(CocoaTouch)。核心开发框架(TheCoreFrameworks):图形和多媒体一类软件的开发环境,包括核心框架,OpenGL和QuickTime等。Darwin:系统内核核心:包括内核和UnixShell环境... 查看全文
北京时间8月25日消息,据科技网站Computerworld报道,美国普林斯顿大学研究人员希望他们开发的25核开放源代码处理器Piton能派上大用场:他们计划开发配置8000个Piton、内核总数达到20万的计算机。虽然Piton计算机短期内不会开发成功,但它却是Piton的一个潜在用途。Piton设计灵活,具有出色的可伸缩性,确保应用并行运行时大量内核能“步调一致。”普林斯顿大学研究人员在HotChips会议上公布了Piton细节... 查看全文
RT/***运行到此,说明进程是普通进程。现在开始更新普通进程的时间片。*//*首先递减普通进程的时间片计数器。如果用完,继续执行以下操作*/if(!--p->time_slice){/***既然用完了,就将当前进程从活动集合中摘除。*/dequeue_task(p,rq->active);/***当然,当前进程既然已经过期,就必须设置重新调度标志,*以便在中断返回前调用schedule选择另外一个进程来运行。*/set_tsk_need_resched(p)... 查看全文
· Linux2.6内核--进程调度理论发布时间:2016-07-30
从1991年Linux的第1版到后来的2.4内核系列,Linux的调度程序都相当简陋,设计近乎原始,见0.11版内核进程调度。当然它很容易理解,但是它在众多可运行进程或者多处理器的环境下都难以胜任。正因为如此,在Linux2.5开发系列的内核中,调度程序做了大手术。开始采用了一种叫做O(1)调度程序的新调度程序——它是因为其算法的行为而得名的。它解决了先前版本Linux调度程序的许多不足,引入了许多强大的新特性和性能特征。O(1)调度程序虽然对于大服务器的工作负载很理想... 查看全文
AMDZen全新架构的处理器将在2017年发布,陆续登陆桌面、服务器等市场。不同于当前推土机架构的双核合一模块,Zen将回归传统独立核心设计,并且有很特殊的组合方式。此前我们就曾介绍过,Zen处理器的基础模块叫做“Zeppelin”(齐柏林/ZP),今天我们第一次看到了它的基本架构图:可以清楚地看到,每一个Zeppelin模块都有8个物理核心(16个线程),每核心512KB二级缓存,同时每四个核心共享8MB三级缓存,那就是总计4MB二级缓存、16MB三级缓存... 查看全文
LinusTorvalds在Linux内核邮件开发者列表上再次发飙,将部分程序员偏爱的代码注解标点格式称为“脑残”。他强烈反对的注解格式类似:/*Thisisdisgustingdrug-induced*crap,andshoulddie*/和/*Thisisalsoverynasty*andvisuallyunbalanced*/他个人支持的格式类似:/*Thisisacomment*/和/**Thisisalsoacomment... 查看全文
文件系统的文件太多,而且是照搬的MINIX的文件系统,不想继续分析下去了。缓冲区机制和文件系统密切相关,所以这里就简单分析一下缓冲区机制。buffer.c程序用于对高速缓冲区(池)进行操作和管理。高速缓冲区位于内核代码块和主内存区之间,见图9-9中所示。高速缓冲区在块设备与内核其它程序之间起着一个桥梁作用。除了块设备驱动程序以外,内核程序如果需要访问块设备中的数据,就都需要经过高速缓冲区来间接地操作。因为读取磁盘数据很耗费时间,所以缓冲区的作用就是存储读过的磁盘数据,下次有需求直接从缓冲区读取... 查看全文
上一篇说到进程调度归根结底是调用timer_interrupt函数,在system_call.s中:####int32--(int0x20)时钟中断处理程序。中断频率被设置为100Hz(include/linux/sched.h,5),#定时芯片8253/8254是在(kernel/sched.c,406)处初始化的。因此这里jiffies每10毫秒加1。#这段代码将jiffies增1,发送结束中断指令给8259控制器,然后用当前特权级作为参数调用#C函数do_timer(longCPL)... 查看全文
首先看main.c里的初始化函数main函数里面有个函数是对进程调度的初始化,sched_init()函数,次函数在sched.c中实现://调度程序的初始化子程序。voidsched_init(void){inti;structdesc_struct*p;//描述符表结构指针。if(sizeof(structsigaction)!=16)//sigaction是存放有关信号状态的结构。panic("StructsigactionMUSTbe16bytes");//设置初始任务(任务0... 查看全文
【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5570691.html】Linux内核从启动到初始化也看了好些个源码文件了,这次看到kernel文件夹下的system_call.s,这个文件主要就是系统调用的过程。但说到系统调用,不只是这一个文件这么简单,里面牵扯到的内容太多,这里就做个笔记记录一下从建立中断到最终调用系统调用的完整机制。假设就从write这个函数作为系统调用来解释。系统调用的本质就是用户进程需要访问内核级别的代码... 查看全文
2000年到来前,“千年虫”bug曾经引发了很大的恐慌,甚至不少影视剧中都有夸大的描写。不过在紧急磋商和“打补丁”之后,软硬件“无法正确处理2000年问题”的千年虫危机算是平稳度过了。但……事实真的如此吗?对于Unix类操作系统来说,它们其实还面临着同样的问题,那就是——2038年危机!(又称“Unix千年虫”)该操作系统底层的日期数值... 查看全文