百面嵌入式专栏(面试题)Linux驱动题

嵌入式Linux驱动题

linux内核里面,内存申请有哪几个函数?

kmalloc() __get_free_page() mempool_create()

spinlock自旋锁是如何实现的?

自旋锁在同一时刻只能被最多一个内核任务持有,所以一个时刻只有一个线程允许存在于临界区中。这点可以应用在多处理机器、或运行在单处理器上的抢占式内核中需要的锁定服务。

请简单介绍一下Linux中的信号量。

Linux中的信号量是一种睡眠锁。如果有一个任务试图获得一个已被持有的信号量时,信号量会将其推入等待队列,然后让其睡眠。这时处理器获得自由去执行其它代码。当持有信号量的进程将信号量释放后,在等待队列中的一个任务将被唤醒,从而便可以获得这个信号量。

一个32位的机器,该机器的指针是多少位?

指针是多少位只要看地址总线的位数就行了。80386以后的机子都是32的数据总线。所以指针的位数就是4个字节了。

char* s="AAA";printf("%s",s); s[0]='B'; printf("%s",s);有什么错?

“AAA”是字符串常量。s是指针,指向这个字符串常量,所以声明s的时候就有问题。 cosnt char*s=”AAA”; 然后又因为是常量,所以对是s[0]的赋值操作是不合法的。

下面程序结果是?

main()
{ 
inta[5]={1,2,3,4,5};   
int*ptr=(int*)(&a+1);   
printf("%d,%d",*(a+1),*(ptr-1));
}


结果为:2

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

Linux操作系统笔试面试真题 文章被收录于专栏

首先我们都知道,操作系统是所有软件的基础,所有上层软件都要依赖于操作系统提供的各种机制,才能运行。 而我在工作中也认识了很多技术大牛,根据我的观察,他们的基本功往往十分扎实,这对他们的架构视野、技术成长都十分有帮助。 可以说,操作系统作为计算机的灵魂,眼前的工作、日常的生活,甚至这个行业未来的“诗与远方”都离不开它。

全部评论

相关推荐

神哥不得了:神哥来啦~自我评价和校园经历的话可以直接删了,从大厂暑期的话应该没有什么太多问题,应该是能拿到很多大厂面试机会的,就是在面试的时候表示的好一点就行,可以在面试前先把高频top 50的八股多巩固几遍,千万不要看那些假高频八股,这两个项目的话问题不是很大,应该能够帮你找到大厂实习的,算法的话一定要刷起来,因为大厂有些还是比较看重算法的
点赞 评论 收藏
分享
评论
2
7
分享

创作者周榜

更多
牛客网
牛客企业服务