03-07-2013
Paging i/o being an exception -- favoring that can create thrashing. I accidentally found I could severely slow a system using mmap() to map a file and then read the data, for a long list of files in succession (an mmap() based fgrep). Memory was full of old mapped page images, and everyone else was on swap. There should be some limit on how many pages of ram one pid can have 'originated', something like 80%, so you can use ram for speed, but not so you roll everyon else out, maybe invoked when too may processes are awaiting page in. Many OS now use mmap() for input buffering of data flat files -- no buffer needed.
For a system to be very responsive to priority, you need prioritized queues for i/o that reach out into the peripherals and networks, and that raises a lot of issues off-host. With all the buffering, NFS, remote printers, SANs and such, things tend to get democratic and ballistic early on in the flow. Getting the CPU first is not enough to keep the low guys from filling the queue with requests.
Emotionally, people think a system runs faster when everyone has more priority!
LOL!
9 More Discussions You Might Find Interesting
1. Linux
Hello!
How do make the limits.conf parameters work for a normal user. Ive changed
both the hard and soft parameter for the specific user. It used to be 4096 and i changed it to 16384. But when i use the ulimit -n, all i got is permissen denied.
Witch i can understand. But my question is? how... (1 Reply)
Discussion started by: dozy
1 Replies
2. UNIX for Dummies Questions & Answers
I have line in this file that says:
username - maxlogins 1
and user can login 2 times instad of one.
does enybody know why? and how can I fix that? (2 Replies)
Discussion started by: shooroop
2 Replies
3. HP-UX
Hi folks,
Hope you can help me. I have a process that is currently running at nice 20 and need it to run faster (-10?). How do I change the process using nice? I have the process number and thought it would be along the lines of;
nice -10 process_id
but it doesn't seem to like that. (1 Reply)
Discussion started by: gshuttleworth
1 Replies
4. UNIX for Advanced & Expert Users
HI,
To restrict the number of files and number of processes used the user we use the following configuration in the file /etc/security/limits.conf.
oracle soft nofile 65572
oracle hard nofile 65572
oracle soft noproc 16384
oracle soft noproc 16384
My question is what do the 'soft' and... (1 Reply)
Discussion started by: praveen_b744
1 Replies
5. Solaris
Hi,
How can we set per user core file size, etc in solaris, i.e. I want solaris counterpart/equivalent of linux /etc/security/limits.conf.
TIA (0 Replies)
Discussion started by: slash_blog
0 Replies
6. Red Hat
Hello all,
I'm running Oracle 10.2 on RHEL5. Current value of ulimit -n is set to a low value of 1024. I need to increase it to 65536 using the following procedure.
cat >> /etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard... (3 Replies)
Discussion started by: luft
3 Replies
7. Red Hat
i want to set limits in /etc/security/limits.conf.My os is rhel 5.2.
It was giving continuous messages in in /var/log/secure like :
continuously.
I have changed values of priority and nice to "0" from unlimited and messages are not comming. But i want to know what is the ideal/maximum... (3 Replies)
Discussion started by: pankajd
3 Replies
8. Shell Programming and Scripting
Hello,
I am just starting with shell scripting, as everyone will soon see from my question. What I'm trying to do is call the Nice command to set the script process priority from /bin/ksh. The difference is I'm running it not directly through the shell, but through Bigfix (very similar to... (3 Replies)
Discussion started by: solly119
3 Replies
9. UNIX for Dummies Questions & Answers
OS version : RHEL 6.5
Below is an excerpt from /etc/security/limits.conf file for OS User named appusr in our server
appusr soft nproc 2047
appusr hard nproc 16384
What will happen if appusr has already spawned 2047 processes and wants to spawn 2048th process ?
I just want to know... (3 Replies)
Discussion started by: kraljic
3 Replies
LEARN ABOUT XFREE86
mmap2
MMAP2(2) Linux Programmer's Manual MMAP2(2)
NAME
mmap2 - map files or devices into memory
SYNOPSIS
#include <sys/mman.h>
void *mmap2(void *addr, size_t length, int prot,
int flags, int fd, off_t pgoffset);
DESCRIPTION
This is probably not the system call that you are interested in; instead, see mmap(2), which describes the glibc wrapper function that
invokes this system call.
The mmap2() system call provides the same interface as mmap(2), except that the final argument specifies the offset into the file in
4096-byte units (instead of bytes, as is done by mmap(2)). This enables applications that use a 32-bit off_t to map large files (up to
2^44 bytes).
RETURN VALUE
On success, mmap2() returns a pointer to the mapped area. On error, -1 is returned and errno is set appropriately.
ERRORS
EFAULT Problem with getting the data from user space.
EINVAL (Various platforms where the page size is not 4096 bytes.) offset * 4096 is not a multiple of the system page size.
mmap2() can also return any of the errors described in mmap(2).
VERSIONS
mmap2() is available since Linux 2.3.31.
CONFORMING TO
This system call is Linux-specific.
NOTES
On architectures where this system call is present, the glibc mmap() wrapper function invokes this system call rather than the mmap(2) sys-
tem call.
This system call does not exist on x86-64.
On ia64, the unit for offset is actually the system page size, rather than 4096 bytes.
SEE ALSO
getpagesize(2), mmap(2), mremap(2), msync(2), shm_open(3)
COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the
latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.
Linux 2017-09-15 MMAP2(2)