如何使用linsched(Linux调度程序模拟器)?需要一个关于如何运行和检查输出的示例。一直在搜索教程,还浏览了README文件。Din不知道如何运行和检查输出。尝试运行basic_tests脚本(作为./basic_tests-trivial_bal UNIPROCESSOR),但它没有显示任何内容。。提前谢谢。。
你不可能是唯一一个有这个问题的人!运行一个小示例并非易事。
对于您想要输出的每个测试(除了编写测试的人之外,每个人都想要输出),在测试结束时添加linsched_print_task_stats();
并重新编译。
如果您想添加自己的测试,例如中的清单4http://www.ibm.com/developerworks/linux/library/l-linux-scheduler-simulator/这样做:
- 将清单4中的代码复制到basic_test.c的底部
- 将变量CCD_ 2初始化为零或某个其它良好值
- 将
topo_db
更改为linsched_topo_db
- 将函数名称更改为
test_new_test
- 将
TEST(new_test),
添加到struct test tests[]
,但不要在底部,因为打印时最后一个用作哨兵 - 在文件
void test_new_test(int argc, char **argv);
的顶部添加函数作为正向声明 - 编译并运行:
/basic_tests list
trivial_bal
basic_bal1
basic_bal2
bal1
new_test
- 试试你的新命令。
./basic_tests new_test uniprocessor
Task id = 3 (1), exec_time = 7116000000, run_delay = 52092000000, Task id = 4 (2), exec_time = 7116000000, run_delay = 52093000000, Task id = 5 (3), exec_time = 7116000000, run_delay = 52094000000, Task id = 6 (4), exec_time = 7115000000, run_delay = 52095000000, Task id = 7 (5), exec_time = 7115000000, run_delay = 52091000000, Task id = 8 (6), exec_time = 3430000000, run_delay = 25771000000, Task id = 9 (7), exec_time = 3430000000, run_delay = 25772000000, Task id = 10 (8), exec_time = 3430000000, run_delay = 25773000000, Task id = 11 (9), exec_time = 3430000000, run_delay = 25774000000, Task id = 12 (10), exec_time = 3430000000, run_delay = 25775000000, Task id = 13 (11), exec_time = 7272000000, run_delay = 52725000000, Total exec_time = 60000000000
我上面提到的链接很好地解释了如何解释这些数字。祝日程安排顺利!