Run first app from ramdisk!
This commit is contained in:
@@ -45,16 +45,16 @@ bool bm_test (struct bm* bm, size_t k) {
|
||||
* Set a range of bits in a bitmap. if starting bit is out of range, we fail.
|
||||
*/
|
||||
bool bm_set_region (struct bm* bm, size_t k, size_t m) {
|
||||
if ((k >= m) || (k >= bm->nbits) || (k + m >= bm->nbits))
|
||||
if (((k + m) > bm->nbits) || (k + m) < k)
|
||||
return false;
|
||||
|
||||
for (size_t i = k; i < m; i++) {
|
||||
for (size_t i = k; i < (k + m); i++) {
|
||||
bool taken = bm_test (bm, i);
|
||||
if (taken)
|
||||
return false;
|
||||
}
|
||||
|
||||
for (size_t i = k; i < m; i++)
|
||||
for (size_t i = k; i < (k + m); i++)
|
||||
bm_set (bm, i);
|
||||
|
||||
return true;
|
||||
@@ -64,10 +64,10 @@ bool bm_set_region (struct bm* bm, size_t k, size_t m) {
|
||||
* Clear a range of bits in a bitmap. starting bit must be in range.
|
||||
*/
|
||||
void bm_clear_region (struct bm* bm, size_t k, size_t m) {
|
||||
if ((k >= m) || (k >= bm->nbits) || (k + m >= bm->nbits))
|
||||
if (((k + m) > bm->nbits) || (k + m) < k)
|
||||
return;
|
||||
|
||||
for (size_t i = k; i < m; i++)
|
||||
for (size_t i = k; i < (k + m); i++)
|
||||
bm_clear (bm, i);
|
||||
}
|
||||
|
||||
@@ -78,10 +78,10 @@ void bm_clear_region (struct bm* bm, size_t k, size_t m) {
|
||||
* useful for implementing the physical memory manager algorithm.
|
||||
*/
|
||||
bool bm_test_region (struct bm* bm, size_t k, size_t m) {
|
||||
if ((k >= m) || (k >= bm->nbits) || (k + m >= bm->nbits))
|
||||
if (((k + m) > bm->nbits) || (k + m) < k)
|
||||
return true;
|
||||
|
||||
for (size_t i = k; i < m; i++) {
|
||||
for (size_t i = k; i < (k + m); i++) {
|
||||
bool test = bm_test (bm, i);
|
||||
if (test)
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user