Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Musl
提交
4b667751
T
Third Party Musl
项目概览
OpenHarmony
/
Third Party Musl
9 个月 前同步成功
通知
37
Star
125
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Musl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
4b667751
编写于
12月 07, 2021
作者:
些猜
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
扩展了与进程策略设置相关的函数
Signed-off-by:
caifuzhou
<
504631861@qq.com
>
上级
47812782
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
65 addition
and
14 deletion
+65
-14
libc-test/src/functional/sched_setscheduler.c
libc-test/src/functional/sched_setscheduler.c
+15
-9
musl_src.gni
musl_src.gni
+3
-0
porting/linux/user/src/sched/sched_getparam.c
porting/linux/user/src/sched/sched_getparam.c
+20
-0
porting/linux/user/src/sched/sched_getscheduler.c
porting/linux/user/src/sched/sched_getscheduler.c
+10
-0
porting/linux/user/src/sched/sched_setparam.c
porting/linux/user/src/sched/sched_setparam.c
+16
-0
porting/linux/user/src/sched/sched_setscheduler.c
porting/linux/user/src/sched/sched_setscheduler.c
+1
-5
未找到文件。
libc-test/src/functional/sched_setscheduler.c
浏览文件 @
4b667751
...
...
@@ -9,18 +9,24 @@
int
main
(
int
argc
,
char
*
argv
[])
{
struct
sched_param
param
;
int
maxpri
;
maxpri
=
sched_get_priority_max
(
SCHED_FIFO
);
if
(
maxpri
==
-
1
)
int
maxpri
,
minpri
;
int
sched
;
pid_t
pid
;
sched
=
SCHED_FIFO
;
pid
=
getpid
();
maxpri
=
sched_get_priority_max
(
sched
);
minpri
=
sched_get_priority_min
(
sched
);
if
(
maxpri
==
-
1
||
minpri
==
-
1
)
{
perror
(
"get priority failed"
);
perror
(
"get
maxpriority or min
priority failed"
);
return
-
1
;
}
param
.
sched_priority
=
maxpri
;
TEST
(
sched_setscheduler
(
getpid
(),
SCHED_FIFO
,
&
param
));
TEST
(
!
(
sched_getscheduler
(
getpid
())
==
SCHED_FIFO
));
param
.
sched_priority
=
23
;
//取值范围:minpri~maxpri
TEST
(
sched_setscheduler
(
pid
,
sched
,
&
param
));
TEST
(
!
(
sched_getscheduler
(
pid
)
==
sched
));
TEST
(
sched_getparam
(
pid
,
&
param
));
return
0
;
}
musl_src.gni
浏览文件 @
4b667751
...
...
@@ -1838,7 +1838,10 @@ musl_src_porting_file = [
"src/multibyte/wcsnrtombs.c",
"src/network/inet_legacy.c",
"src/passwd/getspnam_r.c",
"src/sched/sched_setparam.c",
"src/sched/sched_getparam.c",
"src/sched/sched_setscheduler.c",
"src/sched/sched_getscheduler.c",
"src/thread/arm/clone.s",
"src/thread/arm/syscall_cp.s",
]
porting/linux/user/src/sched/sched_getparam.c
0 → 100644
浏览文件 @
4b667751
#include <sched.h>
#include <errno.h>
#include "syscall.h"
#include <string.h>
int
sched_getparam
(
pid_t
pid
,
struct
sched_param
*
param
)
{
int
r
;
if
(
!
param
)
{
r
=
-
EINVAL
;
goto
exit
;
}
memset
(
param
,
0
,
sizeof
(
struct
sched_param
));
r
=
__syscall
(
SYS_sched_getparam
,
pid
,
param
);
if
(
r
>=
0
)
{
r
=
0
;
}
exit:
return
__syscall_ret
(
r
);
}
porting/linux/user/src/sched/sched_getscheduler.c
0 → 100644
浏览文件 @
4b667751
#include <sched.h>
#include <errno.h>
#include <string.h>
#include "syscall.h"
int
sched_getscheduler
(
pid_t
pid
)
{
int
r
=
__syscall
(
SYS_sched_getscheduler
,
pid
);
return
__syscall_ret
(
r
);
}
\ No newline at end of file
porting/linux/user/src/sched/sched_setparam.c
0 → 100644
浏览文件 @
4b667751
#include <sched.h>
#include <errno.h>
#include <string.h>
#include "syscall.h"
int
sched_setparam
(
pid_t
pid
,
const
struct
sched_param
*
param
)
{
int
r
;
if
(
!
param
)
{
r
=
-
EINVAL
;
goto
exit
;
}
r
=
__syscall
(
SYS_sched_setparam
,
pid
,
param
);
exit:
return
__syscall_ret
(
r
);
}
\ No newline at end of file
porting/linux/user/src/sched/sched_setscheduler.c
浏览文件 @
4b667751
...
...
@@ -10,11 +10,7 @@ int sched_setscheduler(pid_t pid, int sched, const struct sched_param *param)
r
=
-
EINVAL
;
goto
exit
;
}
r
=
__syscall
(
SYS_sched_setscheduler
,
pid
,
sched
,
param
->
sched_priority
);
;
r
=
__syscall
(
SYS_sched_setscheduler
,
pid
,
sched
,
param
);
exit:
return
__syscall_ret
(
r
);
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录