На такой вопрос нет общего ответа, механизмы, реализованные в разных браузерах, не имеют ничего общего.
Firefox : нативную библиотеку можно вызвать через js-ctypes . Этот механизм должен быть более легким, чем связь с плагином NPAPI. Что еще более важно, у вас нет накладных расходов на межпроцессное взаимодействие (более новые версии Firefox запускают плагины в отдельных процессах).
Chrome : AFAIK единственный способ получить доступ к функциональности операционной системы (такой как запись файлов в произвольное место на диске) через NPAPI, Chrome не позволяет расширениям использовать системные библиотеки. Однако, если вы используете собственную библиотеку только для ускорения выполнения и не возражаете против запуска этого кода в песочнице - собственный клиент может работать для вас. Из-за изолированного выполнения он, вероятно, будет медленнее, чем плагин NPAPI, но не будет вызывать страшных предупреждений при установке вашего расширения.
Safari : Насколько я знаю, Safari не позволяет использовать нативные библиотеки, даже через плагины NPAPI .
Internet Explorer : Начиная с MSIE 9.0, Internet Explorer до сих пор не имеет ничего похожего на расширения на основе JavaScript.