Skip to main content


Some quick hacksโ€‹

userContent & userChromeโ€‹

Make Browser Tab Bar More Compactโ€‹

  • about:config
  • browser.uidensity: 0 is the default, 1 is compact, 2 is touch (sparser)

Improving Firefox responsiveness on macOS - Mozilla Hacks - the Web developer blogโ€‹

  • This improvement was achieved via a slight change in how locking is implemented within Firefox's memory allocator.
  • Putting a thread to sleep has significant performance implications and, thus, is not always the best option.
  • it might be advantageous to let a thread spin briefly if the lock it's trying to acquire is only held briefly.
  • It can result in higher performance and lower power consumption, as spinning costs less than sleeping.
  • As you might have guessed by now, OSSpinLock offered excellent performance on a lightly loaded system but behaved poorly as the load ramped up.
  • This problem with OSSpinLock was known within Apple hence its deprecation
  • Enter osunfairlock, Apple's official replacement for OSSpinLock. If you still use OSSpinLock, you'll get explicit warnings to use it instead
  • So I used it, but the results were terrible. Performance in some of our automated tests degraded by as much as 30%.
  • As it turns out, osunfairlock doesn't spin on contention; it makes the calling thread sleep right away when it finds a contended lock
  • The function is osunfairlockwithoptions() and the options I used are OSUNFAIRLOCKDATASYNCHRONIZATION and OSUNFAIRLOCKADAPTIVESPIN
  • The latter asks the kernel to use kernel-space adaptive spinning, and the former prevents it from spawning additional threads in the thread pools used by Apple's libraries
  • Did they work? Yes! Performance on lightly loaded systems was about the same as OSSpinLock, but on loaded ones, they provided massively better responsiveness
  • I initially fell back to OSSpinLock as an intermediate solution on older systems. Later I managed to get rid of it for good by relying on osunfairlock plus manual spinning in user space

Links to This Note

The One and Only WebExtension

- A Safari and Firefox WebExtension|extension that disguises itself as Chrome and runs all Chrome Extensions.

Snowpack์œผ๋กœ WASM ์‹œ์ž‘ํ•˜๊ธฐ

- ๋‹ค๋งŒ Safari์™€ Firefox์—์„œ๋Š” ์ž‘๋™๋˜์ง€ ์•Š์•˜๋‹ค. "SharedArrayBuffer is not defined"์ด๋ผ๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.

Safari is the new Internet Explorer

... best. Blink\-based Web Browser|browsers update every six weeks (soon every four), Firefox releases every four weeks, and Brave releases every three. This means ...

Porting a Chrome Extension to Firefox Add-on

While Chrome and Firefox are two very different Web Browser|browsers, Chrome WebExtension|Extension and Firefox Add-on ...

Mental Simulation of Firefox and Signal as a Super App

... instantly absorbable mass of users. The main target of Signal and Firefox are people who are flexible to switch platforms if they satisfy ...

Love Firefox

i love firefox

Letter to Mr. Gustav Ekerot on 2023-02-24

... have a question about your WebExtension|extension, tabExtend. I recently switched to Firefox and noticed the WebExtension|extension is unavailable on the Firefox Add-ons Store. ...

Apple Newsroom ์„œ์ฒด ๋”ฐ๋ผํ•˜๊ธฐ

... ์‚ฐ๋Œ๊ณ ๋”• ๋„ค์˜ค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. Safari์™€ Chrome์€ `-apple-system`๋งŒ ์žˆ์–ด๋„ ์‚ฐ๋Œ๊ณ ๋”• ๋„ค์˜ค๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐ˜๋ฉด Firefox ๊ณ„์—ด์€ ๊ทธ๋Ÿฌ์ง€ ๋ชปํ•œ๋‹ค. ๋•Œ๋ฌธ์— Firefox์—์„œ ์•Œ๋งž์€ ํ•œ๊ธ€ ์„œ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก `Apple SD ...


- Firefox


... responsiveness on macOS - Mozilla Hacks - the Web developer blog Firefox