реверс ssh туннель должен сделать то, что Вы хотите.
более подробная информация: http://www.howtoforge.com/reverse-ssh-tunneling
Править: Этот ответ является неправильным. Хотя все еще возможная причина для oom-уничтожителя, который будет вызван, это не причина в этом конкретном случае.
Похоже, что это происходит из-за фрагментации памяти.
От вывода Вы, если, самый высокий порядок непрерывный блок памяти Вы имеете, являетесь блоком 32 КБ в normal
зона. Это означает, что, если что-нибудь пытается выделить блок памяти, больше, чем 32 КБ, она перестанет работать.
Обычно это не обязательно означает, что oom-уничтожитель будет вызван (иначе, приложение могло запросить огромный блок памяти и таким образом инициировать OOM), однако это - ядро, которое пытается выделить память, и таким образом, это немного более серьезно. В этом точном случае похоже, что выделение было инициировано путем запуска нового процесса, и ядро пыталось выделить память для того процесса.
Ядро автоматически пытается уплотнить (дефрагментируют) память и получают большие блоки непрерывной доступной памяти, но некоторые страницы не могут быть перемещены. И чем дольше система работает, тем более рассеянными эти 'неперемещаемые' страницы становятся.
Так в основном, нет очень, можно сделать. Действительно единственная опция состоит в том, чтобы избавиться от процессов, таким образом, те неперемещаемые страницы могут быть освобождены.
DMA: 2358*4kB 912*8kB 25*16kB 0*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB 0*8192kB 0*16384kB = 17128kB
Normal: 4266*4kB 657*8kB 32*16kB 1*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB 0*8192kB 0*16384kB = 22864kB
Запись как 32*16kb
средства там составляют 32 16 КБ непрерывные блоки свободной памяти.
Мы имеем дело с неизвестным приложением на неизвестной встроенной платформе. Очевидно, если бы у нас было больше информации о тех двух точках, то у нас мог бы быть лучший шанс ответа на вопрос abc. Также было бы полезно знать точно, сколько памяти сценарий пытается получить.
Я думаю, что Patrick корректен - существует недостаточный непрерывный DMA, чтобы смочь позволить процессу работать. Это могло быть для следующих возможных причин:
и т.д...
Я полагаю, что при сокращении фрагментации памяти DMA уничтожитель OOM не перешел бы. Самый легкий способ быстро протестировать, который должен перезапустить встроенное устройство и видеть, называют ли OOM-уничтожителя все еще.
Я теперь продолжу наталкиваться вокруг Интернета, ища легкий вес, встроенный дружественный способ дефрагментировать память, не сбрасывая их устройство.
Эта ссылка может представлять интерес: http://bl0rg.krunch.be/oom-frag.html