1
0
mirror of https://github.com/0xAX/linux-insides.git synced 2024-12-22 14:48:08 +00:00
Commit Graph

322 Commits

Author SHA1 Message Date
Aaron Hill
17da4af718
Make all Github links reference a specific commit
Closes #480
2017-07-30 15:56:26 -04:00
Tao LI
cda7e02da7 Typo fixes on booting part1 2017-07-17 11:40:31 +08:00
Alexander Kuleshov
0ce272fc6a fix #14 issue 2017-07-16 23:10:48 +06:00
Alexander Kuleshov
6ed0589b83 many fixes in boot part 1
including links fixes
2017-07-14 18:44:35 +06:00
Alexander Kuleshov
83cc5501b5 update description 2017-07-14 18:00:49 +06:00
Kavindra Nikhurpa
ece5ad6f25 fix typos 2017-06-28 01:27:15 +05:30
Alexander Kuleshov
4521637d9c Merge branch 'master' of github.com:0xAX/linux-insides 2017-06-09 00:26:34 +06:00
Alexander Kuleshov
af4d2701fa mark some constants 2017-06-09 00:25:25 +06:00
Tomas Juocepis
f29bd4aebf correct minor mistake - list 3 bits instead of 4
Sentence starts with "The next three bits(40, 41, 42, 43)" Should exclude 43.
2017-06-06 08:41:10 -05:00
Alexander Kuleshov
12006725a4
mention boot linker script as suggeset by @Aaron1011
Signed-off-by: Alexander Kuleshov <kuleshovmail@gmail.com>
2017-05-28 00:19:45 +06:00
Guillaume Thouvenin
18890ee09f Fix the description of the address FFFFFFF0h 2017-03-21 14:49:38 +01:00
Daniel Campoverde [alx741]
d62e2d7f4a Booting: Fix typo 2017-03-19 15:08:18 -05:00
0xAX
e0259e744d Merge pull request #463 from PinoTsao/improve
Nitpicking: correct address space range
2017-03-01 02:08:17 -05:00
Cao jin
a21734b76d Nitpicking: correct address space range
s/0x100000/0xFFFFF/. Address space size is 1M, but range is 0 - 0xFFFFF
2017-03-01 10:34:12 +08:00
Ayyuce Demirbas
337c8b801d closing brace
your for loop does not have a closing brace
2017-02-28 13:12:44 +02:00
Amreo
2e640db706 Fix math error
Fixed math error because X = 0x001000+sizeof(boot loader)
2017-02-01 22:02:35 +01:00
elyashiv
7d5b4850db minor grammer edits 2017-01-30 11:43:08 +02:00
proninyaroslav
90f50c2ac5 Change README links as relative 2017-01-07 10:53:22 +03:00
Alexander Kuleshov
a711d0fbf0 Merge branch 'typo-fix' of https://github.com/AndrewRussellHayes/linux-insides into AndrewRussellHayes-typo-fix 2016-10-29 23:32:34 +06:00
0xC0FFEE
d419b61baa #419 - Typo in linux-bootstrap-4.md
Ref: https://github.com/0xAX/linux-insides/issues/419
2016-10-27 10:24:12 +05:30
Andrew Hayes
8998841c4c small typo fix 2016-10-24 10:50:20 -04:00
0xAX
0ebe9f97ba Merge pull request #420 from anastasds/linux-bootstrap-1-edit
Proofread linux-bootstrap-1 and edit to read more smoothly
2016-10-19 21:46:19 +03:00
_yrp
16242704fe Fix broken links regarding kaslr
linkrot, function name changes.

Thanks, this chapter was super duper helpful.
2016-09-02 21:02:00 -07:00
Anastas Stoyanovsky
130d87c716 Edit linux-bootstrap-1 2016-08-04 05:10:21 -04:00
Kavindra Nikhurpa
28a39fe665 More fixes and corrected contributors.md
Signed-off-by: Kavindra Nikhurpa <kavindra.nikhurpa@hotmail.com>
2016-07-03 12:19:09 +05:30
Kavindra Nikhurpa
aeb802e895 Fixed typos in Booting 2016-06-29 10:28:48 +05:30
Jeremy Cline
4aa8cbcc60
Fix a few minor typos 2016-06-04 11:14:24 -04:00
sevico
5f56136420 fix 1f offset
on the context,the offset of 1f should be 0x21.
2016-05-26 21:15:48 +08:00
sevico
3568a962e4 fix typo
"memcpy` puts the address of `boot_params.hdr` into `si` and saves the size on  " should be di
2016-05-25 09:04:03 +08:00
Mack Stump
3fda046617 fix typos 2016-05-19 10:46:26 -04:00
0xAX
c235ead9f1 Merge pull request #378 from Alcaro/boot-fixes
Fix a huge pile of issues
2016-04-27 10:39:03 +03:00
Alcaro
8c1b3221fb Clarify and fix various facts, and fix more typos than I can count.
- rep stosl reduces ecx by 1 per write operation, not 4. Source: http://www.fermimn.gov.it/linux/quarta/x86/rep.htm
- Clarification: The four Page Directory tables contain 2048 entries in total, not 2048 each. Source: http://wiki.osdev.org/Page_Tables#Long_mode_.2864-bit.29_page_map
- Registers can not contain %rip-relative addresses, since %rip changes every single instruction. Only the instructions themselves can contain RIP-relative addresses.
- The first argument to decompress_kernel is called rmode, not boot_param.
- The boot_params struct goes in %rdi, not %rsi. Source: https://en.wikipedia.org/wiki/X86_calling_conventions#System_V_AMD64_ABI
- find_random_addr does not ensure that the 'memory region is not less than value of kernel alignment'; it ensures the kernel is at or above the minimum load address.
2016-04-18 22:48:10 +02:00
Alcaro
f23e2bf684 Fix MCA link
Links are \[text\](URL) in Markdown, not (text)[URL].
2016-04-18 19:46:54 +02:00
Nehal J Wani
9553e9bf82 Fix small grammatical error
s/use/uses . The word 'processor' is singular :)
2016-04-12 03:15:40 +05:30
Larry Kim
51c5bc4893 Help readers not to confuse with segment addr and phy addr
and a minor typo
2016-04-03 06:20:43 +09:00
Dmitriy Olshevskiy
f2068d49a7 booting: fix typos 2016-03-29 19:59:43 +03:00
mennis
f24f71e041 grammar, spelling and sentence construction updates 2016-02-22 16:54:35 -08:00
0xAX
aedaaf6d97 Merge pull request #326 from c0riolis/linux-bootstrap-2-fix
Fix linux-bootstrap-2.md
2016-02-11 14:55:22 +06:00
0xAX
0ac662bdc8 Merge pull request #323 from c0riolis/master
Fix linux-bootstrap-1.md
2016-01-31 23:21:31 +06:00
Alexander Kuleshov
48fdd8c37f updated last part of the Linux kernel booting process chapter 2016-01-24 19:16:01 +06:00
Alexander Kuleshov
7a92195259 Finish with fourth part of booting process 2016-01-24 00:05:15 +06:00
Alexander Kuleshov
3e2e3b823c update linux-bootstrap-4.md 2016-01-23 23:59:11 +06:00
Alexander Kuleshov
f6c57be9bb Last update of the Booting/linux-bootstrap-4.md 2016-01-23 13:45:07 +06:00
Alexander Kuleshov
0cfd3af65f Update Booting/bootstrap-4.md 2016-01-23 01:46:14 +06:00
Matthieu Tardy
175b153379 Normalize indentation in linux-bootstrap-2 to improve readability 2016-01-22 06:02:56 +01:00
Matthieu Tardy
29ac51e923 Fix linux-bootstrap-2.md 2016-01-22 06:02:56 +01:00
Matthieu Tardy
c0c69b8dc0 Normalize indentation in linux-bootstrap-1's code sections to improve readability 2016-01-22 06:01:43 +01:00
Matthieu Tardy
7f8146db1e Fix linux-bootstrap-1.md
Fix some offset and size errors.
Replace the ambiguous term "segment" by "segment selector".
Add an explanation for the reset vector address.
Fix a typo in the segment register align part (it's a cld and not a cli).
Add missing syntax highlighting.
2016-01-22 06:01:43 +01:00
zhaoxiaoqiang
ae5cbb4c20 fix minor grammer errors 2016-01-06 18:16:12 +08:00
zhaoxiaoqiang
8deab213d9 refine statements about early page table build 2015-12-30 15:36:39 +08:00
0xAX
17351ed45a Update linux-bootstrap-4.md 2015-12-29 13:24:37 +06:00
0xAX
4830c64aeb Update linux-bootstrap-1.md 2015-12-28 17:15:16 +06:00
0xAX
7e18eb149b Merge pull request #299 from mudongliang/modifyinternals
revert internals to insides in Booting
2015-12-16 23:07:20 +06:00
0xAX
85b813292f Merge pull request #302 from hitmoon/master
fix logic error about KEEP_SEGMENTS flags
2015-12-11 13:37:56 +06:00
0xAX
5c8788aac6 Merge pull request #304 from shravanshandilya/master
Kernel is out of context till this point
2015-12-09 22:49:58 +06:00
0xAX
ee707554ea Merge pull request #297 from ruthgrace/bootstrap_1_bootloader
fixed grammar in linux-bootstrap-1.md, Bootloader section
2015-12-07 18:49:15 +06:00
Shravan Shandilya
a29d64e171 Kernel is out of context till this point 2015-12-06 21:19:39 +05:30
0xAX
422426a901 Merge pull request #296 from ruthgrace/bootstrap_1_bss_setup
fixed grammar in linux-bootstrap-1.md, BSS Setup section
2015-12-03 15:38:10 +06:00
0xAX
32d9c98364 Merge pull request #295 from ruthgrace/bootstrap_1_from_bootloader_to_kernel
fixed grammar in linux-bootstrap-1.md, From the bootloader to [the] kernel section
2015-12-01 20:23:43 +06:00
0xAX
0de6568131 Merge pull request #293 from ruthgrace/bootstrap_1_jump_to_main
fixed grammar in linux-bootstrap-1.md, Jump to main section
2015-11-30 17:46:53 +06:00
0xAX
8f8c543d9c Merge pull request #292 from ruthgrace/bootstrap_1_segment_registers_align
fixed grammar in linux-bootstrap-1.md, Segment registers align section
2015-11-25 23:05:11 +06:00
zhaoxiaoqiang
bd7d8e6af0 fix logic error about KEEP_SEGMENTS flags 2015-11-25 18:34:32 +08:00
0xAX
f245f5b9fa Merge pull request #291 from ruthgrace/bootstrap_1_stack_setup
fixed grammar in linux-bootstrap-1.md, Stack set up section
2015-11-23 22:55:50 +06:00
0xAX
cdb3a8af99 Merge pull request #290 from ruthgrace/bootstrap_1_start_of_kernel_setup
fixed grammar in linux-bootstrap-1.md, Start of kernel setup section
2015-11-16 13:17:59 +03:00
0xAX
fce396e0bf Merge pull request #289 from ruthgrace/bootstrap_2_console_init
fixed grammar in linux-bootstrap-2.md, Console initialization section
2015-11-15 11:14:44 +03:00
0xAX
16e86ba66e Merge pull request #288 from ruthgrace/bootstrap_2_copying_boot_params
fixed grammar in linux-bootstrap-2.md, Copying boot parameters into the "zeropage" section
2015-11-14 00:07:04 +03:00
0xAX
aefea69c9e Merge pull request #287 from ruthgrace/bootstrap_2_heap_init
fixed grammar in linux-bootstrap-2.md, Heap Initialization section
2015-11-11 09:05:59 +01:00
0xAX
c22523567b Merge pull request #286 from ruthgrace/bootstrap_2_protected_mode
fixed grammar in linux-bootstrap-2.md, Protected mode section
2015-11-09 13:08:50 +03:00
0xAX
2cd0316828 Merge pull request #285 from ruthgrace/bootstrap_2_querying
fixed grammar in linux-bootstrap-2.md, Querying section
2015-11-08 20:06:37 +03:00
0xAX
53d0a9da09 Merge pull request #273 from ruthgrace/bootstrap_3_actual_transition_protected
fixed grammar in linux-bootstrap-3.md, Actual transition into protected mode section
2015-11-02 13:39:38 +06:00
慕冬亮
a413dd6a56 revert internals to insides in Booting 2015-11-02 10:49:34 +08:00
ruthgrace
f8083757de fixed grammar in linux-bootstrap-1.md, From the bootloader to [the] kernel section 2015-10-31 20:00:43 -04:00
ruthgrace
03a327ad22 fixed grammar in linux-bootstrap-1.md, Jump to main section 2015-10-31 03:12:04 -04:00
ruthgrace
a02a5d274c fixed grammar in linux-bootstrap-1.md, BSS Setup section 2015-10-31 03:10:57 -04:00
ruthgrace
dd493be7fb fixed grammar in linux-bootstrap-1.md, Stack set up section 2015-10-31 03:08:20 -04:00
ruthgrace
863a6b0297 fixed grammar in linux-bootstrap-1.md, Segment registers align section 2015-10-31 02:56:48 -04:00
ruthgrace
23e9c2751a fixed grammar in linux-bootstrap-1.md, Start of kernel setup section 2015-10-31 02:52:15 -04:00
ruthgrace
52a79a7319 fixed grammar in linux-bootstrap-1.md, Bootloader section 2015-10-31 02:47:55 -04:00
0xAX
fb76b10efc Merge pull request #272 from ruthgrace/bootstrap_3_setup_gdt
fixed grammar in linux-bootstrap-3.md, Set up Global Descriptor Table section
2015-10-31 11:12:09 +05:00
ruthgrace
fec74f0515 fixed grammar in linux-bootstrap-2.md, Console initialization section 2015-10-30 23:54:17 -04:00
ruthgrace
be308af276 fixed grammar in linux-bootstrap-2.md, Copying boot parameters into the zeropage section 2015-10-30 23:51:52 -04:00
ruthgrace
fc2bf58364 fixed grammar in linux-bootstrap-2.md, Heap Initialization section 2015-10-30 23:49:21 -04:00
ruthgrace
43e1338894 fixed grammar in linux-bootstrap-2.md, Protected mode section 2015-10-30 23:45:11 -04:00
ruthgrace
48dd5ff2ee fixed grammar in linux-bootstrap-2.md, Querying section 2015-10-30 23:22:33 -04:00
0xAX
dadce11dea Merge pull request #271 from ruthgrace/bootstrap_3_setup_interrupt_descriptor
fixed grammar in linux-bootstrap-3.md, Set up Interrupt Descriptor Table section
2015-10-30 00:16:22 +06:00
0xAX
090f6f06c6 Merge pull request #269 from ruthgrace/bootstrap_3_setup_video_mode
fixed grammar in linux-bootstrap-3.md, Set up video mode section
2015-10-30 00:15:59 +06:00
0xAX
1cb98874cc Merge pull request #270 from ruthgrace/bootstrap_3_last_prep_before_protected
fixed grammar in linux-bootstrap-3.md, Last preparation before transition into protected mode section
2015-10-26 13:35:49 +06:00
0xAX
b2732a0157 Merge pull request #268 from ruthgrace/bootstrap_3_heap_api
fixed grammar in linux-bootstrap-3.md, Heap API section
2015-10-26 00:15:52 +06:00
ruthgrace
c942db56cc changed first sentence in Heap API section as requested 2015-10-25 14:05:08 -04:00
0xAX
c98ca047b0 Merge pull request #279 from jlacomis/linux-bootstrap-2-reword
Changed some awkward wording in linux-bootstrap-2.
2015-10-23 13:31:33 +06:00
0xAX
f7c3c9e35d Merge pull request #267 from ruthgrace/bootstrap_3_kernel_data_types
fixed grammar in linux-bootstrap-3.md, Kernel data types section
2015-10-21 13:09:57 +06:00
0xAX
d003e1cbd0 Merge pull request #266 from ruthgrace/bootstrap_3_video_mode_init
fixed grammar in linux-bootstrap-3.md, Video mode initialization and transition to protected mode section
2015-10-21 13:09:43 +06:00
Jeremy Lacomis
2cb4d459de Changed some awkward wording in linux-bootstrap-2. 2015-10-20 16:41:00 -04:00
0xAX
99f21930d1 Merge pull request #262 from ruthgrace/bootstrap_4_transition_lon
fixed grammar in linux-bootstrap-4.md, Transition to long mode section
2015-10-20 13:16:56 +06:00
0xAX
06460705c0 Merge pull request #261 from ruthgrace/boostrap_4_early_page_table
fixed grammar in linux-bootstrap-4.md, Early page tables initialization section
2015-10-20 13:16:45 +06:00
0xAX
684277480d Merge pull request #260 from ruthgrace/bootstrap_4_long_mode
fixed grammar in linux-bootstrap-4.md, Long mode section
2015-10-20 13:16:21 +06:00
Craig P Jolicoeur
02c7a60599 Update typo
`starts` not `startes`
2015-10-19 16:02:22 -04:00
ruthgrace
d844afa85c fixed grammar in linux-bootstrap-3.md, Actual transition into protected mode section 2015-10-18 17:36:50 -04:00
ruthgrace
723940d80e fixed grammar in linux-bootstrap-3.md, Set up Global Descriptor Table section 2015-10-18 17:36:00 -04:00
ruthgrace
02c4894ef0 fixed grammar in linux-bootstrap-3.md, Set Up Interrupt Descriptor Table section 2015-10-18 17:34:57 -04:00
ruthgrace
f540185a4e fixed grammar in linux-bootstrap-3.md, Last preparation before transition into protected mode section 2015-10-18 17:33:39 -04:00
ruthgrace
2fe3660cf8 fixed grammar in linux-bootstrap-3.md, Set up video mode section 2015-10-18 17:32:33 -04:00
ruthgrace
fc954dd0ff fixed grammar in linux-bootstrap-3.md, Heap API section 2015-10-18 17:31:36 -04:00
ruthgrace
8c7261262e fixed grammar in linux-bootstrap-3.md, Kernel data types section 2015-10-18 17:30:18 -04:00
ruthgrace
1cd9c10939 fixed grammar in linux-bootstrap-3.md, Video mode initialization and transition to protected mode section 2015-10-18 17:27:49 -04:00
ruthgrace
12ff770afe fixed grammar mistakes in linux-bootstrap-4.md, Long mode section 2015-10-18 17:18:57 -04:00
0xAX
f4b7f56a7a Merge pull request #259 from ruthgrace/bootstrap_4_prep_long_mode
fixed grammar in linux-bootstrap-4.md, Preparation before entering long mode section
2015-10-17 17:39:26 +06:00
0xAX
7233742766 Merge pull request #258 from ruthgrace/bootstrap_4_calc_relocation
fixed grammar in linux-bootstrap-4.md, Calculate relocation address section
2015-10-17 00:35:37 +06:00
0xAX
f4ea9243c1 Merge pull request #257 from ruthgrace/bootstrap_4_stack_setup
fixed grammar in linux-bootstrap-4.md, Stack setup and CPU verification section
2015-10-17 00:25:17 +06:00
0xAX
e0f87ad2bd Merge pull request #255 from ruthgrace/bootstrap_4_32_bit_entry
fixed grammar in linux-bootstrap-4.md, 32-bit entry point section
2015-10-17 00:24:47 +06:00
0xAX
0a5e5a9c3a Merge pull request #250 from ruthgrace/bootstrap_5_last_prep
fixed grammar in linux-bootstrap-5.md, Last preparation before kernel decomposition section
2015-10-17 00:24:15 +06:00
Ruth Grace Wong
cf05f092bf fixed '.text' sections to be singular 2015-10-15 15:49:49 -04:00
0xAX
b01d0a5498 Merge pull request #256 from ruthgrace/bootstrap_4_reload_segments
fixed grammar in linux-bootstrap-4.md, Reload the segments if needed section
2015-10-16 01:15:44 +06:00
0xAX
a56992d961 Merge pull request #253 from ruthgrace/bootstrap_5_kernel_decomp
fixed grammar in linux-bootstrap-5.md, Kernel decomposition section
2015-10-16 00:46:42 +06:00
ruthgrace
2e9ad1eb5f fixed grammar in linux-bootstrap-4.md, Transition to long mode section 2015-10-14 02:58:48 -04:00
ruthgrace
ede440d138 fixed grammar mistakes in linux-bootstrap-4.md, Early page tables initialization section 2015-10-13 20:30:49 -04:00
ruthgrace
f32b0f792c fixed grammar mistakes in linux-bootstrap-4.md, section Preparation before entering long mode 2015-10-13 20:05:23 -04:00
ruthgrace
95a9ce40f1 fixed grammar mistakes in linux-bootstrap-4, Calculate relocation address section 2015-10-13 19:58:47 -04:00
ruthgrace
796c21c171 fixed grammar mistakes in linux-bootstrap-4.md, Stack setup and CPU verification section 2015-10-13 19:52:04 -04:00
ruthgrace
bf3b7014dd fixed grammar mistakes in linux-bootstrap-4.md, Reload the segments if needed section 2015-10-13 19:48:13 -04:00
ruthgrace
0da1ecb5b1 fixed grammar mistakes in linux-bootstrap-4.md, 32 bit entry point section 2015-10-13 16:39:22 -04:00
ruthgrace
8c02753005 fixed grammar mistakes in linux-bootstrap-5.md kernel decomposition section 2015-10-13 16:30:30 -04:00
ruthgrace
7d929d0fc8 fixed grammar mistakes in last prep before kernel decomposition section of linux-bootstrap-5.md 2015-10-12 15:37:40 -04:00
ruthgrace
33b89cc64d fixed grammar mistakes in Kernel decompression section of linux-bootstrap-5.md 2015-10-12 15:28:51 -04:00
mudongliang
3f2eaef8ad fix issue #211 2015-10-11 12:24:36 +08:00
0xAX
fc401de8a0 Merge pull request #246 from ruthgrace/master
fixed grammar mistake: Remind that -> Recall that
2015-10-10 23:37:06 +06:00
ruthgrace
e60f8a2fb1 fixed grammar mistake: Remind that -> Recall that 2015-10-09 01:34:26 -04:00
Bogdan Kulbida
886e327b2a fix typo in the bits range 2015-10-08 17:40:51 -04:00
0xAX
40466a4931 Merge pull request #212 from mudongliang/master
change grammatical tense problem
2015-09-27 11:58:48 +06:00
0xAX
a9f8ac57b3 Merge pull request #216 from QuentinPerez/missing_register
missing register
2015-09-27 11:58:25 +06:00
Remi Rampin
be59a42e94 Fix get_heap arguments meaning
`n` is not the number of bytes but the number of items which are each of
the given size.
2015-09-20 15:31:23 -04:00
Remi Rampin
6aaa477bc6 TYPO: put_char -> putchar 2015-09-20 15:31:16 -04:00
Remi Rampin
72cc33c3c6 TYPO: minor fixes in booting section 2015-09-20 15:30:58 -04:00
Quentin Perez
8c76586ebd missing register 2015-09-20 20:51:17 +02:00
Remi Rampin
1ad8f71482 TYPO: wether -> whether 2015-09-20 14:08:10 -04:00
mudongliang
2a818916a6 change some grammatical tense problem 2015-09-17 10:23:50 -04:00
慕冬亮
58f930ebb8 Merge pull request #11 from 0xAX/master
merge commits
2015-09-16 14:44:11 +08:00
Leonardo
8b326e3766 Fixed typo: fielsd --> fields 2015-09-09 18:24:52 -04:30
Administrator
763f9066b6 modify some descriptions of README in Booting 2015-09-09 18:36:33 +08:00
0xAX
1ab5214d9d Update linux-bootstrap-1.md 2015-09-06 12:21:41 +06:00
rpeiremans
44eb8b2c39 Update linux-bootstrap-1.md
Fixed several typos, rewrote some parts of the text
2015-09-03 19:25:19 +02:00
rpeiremans
c505715c91 Update linux-bootstrap-1.md 2015-09-03 19:25:19 +02:00
Dave Flogeras
511688b110 Fix typo 2015-08-27 21:49:42 -03:00
Siôn Le Roux
51e7262cdc Fix typo
stoped --> stopped
2015-08-09 22:57:56 +02:00
Waqar Ahmed
8a166ac424 Fix sentence structures in linux-bootstrap-3
Update heading underline to 80 chars
2015-08-04 23:37:26 +05:00
Waqar Ahmed
2538edd5d9 Fix sentence structures in linux-bootstrap-3
Updated.
2015-08-04 19:24:50 +05:00
Waqar Ahmed
bc872eb2f7 Fix conflicts 2015-08-03 01:12:27 +05:00
Waqar144
e3897be370 [3/3] Fix sentence structures in linux-bootstrap-3.md 2015-08-03 00:55:18 +05:00
Waqar144
4af04f58c6 [3/3] Fix sentence structures in linux-bootstrap-3.md 2015-08-03 00:39:25 +05:00
Waqar144
196a8b8f90 [2/3] Fix sentence structures in linux-bootstrap-3.md 2015-08-03 00:25:59 +05:00