Quote from some guy on the internet:
In essence the word bushi is used to denote a "warrior" who may or may not be a samurai. It's most commonly seen in the word "Bushido". The words can somewhat be used interchangeably after the 12th Century, but there is some distinction. A warrior who is not a samurai can be called a "bushi".
The word itself meaning "To stop spear" (Bu, being composed of two different Kanji to make one word.) and Shi being used to refer to someone who performs some function, or has ability in one field.
So when you look at it, Bu is used to mean "to stop/oppose violence and bring peace". Thus the whole word can be read as "Someone who has the ability to bring peace".
Thus someone who one would call a "warrior monk", could be called a "bushi", though he is not a "samurai".
Thus it's similar in regards to knights in how a knight is a man-at-arms, but a man-at-arms is not necessarily a knight.