Erlang вызывает ошибки страницы - PullRequest
0 голосов
/ 10 августа 2011

Когда я запускаю сценарий, описанный здесь с моим пользователем, все хорошо:

lorenzo@enzo:~/erlang/pei$ time erl -noshell -smp enabled -S 4 -s fib4 main 10000000

real    0m54.952s
user    1m16.090s
sys 0m0.070s

Когда я запускаю его от имени root, он падает:

lorenzo@enzo:~/erlang/pei$ sudo time erl -noshell -smp enabled -S 4 -s fib4 main 10000000
[sudo] password for lorenzo: 
74.68user 0.04system 0:53.56elapsed 139%CPU (0avgtext+0avgdata 66064maxresident)k
0inputs+0outputs (0major+8306minor)pagefaults 0swaps

Ошибка воспроизводимая.

Мои вопросы:

  • Может кто-нибудь попытаться объяснить мне, что там происходит?

  • Это проблема с средой выполнения erlang или с моей ОС?

  • Может кто-нибудь воспроизвести эту ошибку?

Я использую erlang 5.7.4 на Ubuntu Natty с ядром

Linux enzo 2.6.38-10-generic #46-Ubuntu SMP Tue Jun 28 15:07:17 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

на Phenom X4.

Ответы [ 2 ]

6 голосов
/ 10 августа 2011

Почему вы думаете, что он разбился? time просто показывает больше информации при запуске от имени пользователя root. Ошибка страницы - это не ошибка, а способ виртуальная память .

3 голосов
/ 12 августа 2011

Разница между этими двумя прогонами заключается в том, что в первом прогоне вы запускаете встроенную оболочку time, но во втором прогоне вы запускаете все, что sudo находит в пути, а это /usr/bin/time. Эти два инструмента имеют разные форматы вывода.

$ type time
time is a shell keyword
$ time echo


real    0m0.000s
user    0m0.000s
sys     0m0.000s
$ type /usr/bin/time
/usr/bin/time is /usr/bin/time
$ /usr/bin/time echo

0.01user 0.00system 0:00.00elapsed 1000%CPU (0avgtext+0avgdata 2784maxresident)k
0inputs+0outputs (0major+217minor)pagefaults 0swaps
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...