A. 用c语言编写操作系统
C语言只是学习编程语言的基础 现在已经基本不怎么用了 现在的应用软件大多都是用JAVA VC++编出来的 而且也不可能是一个人完成的任务。对于操作系统,是汇编语言加DOS的混合物 更是非常巨大的工程 微软投入一个操作系统的工程要花费几年、几百人、几个亿的投入。。。。如果你真的想学 就去学一下计算机原理 接口技术 还有汇编语言 再掌握点DOS 。。。学有所成之后 可以去网上找一些LINUX系统自己改一改 到时候心情会无比的爽。。。 祝你成功
B. 操作系统课程设计,C语言写的文件管理系统
操作系统课程设计,C语言写的文件管理系统 、。要求有没,根据要求可以做的
C. c语言课程设计
很想说两句,
你看知道教育一栏,
很多人都问各种各样的参考资料是吧,
其实,
这类问题很多都是没有人回答的,
或者根本就找不到提问者想要的答案,
因为现在各种各样的资料简直太多了,
你提问,
在网络知道问,
是面向全国,
其实别人查的可能还不如你自己查的,
别人很可能也就是在网络,
输入要查的资料名字,
查不到,
或者查到一点就粘上去了,
远远不是你想要的那种,
所以,
觉得问这类问题,
就有些浪费分数了。
当然,
这只是我个人的一些看法,
还是希望你能在知道找到你想要的。
这是我复制别人的,我觉得很有道理.
D. 求操作系统课设c语言编写的
下面的程序假设你的当前目录有一个helloworld程序, 这个你会写吧? :)
#include <stdio.h>
#include <unistd.h>
#include <sys/wait.h>
int main()
{
int pid;
int status;
pid = fork();
if (pid == 0) {
/* child process */
execve("./helloworld", NULL, NULL);
} else if (pid < 0) {
/* failed to fork, print error message */
printf("fork error, errno = %d\n", errno);
} else {
waitpid(pid,&status,0)
}
return 0;
}
E. c语言怎样编写操作系统
用c语言是可以编操作系统的,像unix就是用c语言编写出来的,不过没有对c语言深入研究的人是编不出来的
如果想编个软件的话,建议学面向对象的编程语言,比如c#,java
这种语言比较接近自然语言,写程序比较容易,学起来也比较简单
F. 操作系统课程设计,用C#实现内存页面的置换。实现算法间比较
页面置换算法
一.题目要求:
通过实现页面置换算法的FIFO和LRU两种算法,理解进程运行时系统是怎样选择换出页面的,对于两种不同的算法各自的优缺点是哪些。
要求设计主界面以灵活选择某算法,且以下算法都要实现 1) 最佳置换算法(OPT):将以后永不使用的或许是在最长(未来)时间内不再被访问的页面换出。
2) 先进先出算法(FIFO):淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。
3) 最近最久未使用算法(LRU):淘汰最近最久未被使用的页面。 4) 最不经常使用算法(LFU) 二.实验目的:
1、用C语言编写OPT、FIFO、LRU,LFU四种置换算法。 2、熟悉内存分页管理策略。 3、了解页面置换的算法。 4、掌握一般常用的调度算法。 5、根据方案使算法得以模拟实现。 6、锻炼知识的运用能力和实践能力。 三、设计要求
1、编写算法,实现页面置换算法FIFO、LRU;
2、针对内存地址引用串,运行页面置换算法进行页面置换; 3、算法所需的各种参数由输入产生(手工输入或者随机数产生); 4、输出内存驻留的页面集合,页错误次数以及页错误率;
四.相关知识:
1.虚拟存储器的引入:
局部性原理:程序在执行时在一较短时间内仅限于某个部分;相应的,它所访问的存储空间也局限于某个区域,它主要表现在以下两个方面:时间局限性和空间局限性。
2.虚拟存储器的定义:
虚拟存储器是只具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。
3.虚拟存储器的实现方式:
分页请求系统,它是在分页系统的基础上,增加了请求调页功能、页面置换功能所形成的页面形式虚拟存储系统。
请求分段系统,它是在分段系统的基础上,增加了请求调段及分段置换功能后,所形成的段式虚拟存储系统。
4.页面分配:
平均分配算法,是将系统中所有可供分配的物理块,平均分配给各个进程。 按比例分配算法,根据进程的大小按比例分配物理块。
考虑优先的分配算法,把内存中可供分配的所有物理块分成两部分:一部分按比例地分配给各进程;另一部分则根据个进程的优先权,适当的增加其相应份额后,分配给各进程。
5.页面置换算法:
常用的页面置换算法有OPT、FIFO、LRU、Clock、LFU、PBA等。 五、设计说明
1、采用数组页面的页号
2、FIFO算法,选择在内存中驻留时间最久的页面予以淘汰;
分配n个物理块给进程,运行时先把前n个不同页面一起装入内存,然后再从后面逐一比较,输出页面及页错误数和页错误率。
3、LRU算法,根据页面调入内存后的使用情况进行决策;
同样分配n个物理块给进程,前n个不同页面一起装入内存,后面步骤与前一算法类似。
选择置换算法,先输入所有页面号,为系统分配物理块,依次进行置换: 六.设计思想:
OPT基本思想:
是用一维数组page[pSIZE]存储页面号序列,memery[mSIZE]是存储装入物理块中的页面。数组next[mSIZE]记录物理块中对应页面的最后访问时间。每当发生缺页时,就从物理块中找出最后访问时间最大的页面,调出该页,换入所缺的页面。
FIFO基本思想:
是用队列存储内存中的页面,队列的特点是先进先出,与该算法是一致的,所以每当发生缺页时,就从队头删除一页,而从队尾加入缺页。或者借助辅助数组time[mSIZE]记录物理块中对应页面的进入时间,每次需要置换时换出进入时间最小的页面。
LRU基本思想:
是用一维数组page[pSIZE]存储页面号序列,memery[mSIZE]是存储装入物理块中的页面。数组flag[10]标记页面的访问时间。每当使用页面时,刷新访问时间。发生缺页时,就从物理块中页面标记最小的一页,调出该页,换入所缺的页面。 七.流程图:
如下页所示
六.运行结果: 1. 按任意键进行初始化:
2. 载入数据:
3. 进入置换算法选择界面:
4.运算中延迟操作:
5.三种算法演示结果:
G. 操作系统进程创建设计(用C语言完成)
http://www.ddvip.net/program/c/index2/26.htm
Linux下C语言编程--进程的创建
H. 操作系统 用c语言编程
预知详情请仔细研究linux内核源码,整个linux操作系统都是C语言实现的,一定可以满足你的要求。
I. 如何用c语言编写简单的操作系统
C语言当然是可以写操作系统的,但是操作系统的编写一般都不仅仅只是用C语言编写的。
写操作系统需要编程语言提供以下几个特征:
1、跨平台,不能是只在某个平台下编译(VB就不行);
2、必须是编译型语言(PHP就不行),或者有一个非常高效的解释器;
3、必须有方便的操作硬件的功能,容易嵌入汇编(Java就不行);
4、兼容性要好,最好不同编译器编译的符号要基本相同,容易链接(C++不行,如果放弃Class的话C++基本可以);
5、编译器本身最好是由该语言自己完成的(大部分语言的编译器都是用C/C++写的);
6、开发者可以很方便的扩展、改造、或者使用第三方的运行库(大部分语言的库都无法修改);
7、开发者众多(小众语言就不行);
8、该语言开发操作系统的资料要足够完善。
所以总结下来,C语言是首选。