In theory, Johnston and Johnson are different names, because Johnston
was "John's town" rather than "son of John", but in fact the names
were used interchangeably, certainly in County Londonderry where I've
studied them.

Johnston in the North of Ireland is usually a surname associated with
people who came in the 1600s from Scotland or England. Occasionally
names like McShane were "translated" as Johnson or Johnston.

There are a lot of published works about the origins of the Johnston
surname.

You will find some useful information and links at the Clan Johnston
site